34 #ifndef VECTOR_TEMPLATE_COMPOSITION_HPP 35 #define VECTOR_TEMPLATE_COMPOSITION_HPP 37 #include "../Property.hpp" 38 #include "../PropertyBag.hpp" 40 #include "../Logger.hpp" 41 #include "../internal/DataSources.hpp" 52 if ( tir->type( bag.
getType()) == tir->getTypeInfo< T >() ) {
54 int dimension = bag.
size();
55 result.resize( dimension );
58 int size_correction = 0;
59 for (
int i = 0; i < dimension ; i++) {
64 if ( element->
getName() ==
"Size" ) {
71 <<
" got type " << element->
getType()
75 result[ i - size_correction ] = comp->
get();
77 result.resize( dimension - size_correction );
81 <<
" type mismatch, got type '"<< bag.
getType()
DataSourceType get() const
const std::string & getType() const
A container for holding references to properties.
static const std::string & getTypeName()
A property represents a named value of any type with a description.
static std::ostream & endl(std::ostream &__os)
virtual std::string getType() const =0
TypeInfoRepository::shared_ptr Types()
base::PropertyBase * getItem(int i) const
const std::string & getName() const
Contains TaskContext, Activity, OperationCaller, Operation, Property, InputPort, OutputPort, Attribute.
boost::shared_ptr< TypeInfoRepository > shared_ptr
bool composeTemplateProperty(const PropertyBag &bag, T &result)