TuttleOFX  1
tuttle::host::ofx::property::OfxhProperty Class Reference

base class for all properties More...

#include <OfxhProperty.hpp>

Inheritance diagram for tuttle::host::ofx::property::OfxhProperty:
Collaboration diagram for tuttle::host::ofx::property::OfxhProperty:

Public Types

typedef OfxhProperty This

Public Member Functions

 OfxhProperty (const std::string &name, EPropType type, std::size_t dimension=1, bool pluginReadOnly=false)
 OfxhProperty (const This &other)
virtual ~OfxhProperty ()=0
virtual bool operator== (const This &other) const
bool operator!= (const This &other) const
virtual void copyValues (const This &other)=0
bool getPluginReadOnly () const
 is it read only?
void setPluginReadOnly (bool v)
 change the state of readonlyness
void setModifiedBy (const EModifiedBy who)
EModifiedBy getModifiedBy () const
virtual OfxhPropertyclone () const =0
 override this to return a clone of the property
const std::string & getName () const
 get the name of this property
EPropType getType () const
 get the type of this property
void addNotifyHook (OfxhNotifyHook *hook)
 add a notify hook
void setGetHook (OfxhGetHook *hook)
 set the get hook
void notify (bool single, int indexOrN)
 call notify on the contained notify hooks
virtual std::size_t getDimension () const =0
std::size_t getFixedDimension () const
 get the fixed dimension of this property
bool isFixedSize () const
 are we a fixed dim property
virtual void reset ()=0
 reset this property to the default
virtual std::string getStringValueAt (int index=0) const =0
 get a string representing the value of this property at element nth
std::vector< std::string > getStringValues () const
std::string getStringValue () const
 get a string representing all the values of this property

Protected Attributes

std::string _name
 name of this property
EPropType _type
 type of this property
std::size_t _dimension
 the fixed dimension of this property
bool _pluginReadOnly
 set is forbidden through suite: value may still change between getValue() calls
EModifiedBy _modifiedBy
 who set this property most recently
std::vector< OfxhNotifyHook * > _notifyHooks
 hooks to call whenever the property is set
OfxhGetHook_getHook
 if we are not storing props locally, they are stored via fetching from here

Private Member Functions

template<class Archive >
void serialize (Archive &ar, const unsigned int version)

Friends

class OfxhSet
class boost::serialization::access

Detailed Description

base class for all properties

Definition at line 98 of file OfxhProperty.hpp.


Member Typedef Documentation


Constructor & Destructor Documentation

tuttle::host::ofx::property::OfxhProperty::OfxhProperty ( const std::string &  name,
EPropType  type,
std::size_t  dimension = 1,
bool  pluginReadOnly = false 
)

Definition at line 54 of file OfxhProperty.cpp.

tuttle::host::ofx::property::OfxhProperty::OfxhProperty ( const This other)

Definition at line 66 of file OfxhProperty.cpp.

tuttle::host::ofx::property::OfxhProperty::~OfxhProperty ( ) [pure virtual]

Definition at line 75 of file OfxhProperty.cpp.


Member Function Documentation

void tuttle::host::ofx::property::OfxhProperty::addNotifyHook ( OfxhNotifyHook hook) [inline]

add a notify hook

Definition at line 178 of file OfxhProperty.hpp.

References _notifyHooks.

Referenced by tuttle::host::ofx::property::OfxhSet::addNotifyHook().

virtual OfxhProperty* tuttle::host::ofx::property::OfxhProperty::clone ( ) const [pure virtual]

override this to return a clone of the property

Implemented in tuttle::host::ofx::property::OfxhPropertyTemplate< T >.

Referenced by tuttle::host::ofx::property::new_clone().

virtual void tuttle::host::ofx::property::OfxhProperty::copyValues ( const This other) [pure virtual]
virtual std::size_t tuttle::host::ofx::property::OfxhProperty::getDimension ( ) const [pure virtual]
std::size_t tuttle::host::ofx::property::OfxhProperty::getFixedDimension ( ) const [inline]

get the fixed dimension of this property

Definition at line 196 of file OfxhProperty.hpp.

References _dimension.

const std::string& tuttle::host::ofx::property::OfxhProperty::getName ( ) const [inline]

get the name of this property

Definition at line 166 of file OfxhProperty.hpp.

References _name.

Referenced by tuttle::host::ofx::property::OfxhSet::addProperty(), and tuttle::host::ofx::property::OfxhSet::copyValues().

bool tuttle::host::ofx::property::OfxhProperty::getPluginReadOnly ( ) const [inline]

is it read only?

Definition at line 154 of file OfxhProperty.hpp.

References _pluginReadOnly.

Referenced by tuttle::host::ofx::property::operator<<().

std::string tuttle::host::ofx::property::OfxhProperty::getStringValue ( ) const

get a string representing all the values of this property

Definition at line 97 of file OfxhProperty.cpp.

References getDimension(), getStringValueAt(), and getStringValues().

Here is the call graph for this function:

virtual std::string tuttle::host::ofx::property::OfxhProperty::getStringValueAt ( int  index = 0) const [pure virtual]

get a string representing the value of this property at element nth

Implemented in tuttle::host::ofx::property::OfxhPropertyTemplate< T >.

Referenced by getStringValue(), getStringValues(), and tuttle::host::ofx::property::operator<<().

std::vector< std::string > tuttle::host::ofx::property::OfxhProperty::getStringValues ( ) const

Definition at line 88 of file OfxhProperty.cpp.

References getDimension(), and getStringValueAt().

Referenced by getStringValue().

Here is the call graph for this function:

EPropType tuttle::host::ofx::property::OfxhProperty::getType ( ) const [inline]
bool tuttle::host::ofx::property::OfxhProperty::isFixedSize ( ) const [inline]

are we a fixed dim property

Definition at line 202 of file OfxhProperty.hpp.

References _dimension.

void tuttle::host::ofx::property::OfxhProperty::notify ( bool  single,
int  indexOrN 
)

call notify on the contained notify hooks

Definition at line 79 of file OfxhProperty.cpp.

References _name, and _notifyHooks.

bool tuttle::host::ofx::property::OfxhProperty::operator!= ( const This other) const [inline]

Definition at line 149 of file OfxhProperty.hpp.

References operator==().

Here is the call graph for this function:

virtual bool tuttle::host::ofx::property::OfxhProperty::operator== ( const This other) const [inline, virtual]
virtual void tuttle::host::ofx::property::OfxhProperty::reset ( ) [pure virtual]

reset this property to the default

Implemented in tuttle::host::ofx::property::OfxhPropertyTemplate< T >.

template<class Archive >
void tuttle::host::ofx::property::OfxhProperty::serialize ( Archive &  ar,
const unsigned int  version 
) [inline, private]

Reimplemented in tuttle::host::ofx::property::OfxhPropertyTemplate< T >.

Definition at line 221 of file OfxhProperty.hpp.

References _dimension, _name, _pluginReadOnly, and _type.

void tuttle::host::ofx::property::OfxhProperty::setGetHook ( OfxhGetHook hook) [inline]

set the get hook

Definition at line 184 of file OfxhProperty.hpp.

References _getHook.

Referenced by tuttle::host::ofx::property::OfxhSet::setGetHook().

void tuttle::host::ofx::property::OfxhProperty::setModifiedBy ( const EModifiedBy  who) [inline]

Definition at line 159 of file OfxhProperty.hpp.

References _modifiedBy.

void tuttle::host::ofx::property::OfxhProperty::setPluginReadOnly ( bool  v) [inline]

change the state of readonlyness

Definition at line 157 of file OfxhProperty.hpp.

References _pluginReadOnly.


Friends And Related Function Documentation

friend class boost::serialization::access [friend]

Reimplemented in tuttle::host::ofx::property::OfxhPropertyTemplate< T >.

Definition at line 219 of file OfxhProperty.hpp.

friend class OfxhSet [friend]

Definition at line 112 of file OfxhProperty.hpp.


Field Documentation

the fixed dimension of this property

Definition at line 106 of file OfxhProperty.hpp.

Referenced by getFixedDimension(), isFixedSize(), operator==(), and serialize().

if we are not storing props locally, they are stored via fetching from here

Definition at line 110 of file OfxhProperty.hpp.

Referenced by setGetHook().

name of this property

Definition at line 104 of file OfxhProperty.hpp.

Referenced by getName(), notify(), operator==(), and serialize().

hooks to call whenever the property is set

Definition at line 109 of file OfxhProperty.hpp.

Referenced by addNotifyHook(), and notify().

set is forbidden through suite: value may still change between getValue() calls

Definition at line 107 of file OfxhProperty.hpp.

Referenced by getPluginReadOnly(), operator==(), serialize(), and setPluginReadOnly().

type of this property

Definition at line 105 of file OfxhProperty.hpp.

Referenced by getType(), operator==(), and serialize().


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