Public Types |
typedef NodeToolInterface *(* | CreatorFunc )(NodeTab *node) |
| A function which creates an instance of a node tool.
|
typedef int | ProductId |
| A product ID from Aseba.
|
typedef QList< ProductId > | ProductIds |
| A list of product IDs.
|
Public Member Functions |
void | dump (std::ostream &stream) |
| Print the list of registered classes to stream.
|
void | reg (const QString &name, const ProductIds &pid, const CreatorFunc func) |
| Register a class with a name/a list of PIDs by storing a pointer to its constructor.
|
void | reg (const QString &name, const ProductId pid, const CreatorFunc func) |
| Register a class with a name/a pid by storing a pointer to its constructor.
|
void | update (const ProductId pid, NodeTab *node, NodeToolInterfaces &tools) const |
| Update tool list with onse for given pid.
|
void | update (const QString &name, NodeTab *node, NodeToolInterfaces &tools) const |
| Create tool list with one of a given name.
|
Protected Types |
typedef QPair< CreatorFunc,
QString > | CreatorFuncNamePair |
typedef QMap< QString,
CreatorFunc > | NamedCreatorMap |
typedef QMultiMap< ProductId,
CreatorFuncNamePair > | PidCreatorMap |
Protected Attributes |
NamedCreatorMap | namedCreators |
PidCreatorMap | pidCreators |
Node tools are available per product id.
Definition at line 98 of file Plugin.h.