42 #include "../Logger.hpp"    46     using namespace detail;
    49     static std::vector<TypekitPlugin*> Typekits;
    50     static std::vector<TransportPlugin*> Transports;
    55         for( vector<TypekitPlugin*>::iterator it = Typekits.begin(); it != Typekits.end(); ++it ) {
    56             if ( (*it)->getName() == tkp->
getName() ) {
    64         Typekits.push_back( tkp );
    84         for( vector<TransportPlugin*>::iterator it = Transports.begin(); it != Transports.end(); ++it ) {
    85             if ( (*it)->getName() == trp->
getName() ) {
    93         Transports.push_back( trp );
   100         std::vector<std::string> ret;
   101         for (std::vector<TypekitPlugin*>::const_iterator it = Typekits.begin();
   102              it != Typekits.end(); ++it)
   103             ret.push_back( (*it)->getName() );
   109         std::vector<std::string> ret;
   110         for (std::vector<TransportPlugin*>::const_iterator it = Transports.begin();
   111              it != Transports.end(); ++it)
   112             ret.push_back( (*it)->getTransportName() + 
"://" + (*it)->getTypekitName() );
   118         for (std::vector<TypekitPlugin*>::const_iterator it = Typekits.begin();
   119              it != Typekits.end(); ++it)
   120             if ((*it)->getName() == toolname)
   127         for (std::vector<TransportPlugin*>::const_iterator it = Transports.begin();
   128              it != Transports.end(); ++it)
   129             if ((*it)->getTransportName() + 
"://" + (*it)->getTypekitName() == transportname)
   135         for (std::vector<TransportPlugin*>::const_iterator it = Transports.begin();
   136                      it != Transports.end(); ++it)
   138         for (std::vector<TypekitPlugin*>::const_iterator it = Typekits.begin();
   139              it != Typekits.end(); ++it)
 static bool hasTypekit(const std::string &typekitname)
Check if a typekit with given name was already imported. 
 
static bool hasTransport(const std::string &transportname)
Check if a transport with given name was already imported. 
 
static std::vector< std::string > getTransports()
Get the names of all imported transports. 
 
virtual bool loadGlobals()
Implement this function to add global variables to the type system. 
 
static void Release()
Removes all Typekits and transports from memory. 
 
virtual std::string getTypekitName() const =0
Returns the intended typekit name of this plugin. 
 
virtual std::string getName()=0
Each plugin must have a unique name. 
 
static void Import(TypekitPlugin *tkp)
Import a typekit plugin into the type system of this process. 
 
This interface defines how additional typekits are loaded into Orocos. 
 
A class which registers TypeTransporter instances to types. 
 
virtual std::string getTransportName() const =0
Returns the (protocol) name of this transport. 
 
static std::vector< std::string > getTypekits()
Get the names of all imported typekits. 
 
static std::ostream & endl(std::ostream &__os)
 
static shared_ptr Instance()
 
Notify the Logger in which 'module' the message occured. 
 
virtual bool loadOperators()=0
Implement this method to load Scripting operators on types, such as '+', '*', ... ...
 
Contains TaskContext, Activity, OperationCaller, Operation, Property, InputPort, OutputPort, Attribute. 
 
virtual bool loadTypes()=0
Implement this method to add types to the Orocos type system. 
 
virtual bool loadConstructors()=0
Implement this method to load Scripting constructors of types, such as in C++. 
 
virtual std::string getName() const =0
Each plugin must have a unique name.