Public Types | Public Member Functions | Protected Types | Protected Attributes
Aseba::NodeToolRegistrar Struct Reference

Node tools are available per product id. More...

#include <Plugin.h>

Inheritance diagram for Aseba::NodeToolRegistrar:
Inheritance graph
[legend]

List of all members.

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< ProductIdProductIds
 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

Detailed Description

Node tools are available per product id.

Definition at line 98 of file Plugin.h.


Member Typedef Documentation

A function which creates an instance of a node tool.

Definition at line 105 of file Plugin.h.

typedef QPair<CreatorFunc, QString> Aseba::NodeToolRegistrar::CreatorFuncNamePair [protected]

Definition at line 118 of file Plugin.h.

typedef QMap<QString, CreatorFunc> Aseba::NodeToolRegistrar::NamedCreatorMap [protected]

Definition at line 121 of file Plugin.h.

Definition at line 119 of file Plugin.h.

A product ID from Aseba.

Definition at line 101 of file Plugin.h.

A list of product IDs.

Definition at line 103 of file Plugin.h.


Member Data Documentation

Definition at line 122 of file Plugin.h.

Definition at line 120 of file Plugin.h.


The documentation for this struct was generated from the following files:


aseba
Author(s): Stéphane Magnenat
autogenerated on Thu Jan 2 2014 11:17:17