Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members  

amire::property::TBaseProperty< type > Class Template Reference

Inheritance diagram for amire::property::TBaseProperty< type >:

amire::property::PersistentProperty amire::property::Property List of all members.

Public Member Functions

 TBaseProperty (const PropertyTypeManager *propertyTypeManager)
 TBaseProperty (const type &value, const PropertyTypeManager *propertyTypeManager)
 TBaseProperty (const TBaseProperty< type > &property)
virtual ~TBaseProperty ()
virtual bool equals (const osg::ref_ptr< const Property > &property) const
virtual osg::ref_ptr< Propertyclone () const
virtual void cloneFrom (const osg::ref_ptr< const Property > &property)
const type & getValue () const
void setValue (const type &value)

Protected Attributes

type value

Detailed Description

template<class type>
class amire::property::TBaseProperty< type >

The template implementation class TBaseProperty<type> is the implementation of all persistent base properties. Additionally to the derived interface it provides a get and set method for the property value, a constructor for creating a new base property with a given value and a copy constructor which creates a copy of a base property with the same class type.


Constructor & Destructor Documentation

template<class type>
amire::property::TBaseProperty< type >::TBaseProperty const PropertyTypeManager propertyTypeManager  )  [inline]
 

template<class type>
amire::property::TBaseProperty< type >::TBaseProperty const type &  value,
const PropertyTypeManager propertyTypeManager
[inline]
 

template<class type>
amire::property::TBaseProperty< type >::TBaseProperty const TBaseProperty< type > &  property  )  [inline]
 

template<class type>
virtual amire::property::TBaseProperty< type >::~TBaseProperty  )  [inline, virtual]
 


Member Function Documentation

template<class type>
virtual osg::ref_ptr<Property> amire::property::TBaseProperty< type >::clone  )  const [inline, virtual]
 

Creates a deep copy clone of the property. The returned property is equal to the original property and doesn't share any value references with it.

Implements amire::property::Property.

template<class type>
virtual void amire::property::TBaseProperty< type >::cloneFrom const osg::ref_ptr< const Property > &  property  )  [inline, virtual]
 

Initializes this property with a deep copy of the given property. Afterware, this property is equal to the given and doesn't share any value references with it. An exception is thrown, if the deep copy is not possible.

Implements amire::property::Property.

template<class type>
virtual bool amire::property::TBaseProperty< type >::equals const osg::ref_ptr< const Property > &  property  )  const [inline, virtual]
 

The ‘virtual bool equals(const Property *property) const’ method returns true when the as parameter property given property is equal to the this property instance and false otherwise. It also doesn’t modify the property instance and therefore it is const.

Implements amire::property::Property.

template<class type>
const type& amire::property::TBaseProperty< type >::getValue  )  const [inline]
 

The ‘const type &getValue() const’ method returns a const reference to the value contained in the base property. It also doesn’t modify the property instance and therefore it is a const method. This allows the compiler better optimization of code containing method calls.

template<class type>
void amire::property::TBaseProperty< type >::setValue const type &  value  )  [inline]
 

The ‘void setValue(const type &value)’ method sets the value contained in the base property to the given value.


Member Data Documentation

template<class type>
type amire::property::TBaseProperty< type >::value [protected]
 


The documentation for this class was generated from the following file:
Generated on Tue May 20 17:23:59 2003 for AMIRE-Framework by doxygen1.3