39 #ifndef ORO_CORELIB_ATTRIBUTE_HPP 40 #define ORO_CORELIB_ATTRIBUTE_HPP 100 template<
class Owner>
105 o->addAttribute(
this);
125 data( a.data->
clone() )
137 data = a.
data->clone();
199 void set( T
const& t )
229 Attribute<T>*
copy( std::map<const base::DataSourceBase*, base::DataSourceBase*>& replacements,
bool instantiate )
235 replacements[ data.
get() ] = instds;
282 template<
class Owner>
283 Constant(
const std::string& name, T t, Owner owner)
287 owner->addAttribute(
this );
359 Constant<T>*
copy( std::map<const base::DataSourceBase*, base::DataSourceBase*>& replacements,
bool instantiate )
391 template<
class Owner>
396 owner->addAttribute(
this );
403 Alias*
copy( std::map<const base::DataSourceBase*, base::DataSourceBase*>& replacements,
bool );
Constant(const std::string &name, T t, Owner owner)
virtual result_t get() const =0
Attribute< T > & operator=(const Attribute< T > &a)
internal::AssignableDataSource< T >::shared_ptr data
Constant(base::AttributeBase *ab)
boost::call_traits< value_t >::reference reference_t
Attribute< T > * copy(std::map< const base::DataSourceBase *, base::DataSourceBase * > &replacements, bool instantiate)
virtual void set(param_t t)=0
Constant(const std::string &name, internal::DataSource< T > *d)
Constant< T > * copy(std::map< const base::DataSourceBase *, base::DataSourceBase * > &replacements, bool instantiate)
Attribute(const std::string &name, T t, Owner o)
virtual DataSourceBase::shared_ptr getDataSource() const =0
internal::AssignableDataSource< T >::shared_ptr getAssignableDataSource() const
Attribute(const std::string &name, T t)
base::DataSourceBase::shared_ptr getDataSource() const
Attribute(const std::string &name, internal::AssignableDataSource< T > *d)
Attribute< T > * clone() const
base::DataSourceBase::shared_ptr data
virtual const_reference_t rvalue() const =0
virtual AssignableDataSource< T > * clone() const =0
base::DataSourceBase::shared_ptr getDataSource() const
Attribute(const std::string &name)
Constant< T > & operator=(base::AttributeBase *ab)
Constant< T > * clone() const
boost::intrusive_ptr< DataSource< T > > shared_ptr
boost::intrusive_ptr< AssignableDataSource< T > > shared_ptr
Alias(const std::string &name, base::DataSourceBase::shared_ptr d, Owner owner)
Attribute(base::AttributeBase *ab)
Attribute(const Attribute< T > &a)
boost::intrusive_ptr< DataSourceBase > shared_ptr
Constant(const std::string &name, T t)
Contains TaskContext, Activity, OperationCaller, Operation, Property, InputPort, OutputPort, Attribute.
const std::string & getName() const
internal::DataSource< T >::shared_ptr data
Attribute< T > & operator=(base::AttributeBase *ab)
virtual AssignableDataSource< T > * copy(std::map< const base::DataSourceBase *, base::DataSourceBase * > &alreadyCloned) const =0
virtual bool evaluate() const