OpenSim  OpenSim 3.0
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Pages
OpenSim::PropertyStr Class Reference

#include <PropertyStr.h>

Inheritance diagram for OpenSim::PropertyStr:
OpenSim::Property_Deprecated OpenSim::AbstractProperty

Public Member Functions

 PropertyStr ()
 PropertyStr (const std::string &aName, const std::string &aValue)
 PropertyStr (const PropertyStr &aProperty)
PropertyStrclone () const
 
Return a new instance of this concrete property object, containing

new copies of this property's values.

PropertyStroperator= (const PropertyStr &aProperty)
virtual std::string getTypeName () const override
 
This returns a string representation of this property's value type 

which will be the same as T::getClassName() for Object-derived types T, and some reasonably nice name for simple types, including at least "bool", "int", "double", "string", "Vec3", "Vector", and "Transform".

virtual void setValue (const std::string &aValue)
virtual std::string & getValueStr ()
virtual const std::string & getValueStr () const
virtual std::string toString () const
 
For relatively simple types, return the current value of this property 

in a string suitable for displaying to a user in the GUI.

void clearValue ()
bool isValidFileName ()
- Public Member Functions inherited from OpenSim::Property_Deprecated
 Property_Deprecated ()
 Property_Deprecated (PropertyType aType, const std::string &aName)
 Property_Deprecated (const Property_Deprecated &aProperty)
virtual PropertyType getPropertyType () const
 Return the enum value corresponding to the concrete property.
virtual bool isArrayProperty () const
 Return true if this is an array property.
void setMatchName (bool aMatchName)
 
By default deprecated PropertyObj properties will ignore the name

associated with the read-in object.

bool getMatchName () const
 
Return the value of the matchName flag for this (deprecated) 

property.

bool isEqualTo (const AbstractProperty &other) const override
 
The base class equals() method will have already done a lot of checking

prior to calling this method, including verifying that both values are non-default and that the value lists are the same size; the concrete property need only compare the values.

virtual void readFromXMLElement (SimTK::Xml::Element &propertyElement, int versionNumber) override
 
Read in a new value for this property from the XML element 

propertyElement.

virtual void writeToXMLElement (SimTK::Xml::Element &propertyElement) const override
 
Output a serialized representation of this property by writing its

value to the given XML property element.

virtual int getNumValues () const override
 
How may values are currently stored in this property? If this is an

object property you can use this with getValueAsObject() to iterate over the contained objects.

virtual void clearValues () override
 If the concrete property allows it, clear the value list.
virtual bool isUnnamedProperty () const override
 
An unnamed property is a one-object property whose name was given as

null or as the contained object's type tag.

virtual bool isObjectProperty () const override
 
Return true if this is an "object property", meaning that its values

are all concrete objects of types that ultimately derive from the OpenSim serializable base class Object.

virtual bool isAcceptableObjectTag (const std::string &objectTypeTag) const override
 
Return true if the given string is the XML tag name for one of the

Object-derived types that is allowed by this property.

virtual const ObjectgetValueAsObject (int index=-1) const override
 
For an object property, the values can be obtained as references to

the abstract base class Object from which all the objects derive.

virtual ObjectupdValueAsObject (int index=-1) override
 Get writable access to an existing object value.
virtual void setValueAsObject (const Object &obj, int index=-1) override
 Set the indicated value element to a new copy of the supplied object.
void setNull ()
Property_Deprecatedoperator= (const Property_Deprecated &aProperty)
virtual bool operator== (const Property_Deprecated &aProperty) const
virtual bool operator< (const Property_Deprecated &aProperty) const
void setType (PropertyType aType)
PropertyType getType () const
virtual void setValue (bool aValue)
virtual bool & getValueBool ()
virtual const bool & getValueBool () const
virtual void setValue (int aValue)
virtual int & getValueInt ()
virtual const int & getValueInt () const
virtual void setValue (double aValue)
virtual double & getValueDbl ()
virtual const double & getValueDbl () const
virtual void setValue (int aSize, const bool aArray[])
virtual void setValue (const Array< bool > &aArray)
virtual Array< bool > & getValueBoolArray ()
virtual const Array< bool > & getValueBoolArray () const
virtual void setValue (int aSize, const int aArray[])
virtual void setValue (const Array< int > &aArray)
virtual Array< int > & getValueIntArray ()
virtual const Array< int > & getValueIntArray () const
virtual void setValue (int aSize, const double aArray[])
virtual void setValue (const Array< double > &aArray)
virtual Array< double > & getValueDblArray ()
virtual const Array< double > & getValueDblArray () const
virtual void setValue (int aSize, const std::string aArray[])
virtual void setValue (const Array< std::string > &aArray)
virtual Array< std::string > & getValueStrArray ()
virtual const Array
< std::string > & 
getValueStrArray () const
virtual bool isValidObject (const Object *aValue) const
virtual ObjectgetValueObj ()
virtual const ObjectgetValueObj () const
virtual void setValue (Object *aValue)
virtual ObjectgetValueObjPtr ()
virtual ObjectgetValueObjPtr (int index)
virtual void appendValue (Object *obj)
virtual void clearObjArray ()
virtual int getArraySize () const
template<class T >
T & getValue ()
template<class T >
const T & getValue () const
template<class T >
Array< T > & getValueArray ()
template<class T >
const Array< T > & getValueArray () const
- Public Member Functions inherited from OpenSim::AbstractProperty
void setAllowableListSize (int aMin, int aMax)
 
Require that the number of values n in the value list of this property

be in the range aMin <= n <= aMax.

void setAllowableListSize (int aNum)
 
Require that the number of values n in the value list of this property

be exactly n=aNum values.

virtual ~AbstractProperty ()
 Return all heap space used by this property.
bool equals (const AbstractProperty &other) const
 
Compare this property with another one; this is primarily used 

for testing.

bool isSamePropertyClass (const AbstractProperty &other) const
 
Return true if the \a other property is an object of exactly the same 

concrete class as this one.

bool operator== (const AbstractProperty &other) const
 See the equals() method for the meaning of this operator.
void setAllPropertiesUseDefault (bool shouldUseDefault)
 
 This method sets the "use default" flag for this property and the 

properties of any objects it contains to the given value.

void readFromXMLParentElement (SimTK::Xml::Element &parent, int versionNumber)
 
Given an XML parent element expected to contain a value for this

property as an immediate child element, find that property element and set the property value from it.

void writeToXMLParentElement (SimTK::Xml::Element &parent)
 
Given an XML parent element, append a single child element representing

the serialized form of this property.

void setName (const std::string &name)
 Set the property name.
void setComment (const std::string &aComment)
 Set a user-friendly comment to be associated with property.
void setValueIsDefault (bool isDefault)
 
%Set flag indicating whether the value of this property was simply

taken from a default object and thus should not be written out when serializing.

const std::string & getName () const
 Get the property name.
const std::string & getComment () const
 Get the comment associated with this property.
bool getValueIsDefault () const
 
Get the flag indicating whether the current value is just the default

value for this property (in which case it doesn't need to be written out).

int getMinListSize () const
 
Get the minimum number of values allowed in this property's value

list.

int getMaxListSize () const
 
Get the maximum number of values allowed in this property's value

list.

bool isOptionalProperty () const
 
This is an "optional" property if its value list can contain at most

one value.

bool isListProperty () const
 
This is a "list" property if its value list can contain more than

one value.

bool isOneValueProperty () const
 
This is a "one-value" property if its value list must always contain

exactly one value.

bool isOneObjectProperty () const
 
This is a "one-object" property if it is a "one-value" property and

it contains an Object-derived value.

int size () const
 Return the number of values currently in this property's value list.
bool empty () const
 Return true if this property's value list is currently empty.
void clear ()
 
Empty the value list for this property; fails if zero is not an 

allowable size for this property.

template<class T >
const T & getValue (int index=-1) const
 
Return one of the values in this property as type T; this works only 

if the underlying concrete property stores type T and if the indexed element is present, otherwise throws an exception.

template<class T >
T & updValue (int index=-1)
 
Return a writable reference to one of the values in this property as 

type T; this works only if the underlying concrete property is actually of type T and the indexed element is present.

template<class T >
int appendValue (const T &value)
 
Append a new value of type T to the end of the list of values currently

contained in this property.

Static Public Member Functions

static const std::string & getDefaultStr ()

Additional Inherited Members

- Public Types inherited from OpenSim::Property_Deprecated
enum  PropertyType {
  None = 0, Bool, Int, Dbl,
  Str, Obj, ObjPtr, BoolArray,
  IntArray, DblArray, StrArray, ObjArray,
  DblVec, DblVec3, Transform
}
 Enumeration of recognized types. More...
- Protected Member Functions inherited from OpenSim::AbstractProperty
 AbstractProperty ()
 AbstractProperty (const std::string &name, const std::string &comment)

Constructor & Destructor Documentation

OpenSim::PropertyStr::PropertyStr ( )
OpenSim::PropertyStr::PropertyStr ( const std::string &  aName,
const std::string &  aValue 
)
OpenSim::PropertyStr::PropertyStr ( const PropertyStr aProperty)

Member Function Documentation

void OpenSim::PropertyStr::clearValue ( )
inline
PropertyStr* OpenSim::PropertyStr::clone ( ) const
virtual

Return a new instance of this concrete property object, containing

new copies of this property's values.

The new property object is allocated on the heap and it is up to the caller to delete it when done.

Implements OpenSim::Property_Deprecated.

static const std::string& OpenSim::PropertyStr::getDefaultStr ( )
static
virtual std::string OpenSim::PropertyStr::getTypeName ( ) const
overridevirtual

This returns a string representation of this property's value type 

which will be the same as T::getClassName() for Object-derived types T, and some reasonably nice name for simple types, including at least "bool", "int", "double", "string", "Vec3", "Vector", and "Transform".

Implements OpenSim::Property_Deprecated.

virtual std::string& OpenSim::PropertyStr::getValueStr ( )
virtual

Reimplemented from OpenSim::Property_Deprecated.

virtual const std::string& OpenSim::PropertyStr::getValueStr ( ) const
virtual

Reimplemented from OpenSim::Property_Deprecated.

bool OpenSim::PropertyStr::isValidFileName ( )
inline
PropertyStr& OpenSim::PropertyStr::operator= ( const PropertyStr aProperty)
virtual void OpenSim::PropertyStr::setValue ( const std::string &  aValue)
virtual

Reimplemented from OpenSim::Property_Deprecated.

virtual std::string OpenSim::PropertyStr::toString ( ) const
virtual

For relatively simple types, return the current value of this property 

in a string suitable for displaying to a user in the GUI.

Objects just return something like "(Object)".

Implements OpenSim::Property_Deprecated.


The documentation for this class was generated from the following file: