5#include <boost/shared_ptr.hpp>
60 using iterator = std::vector<DeviceInfo>::iterator;
118 friend std::ostream&
operator<<(std::ostream& os,
const TYPE& me);
Stores information about one device.
std::string uri
uri which describes the device (or name of the device file in /dev in backward compatibility mode)
DeviceInfo()
Default class constructor.
std::string dmapFileName
name of the DMAP file
std::string mapFileName
name of the MAP file storing information about PCIe registers mapping
uint32_t dmapFileLineNumber
line number in DMAP file storing listed above information
friend std::ostream & operator<<(std::ostream &os, const DeviceInfo &deviceInfo)
std::pair< std::string, std::string > getDeviceFileAndMapFileName() const
Convenience function to extract the device file name and the map file name as one object (a pair).
std::string deviceName
logical name of the device
Stores detailed information about one error or warning.
DMAP_FILE_ERR
Defines available types of detected problems.
@ NONUNIQUE_DEVICE_NAME
Names of two devices are the same - treated as critical error.
TYPE
Defines available classes of detected problems.
@ WARNING
Non-critical error was detected.
@ ERROR
Critical error was detected.
DMAP_FILE_ERR _errorType
Type of detected problem.
DeviceInfoMap::DeviceInfo _errorDevice1
Detailed information about first device that generate error or warning.
friend std::ostream & operator<<(std::ostream &os, const TYPE &me)
DeviceInfoMap::DeviceInfo _errorDevice2
Detailed information about second device that generate error or warning.
TYPE _type
Class of detected problem - ERROR or WARNING.
Stores information about errors and warnings.
friend std::ostream & operator<<(std::ostream &os, const ErrorList &me)
std::list< ErrorElem > _errors
Lists of errors or warnings detected during MAP file correctness checking.
std::vector< DeviceInfo > _deviceInfoElements
vector storing parsed contents of DMAP file
std::vector< std::string > _pluginLibraries
Names of the so files with the plugins.
bool check(ErrorList &err, ErrorList::ErrorElem::TYPE level)
Checks logical correctness of DMAP file.
friend std::ostream & operator<<(std::ostream &os, const DeviceInfoMap &deviceInfoMap)
void addPluginLibrary(const std::string &soFile)
Add the name of a library to the list.
void getDeviceInfo(const std::string &deviceName, DeviceInfo &value)
Returns information about specified device.
std::vector< DeviceInfo >::iterator iterator
const_iterator end() const
iterator end()
Return iterator to element after last one in DMAP file.
std::vector< DeviceInfo >::const_iterator const_iterator
size_t getSize()
Returns number of records in DMAP file.
void insert(const DeviceInfo &elem)
Insert new element read from DMAP file.
std::vector< std::string > getPluginLibraries()
You can define shared libraries with Backend plugins in the DMAP file.
std::string _dmapFileName
name of DMAP file
const_iterator begin() const
iterator begin()
Return iterator to first device described in DMAP file.
boost::shared_ptr< DeviceInfoMap > DeviceInfoMapPointer
Introduce specialisation of shared_pointer template for pointers to RegisterInfoMap object as a Devic...