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

amire::property::StructProperty Class Reference

Inheritance diagram for amire::property::StructProperty:

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

Public Member Functions

 StructProperty (const std::string &structName, const PropertyTypeManager *propertyTypeManager)
 StructProperty (const StructProperty &property)
virtual ~StructProperty ()
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)
bool contains (const std::string &name) const
void setProperty (const std::string &name, const osg::ref_ptr< Property > &property)
osg::ref_ptr< Property > & getProperty (const std::string &name) const
void setBoolean (const std::string &name, bool value)
bool getBoolean (const std::string &name) const
void setInteger (const std::string &name, int value)
int getInteger (const std::string &name) const
void setFloat (const std::string &name, float value)
float getFloat (const std::string &name) const
void setDouble (const std::string &name, double value)
double getDouble (const std::string &name) const
void setChar (const std::string &name, char value)
char getChar (const std::string &name) const
void setString (const std::string &name, const std::string &value)
const std::string & getString (const std::string &name) const
osg::ref_ptr< BooleanVectorPropertygetBooleanVector (const std::string &name) const
osg::ref_ptr< IntegerVectorPropertygetIntegerVector (const std::string &name) const
osg::ref_ptr< FloatVectorPropertygetFloatVector (const std::string &name) const
osg::ref_ptr< DoubleVectorPropertygetDoubleVector (const std::string &name) const
osg::ref_ptr< CharVectorPropertygetCharVector (const std::string &name) const
osg::ref_ptr< StringVectorPropertygetStringVector (const std::string &name) const
osg::ref_ptr< StructProperty > getStruct (const std::string &name) const
osg::ref_ptr< StructVectorPropertygetStructVector (const std::string &name) const
void cloneFrom (const StructProperty *property)

Detailed Description

Instances of the class StructProperty represent an associative array of properties. The number of properties and their names and types are defined by a structured property type. It provides interfaces to access and manipulate the properties by their name. Special interfaces are provided to ensure a fast access to basic and vector properties.


Constructor & Destructor Documentation

amire::property::StructProperty::StructProperty const std::string &  structName,
const PropertyTypeManager propertyTypeManager
 

amire::property::StructProperty::StructProperty const StructProperty &  property  ) 
 

virtual amire::property::StructProperty::~StructProperty  )  [virtual]
 


Member Function Documentation

virtual osg::ref_ptr<Property> amire::property::StructProperty::clone  )  const [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.

void amire::property::StructProperty::cloneFrom const StructProperty *  property  ) 
 

Initializes this strutured property as a deep copy of the given one.

virtual void amire::property::StructProperty::cloneFrom const osg::ref_ptr< const Property > &  property  )  [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.

bool amire::property::StructProperty::contains const std::string &  name  )  const
 

The ‘bool contains(const string &name) const’ method return true when the structured property type defines that the structured property must contain a property with the given name. Otherwise false will be returned.

virtual bool amire::property::StructProperty::equals const osg::ref_ptr< const Property > &  property  )  const [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.

bool amire::property::StructProperty::getBoolean const std::string &  name  )  const
 

The ‘bool getBoolean(const string &name) const’ method returns the boolean property associated with the given name. An assert exceptions is thrown when the fieldname is not defined in the structured property type or the defined property type is not the boolean property type.

osg::ref_ptr<BooleanVectorProperty> amire::property::StructProperty::getBooleanVector const std::string &  name  )  const
 

The ‘BooleanVectorProperty *getBooleanVector(const string &name)’ method returns a reference pointer pointing to the boolean vector property associated with the given name. An assert exceptions is thrown when the fieldname is not defined in the structured property type or the defined property type is not the boolean vector property type.

char amire::property::StructProperty::getChar const std::string &  name  )  const
 

The ‘char getChar(const string &name) const’ method returns the character property associated with the given name. An assert exceptions is thrown when the fieldname is not defined in the structured property type or the defined property type is not the character property type.

osg::ref_ptr<CharVectorProperty> amire::property::StructProperty::getCharVector const std::string &  name  )  const
 

The ‘CharVectorProperty *getCharVector(const string &name)’ method returns a reference pointer pointing to the character vector property associated with the given name. An assert exceptions is thrown when the fieldname is not defined in the structured property type or the defined property type is not the character vector property type.

double amire::property::StructProperty::getDouble const std::string &  name  )  const
 

The ‘double getDouble(const string &name) const’ method returns the double property associated with the given name. An assert exceptions is thrown when the fieldname is not defined in the structured property type or the defined property type is not the double property type.

osg::ref_ptr<DoubleVectorProperty> amire::property::StructProperty::getDoubleVector const std::string &  name  )  const
 

The ‘DoubleVectorProperty *getDoubleVector(const string &name)’ method returns a reference pointer pointing to the double vector property associated with the given name. An assert exceptions is thrown when the fieldname is not defined in the structured property type or the defined property type is not the double vector property type.

float amire::property::StructProperty::getFloat const std::string &  name  )  const
 

The ‘float getFloat(const string &name) const’ method returns the float property associated with the given name. An assert exceptions is thrown when the fieldname is not defined in the structured property type or the defined property type is not the float property type.

osg::ref_ptr<FloatVectorProperty> amire::property::StructProperty::getFloatVector const std::string &  name  )  const
 

The ‘FloatVectorProperty *getFloatVector(const string &name)’ method returns a reference pointer pointing to the float vector property associated with the given name. An assert exceptions is thrown when the fieldname is not defined in the structured property type or the defined property type is not the float vector property type.

int amire::property::StructProperty::getInteger const std::string &  name  )  const
 

The ‘int getInteger(const string &name) const’ method returns the integer property associated with the given name. An assert exceptions is thrown when the fieldname is not defined in the structured property type or the defined property type is not the integer property type.

osg::ref_ptr<IntegerVectorProperty> amire::property::StructProperty::getIntegerVector const std::string &  name  )  const
 

The ‘IntegerVectorProperty *getIntegerVector(const string &name)’ method returns a reference pointer pointing to the integer vector property associated with the given name. An assert exceptions is thrown when the fieldname is not defined in the structured property type or the defined property type is not the integer vector property type.

osg::ref_ptr<Property>& amire::property::StructProperty::getProperty const std::string &  name  )  const
 

The ‘const PersistentProperty *getProperty(const string &name) const’ method returns the property associated with the given name. An assert exception is thrown when the fieldname is not defined in the structured property type.

const std::string& amire::property::StructProperty::getString const std::string &  name  )  const
 

The ‘const string &getString(const string &name) const’ method returns the string property associated with the given name. An assert exceptions is thrown when the fieldname is not defined in the structured property type or the defined property type is not the string property type.

osg::ref_ptr<StringVectorProperty> amire::property::StructProperty::getStringVector const std::string &  name  )  const
 

The ‘StringVectorProperty *getStringVector(const string &name)’ method returns a reference pointer pointing to the string vector property associated with the given name. An assert exceptions is thrown when the fieldname is not defined in the structured property type or the defined property type is not the string vector property type.

osg::ref_ptr<StructProperty> amire::property::StructProperty::getStruct const std::string &  name  )  const
 

The ‘StructProperty *getStruct(const string &name)’ method returns a reference pointer pointing to the structured property associated with the given name. An assert exceptions is thrown when the fieldname is not defined in the structured property type or the defined property type is not a structured property type.

osg::ref_ptr<StructVectorProperty> amire::property::StructProperty::getStructVector const std::string &  name  )  const
 

The ‘StructVectorProperty *getStructVector(const string &name)’ method returns a reference pointer pointing to the structured vector property associated with the given name. An assert exceptions is thrown when the fieldname is not defined in the structured property type or the defined property type is not a structured vector property type.

void amire::property::StructProperty::setBoolean const std::string &  name,
bool  value
 

The ‘void setBoolean(const string &name, bool value)’ method sets the boolean property associated with the name to the given value. An assert exceptions is thrown when the fieldname is not defined in the structured property type or the defined property type is not the boolean property type.

void amire::property::StructProperty::setChar const std::string &  name,
char  value
 

The ‘void setChar(const string &name, char value)’ method sets the character property associated with the name to the given value. An assert exceptions is thrown when the fieldname is not defined in the structured property type or the defined property type is not the character property type.

void amire::property::StructProperty::setDouble const std::string &  name,
double  value
 

The ‘void setDouble(const string &name, double value)’ method sets double the property associated with the name to the given value. An assert exceptions is thrown when the fieldname is not defined in the structured property type or the defined property type is not the double property type.

void amire::property::StructProperty::setFloat const std::string &  name,
float  value
 

The ‘void setFloat(const string &name, float value)’ method sets float the property associated with the name to the given value. An assert exceptions is thrown when the fieldname is not defined in the structured property type or the defined property type is not the float property type.

void amire::property::StructProperty::setInteger const std::string &  name,
int  value
 

The ‘void setInteger(const string &name, int value)’ method sets the integer property associated with the name to the given value. An assert exceptions is thrown when the fieldname is not defined in the structured property type or the defined property type is not the integer property type.

void amire::property::StructProperty::setProperty const std::string &  name,
const osg::ref_ptr< Property > &  property
 

The ‘void setProperty(const string &name, PersistentProperty *property)’ method sets the property associated with the name to the given value. An assert exception is thrown when: the fieldname is not defined in the structured property type, the property type of the given property is not the same as the defined one or the given property is null.

void amire::property::StructProperty::setString const std::string &  name,
const std::string &  value
 

The ‘void setString(const string &name, const string &value)’ method sets the string property associated with the name to the given value. An assert exceptions is thrown when the fieldname is not defined in the structured property type or the defined property type is not the string property type.


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