38 #ifndef ORO_TEMPLATE_TYPEINFO_HPP 39 #define ORO_TEMPLATE_TYPEINFO_HPP 42 #include "../Property.hpp" 43 #include "../Attribute.hpp" 44 #include "../Logger.hpp" 45 #include "../InputPort.hpp" 46 #include "../OutputPort.hpp" 51 #include "../rtt-config.h" 73 template<
typename T,
bool use_ostream = false>
74 class TemplateTypeInfo
75 :
public PrimitiveTypeInfo<T, use_ostream>,
76 public TemplateConnFactory<T>,
77 public TemplateCompositionFactory<T>
virtual base::ChannelElementBase::shared_ptr buildRemoteChannelOutput(base::OutputPortInterface &output_port, types::TypeInfo const *type_info, base::InputPortInterface &input, const ConnPolicy &policy)
This template class allows user types to be used in all Orocos primitives.
void setCompositionFactory(CompositionFactoryPtr cf)
A connection policy object describes how a given connection should behave.
The base class of each OutputPort.
bool installTypeInfoObject(TypeInfo *ti)
Installs the type info object in the global data source type info handler and adds any additional fea...
TemplateTypeInfo(std::string name)
Setup Type Information for type name.
A class for representing a user type, and which can build instances of that type. ...
boost::intrusive_ptr< ChannelElementBase > shared_ptr
T UserType
The given T parameter is the type for reading DataSources.
bool installTypeInfoObject(TypeInfo *ti)
Installs the type info object in the global data source type info handler and adds any additional fea...
void setPortFactory(ConnFactoryPtr cf)
Installs a new port factory such that in-process data can be communicated between components...
Contains TaskContext, Activity, OperationCaller, Operation, Property, InputPort, OutputPort, Attribute.
virtual ~TemplateTypeInfo()
This template class allows primitive types, which are not sent over ports, to be added to Orocos...
boost::shared_ptr< PrimitiveTypeInfo< T, use_ostream > > getSharedPtr()