40 #include "../types/PropertyDecomposition.hpp"    41 #include "../types/Types.hpp"    42 #include "../Property.hpp"    43 #include "../PropertyBag.hpp"    44 #include "../Logger.hpp"    47     using namespace detail;
 bool propertyDecomposition(base::PropertyBase *source, PropertyBag &targetbag, bool recurse)
void deletePropertyBag(PropertyBag &target)
const std::string & getDescription() const 
base::PropertyBase * buildProperty(const std::string &name, const std::string &desc, base::DataSourceBase::shared_ptr source=0) const 
virtual void introspect(PropertyBase *p)=0
const std::string & getName() const 
boost::intrusive_ptr< DataSourceBase > shared_ptr
Contains TaskContext, Activity, OperationCaller, Operation, Property, InputPort, OutputPort, Attribute. 
bool introspectAndDecompose(PropertyBase *t)
base::DataSourceBase::shared_ptr decomposeType(base::DataSourceBase::shared_ptr source) const 
virtual DataSourceBase::shared_ptr getDataSource() const =0
virtual const types::TypeInfo * getTypeInfo() const =0