#include <devicemanager.h>
| Public Types | |
| typedef std::vector< IfaceDescr > | IfaceList | 
| Public Member Functions | |
| DeviceDescription () | |
| DeviceDescription (const DeviceDescription &) | |
| DeviceDescription & | operator= (const DeviceDescription &) | 
| ~DeviceDescription () | |
| bool | operator== (const DeviceDescription &d) const | 
| bool | operator< (const DeviceDescription &d) const | 
| const std::string & | name () const | 
| const std::string & | type () const | 
| const std::string & | extends () const | 
| const std::string & | type_escaped () const | 
| unsigned | nr_input_interfaces () const | 
| unsigned | nr_output_interfaces () const | 
| const DeviceDescription::IfaceList & | input_interfaces () const | 
| const DeviceDescription::IfaceList & | output_interfaces () const | 
| const PropertyList & | properties () const | 
| const Property::list_string & | libraries () const | 
| bool | isAbstract () const | 
| const std::string & | description () const | 
| void | toStream (std::ostream &os) const | 
| Static Public Member Functions | |
| static std::string | typename_escape (const std::string &s) | 
| static std::string | typename_unescape (const std::string &s) | 
| Friends | |
| class | DeviceManager | 
| Classes | |
| class | IfaceDescr | 
This class is a direct representation of a device description in a devicelist XML file. The data here is directly the data that was specified in the devicelist.dtd document type. Such a description contains
| 
 | 
| 
 | 
| 
 | 
| Constructor with empty values. | 
| 
 | 
| Copy constructor (required because of pointer copying) | 
| 
 | 
| Destructor. | 
| 
 | 
| Copy assignment (required because of pointer copying) | 
| 
 | 
| Comparison. Necessary for std::map instantiation. | 
| 
 | 
| Comparison for sorting. Necessary for std::map instantiation. | 
| 
 | 
| Returns the name of the device | 
| 
 | 
| Returns the C++ type name of the device | 
| 
 | 
| Returns the C++ type name of this device's base device, i.e. the one that this device is derived from or that this device extends. | 
| 
 | 
| Returns the C++ type name of the device, but escaped to conform to XML ID-attribute production (i.e. without angular brackets lesser-than and greater-than, which makes a difference for template class names) | 
| 
 | 
| Returns the number of input interfaces. | 
| 
 | 
| Returns the number of output interfaces. | 
| 
 | 
| Returns the list of string pairs that describe the input interfaces. The first element of each pair is the interface type, and the second element is the description. | 
| 
 | 
| Returns the list of string pairs that describe the output interfaces. The first element of each pair is the interface type, and the second element is the description. | 
| 
 | 
| Returns the PropertyList of the device. | 
| 
 | 
| Returns the list of needed libraries for the device. | 
| 
 | 
| Returns true if the device is abstract (i.e. you cannot instantiate a class of this type). | 
| 
 | 
| Returns the textual description of this device | 
| 
 | 
| writes a human-readable description to the given ostream. | 
| 
 | 
| Escapes a C++ type name for XML encoding: By convention, we replace each opening triangle brace (lesser-than) "<" by a minus "-" and each closing triangle brace (greater-than) ">" by a dot. | 
| 
 | 
| Unescapes a XML encoded C++ type name into normal C++ syntax: The escaping convention is that we replace each opening triangle brace (lesser-than) "<" by a minus "-" and each closing triangle brace (greater-than) ">" by a dot. | 
| 
 | 
| 
 | 
 1.4.1
 1.4.1