44 #ifndef ORO_KDL_TYPEKIT_HPP 45 #define ORO_KDL_TYPEKIT_HPP 49 #include <kdl/frames.hpp> 50 #include <rtt/types/Types.hpp> 54 #include <rtt/types/carray.hpp> 62 #include <kdl/frames_io.hpp> 64 #include <kdl/jntarray.hpp> 65 #include <kdl/jacobian.hpp> 85 template<
class KDLType,
int size>
88 if (index >= size || index < 0)
100 template<
class KDLType,
int size>
103 if (index >= size || index < 0)
115 virtual std::string getName();
117 virtual bool loadTypes();
118 virtual bool loadConstructors();
119 virtual bool loadOperators();
125 template<
class KDLType,
int size>
127 :
public StructTypeInfo<KDLType,true>
146 if ( item->isAssignable() )
153 log(
Error) <<
"KDLVectorTypeInfo: Invalid index : " << id_indx->
get() <<
":"<< id_indx->
getTypeName() << endlog();
156 log(
Error) <<
"KDLVectorTypeInfo: Not a member or index : " <<
id <<
":"<<
id->getTypeName() << endlog();
164 template<
class KDLType>
166 :
public StructTypeInfo<KDLType,true>
168 KDLTypeInfo(std::string name) : StructTypeInfo<KDLType,true>(name) {}
virtual result_t get() const =0
virtual bool decomposeTypeImpl(const KDLType &source, PropertyBag &targetbag) const
virtual bool decomposeTypeImpl(const KDLType &source, PropertyBag &targetbag) const
double get_container_item_copy(const KDLType &cont, int index)
virtual bool composeTypeImpl(const PropertyBag &source, KDLType &result) const
KDLTypekitPlugin KDLTypekit
KDLVectorTypeInfo(std::string name)
KDLTypeInfo(std::string name)
void decomposeProperty(const Joint &joint, PropertyBag &targetbag)
double & get_container_item(KDLType &cont, int index)
boost::intrusive_ptr< DataSource< T > > shared_ptr
static DataSource< T > * narrow(base::DataSourceBase *db)
base::DataSourceBase::shared_ptr getMember(base::DataSourceBase::shared_ptr item, base::DataSourceBase::shared_ptr id) const
virtual std::string getTypeName() const
boost::intrusive_ptr< DataSourceBase > shared_ptr
virtual bool composeTypeImpl(const PropertyBag &source, KDLType &result) const