Public Types | Public Member Functions
RTT::types::TemplateTypeInfo< T, use_ostream > Class Template Reference

#include <TemplateTypeInfo.hpp>

Inheritance diagram for RTT::types::TemplateTypeInfo< T, use_ostream >:
Inheritance graph

List of all members.

Public Types

typedef T UserType

Public Member Functions

buildRemoteChannelOutput (base::OutputPortInterface &output_port, types::TypeInfo const *type_info, base::InputPortInterface &input, const ConnPolicy &policy)
bool installTypeInfoObject (TypeInfo *ti)
 TemplateTypeInfo (std::string name)
virtual ~TemplateTypeInfo ()

Detailed Description

template<typename T, bool use_ostream = false>
class RTT::types::TemplateTypeInfo< T, use_ostream >

This template class allows user types to be used in all Orocos primitives. It provides 'default' implementations for virtual functions of TypeInfo. For user defined types, this is very likely not satisfactory and the user needs to override the methods of this class in a subclass or provide specialised global functions.

TThe user class type.
use_ostreamWhen set to true, the class will use operator<<(std::ostream&, T) to write out the type to a stream. When set to false, the class will use this function and write '( type name )' to a stream instead. Defaults to false. Set to true if your class T has the above mentioned function.
See also:
StructTypeInfo, SequenceTypeInfo

Definition at line 74 of file TemplateTypeInfo.hpp.

Member Typedef Documentation

template<typename T, bool use_ostream = false>
typedef T RTT::types::TemplateTypeInfo< T, use_ostream >::UserType

The given T parameter is the type for reading DataSources.

Reimplemented from RTT::types::TemplateCompositionFactory< T >.

Definition at line 83 of file TemplateTypeInfo.hpp.

Constructor & Destructor Documentation

template<typename T, bool use_ostream = false>
RTT::types::TemplateTypeInfo< T, use_ostream >::TemplateTypeInfo ( std::string  name) [inline]

Setup Type Information for type name. This causes a switch from 'unknown' type to basic type information for type T.

namethe 'Orocos' type name.

Definition at line 92 of file TemplateTypeInfo.hpp.

template<typename T, bool use_ostream = false>
virtual RTT::types::TemplateTypeInfo< T, use_ostream >::~TemplateTypeInfo ( ) [inline, virtual]

Definition at line 97 of file TemplateTypeInfo.hpp.

Member Function Documentation

template<typename T, bool use_ostream = false>
virtual base::ChannelElementBase::shared_ptr RTT::types::TemplateTypeInfo< T, use_ostream >::buildRemoteChannelOutput ( base::OutputPortInterface output_port,
types::TypeInfo const *  type_info,
base::InputPortInterface input,
const ConnPolicy policy 
) [inline, virtual]

Definition at line 102 of file TemplateTypeInfo.hpp.

template<typename T, bool use_ostream = false>
bool RTT::types::TemplateTypeInfo< T, use_ostream >::installTypeInfoObject ( TypeInfo ti) [inline, virtual]

Installs the type info object in the global data source type info handler and adds any additional features to the type info object. This method will be called by the TypeInfoRepository, in order to register this type's factories into the TypeInfo object.

tiA valid TypeInfo object into which new features may be installed
true if this object may be deleted, false if not.
When true is returned, this instance is still valid and the caller (TypeInfoRepository) will delete it. When false is returned, the validity is undefined and the instance will not be used anymore by the caller.

Reimplemented from RTT::types::PrimitiveTypeInfo< T, use_ostream >.

Reimplemented in RTT::types::MatrixTypeInfo< T, has_ostream >, RTT::types::EnumTypeInfo< T >, RTT::types::StructTypeInfo< T, has_ostream >, RTT::types::SequenceTypeInfo< T, has_ostream >, RTT::types::SequenceTypeInfo< rt_string, true >, RTT::types::SequenceTypeInfo< std::string, true >, RTT::types::SequenceTypeInfo< std::vector< double >, true >, and RTT::types::SequenceTypeInfo< std::vector< T >, has_ostream >.

Definition at line 109 of file TemplateTypeInfo.hpp.

The documentation for this class was generated from the following file:

Author(s): RTT Developers
autogenerated on Sat Jun 8 2019 18:46:40