$search

RTT::types::TypeInfoRepository Class Reference

#include <TypeInfoRepository.hpp>

List of all members.

Public Types

typedef boost::shared_ptr
< TypeInfoRepository
shared_ptr

Public Member Functions

bool addType (TypeInfoGenerator *tig)
bool addType (TypeInfo *ti)
std::vector< std::string > getDottedTypes () const
TypeInfogetTypeById (const char *type_id_name) const
TypeInfogetTypeById (TypeInfo::TypeId type_id) const
template<class T >
TypeInfogetTypeInfo () const
std::vector< std::string > getTypes () const
void logTypeInfo () const
void registerTransport (TransportPlugin *tr)
std::string toDot (const std::string &type) const
TypeInfotype (const std::string &name) const
 ~TypeInfoRepository ()

Static Public Member Functions

static shared_ptr Instance ()

Private Types

typedef std::map< std::string,
TypeInfo * > 
map_t
typedef std::vector
< TransportPlugin * > 
Transports

Private Member Functions

 TypeInfoRepository ()

Private Attributes

map_t data
Transports transports
os::Mutex type_lock

Detailed Description

This class contains all known types to Orocos.

See also:
TemplateTypeInfo to add your own classes to Orocos.

Definition at line 55 of file TypeInfoRepository.hpp.


Member Typedef Documentation

typedef std::map<std::string, TypeInfo*> RTT::types::TypeInfoRepository::map_t [private]

Definition at line 58 of file TypeInfoRepository.hpp.

Definition at line 66 of file TypeInfoRepository.hpp.

Definition at line 61 of file TypeInfoRepository.hpp.


Constructor & Destructor Documentation

RTT::TypeInfoRepository::TypeInfoRepository (  )  [private]

Definition at line 59 of file TypeInfoRepository.cpp.

RTT::TypeInfoRepository::~TypeInfoRepository (  ) 

Definition at line 87 of file TypeInfoRepository.cpp.


Member Function Documentation

bool RTT::TypeInfoRepository::addType ( TypeInfoGenerator tig  ) 

Add a type by using a type info generator. This class is responsible for installing the TypeInfo object, registering the name and installing the necessary factories.

Definition at line 138 of file TypeInfoRepository.cpp.

bool RTT::TypeInfoRepository::addType ( TypeInfo ti  ) 

Add a type to the Orocos type repository.

Parameters:
ti A type info object that becomes owned by the TypeInfoRepository (so use new()). It's name must be unique.
Returns:
false if ti was already added or if ti->getTypeName() already exists in this repository.

Definition at line 124 of file TypeInfoRepository.cpp.

std::vector< std::string > RTT::TypeInfoRepository::getDottedTypes (  )  const

List all registered types in the package.type notation.

Definition at line 189 of file TypeInfoRepository.cpp.

TypeInfo * RTT::TypeInfoRepository::getTypeById ( const char *  type_id_name  )  const

Return the type info structure of a given type name.

Definition at line 113 of file TypeInfoRepository.cpp.

TypeInfo * RTT::TypeInfoRepository::getTypeById ( TypeInfo::TypeId  type_id  )  const

Return the type info structure of a given type by its type_id.

Definition at line 100 of file TypeInfoRepository.cpp.

template<class T >
TypeInfo* RTT::types::TypeInfoRepository::getTypeInfo (  )  const [inline]

Return the type info structure of a given type T.

Definition at line 124 of file TypeInfoRepository.hpp.

std::vector< std::string > RTT::TypeInfoRepository::getTypes (  )  const

List all types registered with their original type name. See getDottedTypes for the typenames written in the 'package.type' notation.

Definition at line 172 of file TypeInfoRepository.cpp.

boost::shared_ptr< TypeInfoRepository > RTT::TypeInfoRepository::Instance (  )  [static]

Definition at line 63 of file TypeInfoRepository.cpp.

void RTT::TypeInfoRepository::logTypeInfo (  )  const

Dump all known types, along with transports and their types, to the log.

Definition at line 213 of file TypeInfoRepository.cpp.

void RTT::TypeInfoRepository::registerTransport ( TransportPlugin tr  ) 

Call this function to add a new (network) transport for Orocos types.

Definition at line 198 of file TypeInfoRepository.cpp.

std::string RTT::types::TypeInfoRepository::toDot ( const std::string &  type  )  const

Convert any type name returned by getTypes() to the dotted type notation.

TypeInfo * RTT::TypeInfoRepository::type ( const std::string &  name  )  const

Retrieve a type with a given name.

Parameters:
name The type name as specified by the TypeInfo object, or it's dotted equivalent.

Definition at line 72 of file TypeInfoRepository.cpp.


Member Data Documentation

Definition at line 59 of file TypeInfoRepository.hpp.

Definition at line 62 of file TypeInfoRepository.hpp.

Definition at line 63 of file TypeInfoRepository.hpp.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines


rtt
Author(s): RTT Developers
autogenerated on Fri Mar 1 16:27:58 2013