TwiceAsNice  2019-02-18
Public Member Functions | Protected Attributes | Friends | List of all members
Nice::Property Class Reference

An instance of this class holds an value of any type defined in one of the *.nice type definition files. An instance has to be coined by a certain data type. Once a Property has been coind the type can not be changed any more during runtime. More...

#include "Nice/Property.h"

Inheritance diagram for Nice::Property:
Inheritance graph
Collaboration diagram for Nice::Property:
Collaboration graph

Public Member Functions

void emitSignals (Nice::CompletionState _cs, Nice::I64 _setterId)
 Whenever the Property value has changed all connected Properties have to be informed ans synchronized. More...
 
 Property (const Property &a)
 Copy constructor. More...
 
 Property (const Nice::Any &a)
 Copy constructor. More...
 
 Property (const char *value, const Nice::Date &=Nice::Date::now())
 Constructor for const char* type. More...
 
template<typename Type >
 Property (const Type &value, const Nice::Date &=Nice::Date::now())
 Template constructor for any type. More...
 
template<typename Type >
 Property (const std::string &value, const Nice::Date &=Nice::Date::now())
 Constructor for string type. More...
 
 ~Property ()
 Destructor. More...
 
Nice::I64 id ()
 Get the unique ID of this Property. More...
 
 operator std::string () const
 Casts a Property (value) to a string. More...
 
template<typename Type >
 operator Type () const
 Cast a Property to a new type T. More...
 
Nice::Mutexmutex ()
 Return the properties Mutex. More...
 
bool operator== (const char *_value)
 Equal operator compares the value of a property to a const char*. More...
 
template<typename E >
bool operator== (const E &_value)
 Equal operator compares the value of a property to a type E. More...
 
bool operator== (const Property &_value)
 Equal operator compares two Properties. More...
 
Propertyoperator= (const char *r)
 Assignment operator assigns a const char* to the Property. More...
 
template<typename Type >
Propertyoperator= (const Type &_v)
 Assignment operator assigns a value of type T to the Property. More...
 
Propertyoperator= (Property &r)
 Assignment operator assigns a value of a Property to this Property. More...
 
Nice::CompletionState set (const char *_v, const Nice::Date &=Nice::Date::now())
 Assigns a const char* to this Property. More...
 
Nice::CompletionState set (const char *_v, Nice::I64 _setterId, const Nice::Date &=Nice::Date::now())
 Assigns a const char* to this Property. More...
 
template<typename Type >
Nice::CompletionState set (const Type &_v, const Nice::Date &_date=Nice::Date::now())
 Assigns a value of type T to this Property. More...
 
template<typename Type >
Nice::CompletionState set (const Type &_v, Nice::I64 _setterId, const Nice::Date &_date=Nice::Date::now())
 Assigns a value of type T to this Property. More...
 
template<typename TypeClass >
Nice::CompletionState change (void(TypeClass::*_memfun)(), const Nice::Date &_date=Nice::Date::now())
 Change property throough member function. More...
 
template<typename TypeClass >
Nice::CompletionState change (void(TypeClass::*_memfun)(), Nice::I64 _setterId, const Nice::Date &_date=Nice::Date::now())
 Change property throough member function. More...
 
template<typename TypeClass , typename Type1 >
Nice::CompletionState change (void(TypeClass::*_memfun)(Type1), Type1 _v1, const Nice::Date &_date=Nice::Date::now())
 Change property throough member function. More...
 
template<typename TypeClass , typename Type1 >
Nice::CompletionState change (void(TypeClass::*_memfun)(const Type1 &), Type1 _v1, const Nice::Date &_date=Nice::Date::now())
 Change property throough member function. More...
 
template<typename TypeClass , typename Type1 >
Nice::CompletionState change (void(TypeClass::*_memfun)(Type1), Type1 _v1, Nice::I64 _setterId, const Nice::Date &_date=Nice::Date::now())
 Change property throough member function. More...
 
template<typename TypeClass , typename Type1 >
Nice::CompletionState change (void(TypeClass::*_memfun)(const Type1 &), Type1 _v1, Nice::I64 _setterId, const Nice::Date &_date=Nice::Date::now())
 Change property throough member function. More...
 
template<typename TypeClass , typename Type1 , typename TypeMemFn >
Nice::CompletionState change (TypeMemFn _memfun, Type1 _v1, const Nice::Date &_date=Nice::Date::now())
 Change property throough member function. More...
 
template<typename TypeClass , typename Type1 , typename TypeMemFn >
Nice::CompletionState change (TypeMemFn _memfun, Type1 _v1, Nice::I64 _setterId, const Nice::Date &_date=Nice::Date::now())
 Change property throough member function. More...
 
template<typename TypeClass , typename Type1 , typename Type2 , typename TypeMemFn >
Nice::CompletionState change (TypeMemFn _memfun, Type1 _v1, Type2 _v2, const Nice::Date &_date=Nice::Date::now())
 Change property throough member function. More...
 
template<typename TypeClass , typename Type1 , typename Type2 , typename TypeMemFn >
Nice::CompletionState change (TypeMemFn _memfun, Type1 _v1, Type2 _v2, Nice::I64 _setterId, const Nice::Date &_date=Nice::Date::now())
 Change property throough member function. More...
 
void applyActor (const Nice::PropertyActorPtr &_actor)
 Applys a Actor to the Property. More...
 
void removeActor (const std::string &_name="")
 Removes an Actor to the Property. More...
 
Nice::PropertyActorPtr actor (const std::string &_name="") const
 Get the Actor assigned to this Property. More...
 
template<typename Type >
const IceUtil::Handle< Type > & actor (const std::string &_name="")
 Get the Actor assigned to this Property. More...
 
const std::list< Nice::PropertyActorPtr > & actorList ()
 Return actor list applied to this property. More...
 
template<typename Type >
void setAttribute (const std::string &_key, const Type &_attr, const Nice::Date &=Nice::Date::now())
 Apply an Attribute of Type to the Property. More...
 
PropertyPtr applyAttribute (const std::string &_key, const PropertyPtr &_attr)
 Apply an Attribute to the Property. More...
 
PropertyPtr applyAttribute (const std::string &_key, const char *_attr)
 Apply an Attribute to the Property. More...
 
template<typename Type >
PropertyPtr applyAttribute (const std::string &_key, const Type &_attr, const Nice::Date &=Nice::Date::now())
 Apply an Attribute of Type to the Property. More...
 
PropertyPtr attribute (const std::string &_key) const
 Get the Attribute assigned to this Property. More...
 
const PropertyPtrgetAttribute (const std::string &_key) const
 Get the Attribute assigned to this Property. More...
 
template<typename Type >
Type getAttribute (const std::string &_key)
 Get the Attribute assigned to this Property. More...
 
template<typename Type >
Type getAttributeWithDefault (const std::string &_key, const Type &_attr, const Nice::Date &=Nice::Date::now())
 Get the Attribute assigned to this Property. More...
 
void removeAttribute (const std::string &_attr="")
 Removes a Property Attribute. More...
 
const std::map< std::string, PropertyPtr > & attributeMap ()
 Return actor list applied to this property. More...
 
void applyBridge (const Nice::PropertyBridgePtr &_bridge, const std::string &_name=std::string())
 Applies a new Bridge derived from Nice::PropertyBridge to this Property. More...
 
void removeBridge (const std::string &_bridge="")
 Removes a new Bridge derived from Nice::PropertyBridge to this Property. More...
 
Nice::PropertyBridgePtr getBridge (const std::string &_name)
 Get a Bridge from all assigned PropertyBridges of this Property. More...
 
template<typename BridgeType >
IceUtil::Handle< BridgeType > getBridge (const std::string &_name)
 Get a Bridge of typename BridgeType. More...
 
bool empty () const
 Check if the Property value is empty. More...
 
std::string toStringFull () const
 Cast the Property value to a string with all its Attributes, Bridges and Actors. More...
 
std::string toString () const
 Cast the Property value to a string. More...
 
template<typename Type >
bool isType ()
 Checks if Property is of type T. More...
 
std::string typeString () const
 Get the stringified Property type. More...
 
template<typename Type >
Type get () const
 Get the Property value of type T. More...
 
const Nice::Datetimestamp () const
 timestamp of last set. More...
 
template<typename Type >
Typeref ()
 Get a const reference of the Property value of type T, type T must be exactly the one inside the property, otherwise it throws an exception! More...
 
Propertyswap (Property &r)
 Swap the content of two Properties. More...
 
void emitSignals (Nice::CompletionState _cs, Nice::I64 _setterId)
 Whenever the Property value has changed all connected Properties have to be informed ans synchronized. More...
 
 Property (const Property &a)
 Copy constructor. More...
 
 Property (const Nice::Any &a)
 Copy constructor. More...
 
 Property (const char *value, const Nice::Date &=Nice::Date::now())
 Constructor for const char* type. More...
 
template<typename Type >
 Property (const Type &value, const Nice::Date &=Nice::Date::now())
 Template constructor for any type. More...
 
template<typename Type >
 Property (const std::string &value, const Nice::Date &=Nice::Date::now())
 Constructor for string type. More...
 
 ~Property ()
 Destructor. More...
 
Nice::I64 id ()
 Get the unique ID of this Property. More...
 
 operator std::string () const
 Casts a Property (value) to a string. More...
 
template<typename Type >
 operator Type () const
 Cast a Property to a new type T. More...
 
Nice::Mutexmutex ()
 Return the properties Mutex. More...
 
bool operator== (const char *_value)
 Equal operator compares the value of a property to a const char*. More...
 
template<typename E >
bool operator== (const E &_value)
 Equal operator compares the value of a property to a type E. More...
 
bool operator== (const Property &_value)
 Equal operator compares two Properties. More...
 
Propertyoperator= (const char *r)
 Assignment operator assigns a const char* to the Property. More...
 
template<typename Type >
Propertyoperator= (const Type &_v)
 Assignment operator assigns a value of type T to the Property. More...
 
Propertyoperator= (Property &r)
 Assignment operator assigns a value of a Property to this Property. More...
 
Nice::CompletionState set (const char *_v, const Nice::Date &=Nice::Date::now())
 Assigns a const char* to this Property. More...
 
Nice::CompletionState set (const char *_v, Nice::I64 _setterId, const Nice::Date &=Nice::Date::now())
 Assigns a const char* to this Property. More...
 
template<typename Type >
Nice::CompletionState set (const Type &_v, const Nice::Date &_date=Nice::Date::now())
 Assigns a value of type T to this Property. More...
 
template<typename Type >
Nice::CompletionState set (const Type &_v, Nice::I64 _setterId, const Nice::Date &_date=Nice::Date::now())
 Assigns a value of type T to this Property. More...
 
template<typename TypeClass >
Nice::CompletionState change (void(TypeClass::*_memfun)(), const Nice::Date &_date=Nice::Date::now())
 Change property throough member function. More...
 
template<typename TypeClass >
Nice::CompletionState change (void(TypeClass::*_memfun)(), Nice::I64 _setterId, const Nice::Date &_date=Nice::Date::now())
 Change property throough member function. More...
 
template<typename TypeClass , typename Type1 >
Nice::CompletionState change (void(TypeClass::*_memfun)(Type1), Type1 _v1, const Nice::Date &_date=Nice::Date::now())
 Change property throough member function. More...
 
template<typename TypeClass , typename Type1 >
Nice::CompletionState change (void(TypeClass::*_memfun)(const Type1 &), Type1 _v1, const Nice::Date &_date=Nice::Date::now())
 Change property throough member function. More...
 
template<typename TypeClass , typename Type1 >
Nice::CompletionState change (void(TypeClass::*_memfun)(Type1), Type1 _v1, Nice::I64 _setterId, const Nice::Date &_date=Nice::Date::now())
 Change property throough member function. More...
 
template<typename TypeClass , typename Type1 >
Nice::CompletionState change (void(TypeClass::*_memfun)(const Type1 &), Type1 _v1, Nice::I64 _setterId, const Nice::Date &_date=Nice::Date::now())
 Change property throough member function. More...
 
template<typename TypeClass , typename Type1 , typename TypeMemFn >
Nice::CompletionState change (TypeMemFn _memfun, Type1 _v1, const Nice::Date &_date=Nice::Date::now())
 Change property throough member function. More...
 
template<typename TypeClass , typename Type1 , typename TypeMemFn >
Nice::CompletionState change (TypeMemFn _memfun, Type1 _v1, Nice::I64 _setterId, const Nice::Date &_date=Nice::Date::now())
 Change property throough member function. More...
 
template<typename TypeClass , typename Type1 , typename Type2 , typename TypeMemFn >
Nice::CompletionState change (TypeMemFn _memfun, Type1 _v1, Type2 _v2, const Nice::Date &_date=Nice::Date::now())
 Change property throough member function. More...
 
template<typename TypeClass , typename Type1 , typename Type2 , typename TypeMemFn >
Nice::CompletionState change (TypeMemFn _memfun, Type1 _v1, Type2 _v2, Nice::I64 _setterId, const Nice::Date &_date=Nice::Date::now())
 Change property throough member function. More...
 
void applyActor (const Nice::PropertyActorPtr &_actor)
 Applys a Actor to the Property. More...
 
void removeActor (const std::string &_name="")
 Removes an Actor to the Property. More...
 
Nice::PropertyActorPtr actor (const std::string &_name="") const
 Get the Actor assigned to this Property. More...
 
template<typename Type >
const IceUtil::Handle< Type > & actor (const std::string &_name="")
 Get the Actor assigned to this Property. More...
 
const std::list< Nice::PropertyActorPtr > & actorList ()
 Return actor list applied to this property. More...
 
template<typename Type >
void setAttribute (const std::string &_key, const Type &_attr, const Nice::Date &=Nice::Date::now())
 Apply an Attribute of Type to the Property. More...
 
PropertyPtr applyAttribute (const std::string &_key, const PropertyPtr &_attr)
 Apply an Attribute to the Property. More...
 
PropertyPtr applyAttribute (const std::string &_key, const char *_attr)
 Apply an Attribute to the Property. More...
 
template<typename Type >
PropertyPtr applyAttribute (const std::string &_key, const Type &_attr, const Nice::Date &=Nice::Date::now())
 Apply an Attribute of Type to the Property. More...
 
PropertyPtr attribute (const std::string &_key) const
 Get the Attribute assigned to this Property. More...
 
const PropertyPtrgetAttribute (const std::string &_key) const
 Get the Attribute assigned to this Property. More...
 
template<typename Type >
Type getAttribute (const std::string &_key)
 Get the Attribute assigned to this Property. More...
 
template<typename Type >
Type getAttributeWithDefault (const std::string &_key, const Type &_attr, const Nice::Date &=Nice::Date::now())
 Get the Attribute assigned to this Property. More...
 
void removeAttribute (const std::string &_attr="")
 Removes a Property Attribute. More...
 
const std::map< std::string, PropertyPtr > & attributeMap ()
 Return actor list applied to this property. More...
 
void applyBridge (const Nice::PropertyBridgePtr &_bridge, const std::string &_name=std::string())
 Applies a new Bridge derived from Nice::PropertyBridge to this Property. More...
 
void removeBridge (const std::string &_bridge="")
 Removes a new Bridge derived from Nice::PropertyBridge to this Property. More...
 
Nice::PropertyBridgePtr getBridge (const std::string &_name)
 Get a Bridge from all assigned PropertyBridges of this Property. More...
 
template<typename BridgeType >
IceUtil::Handle< BridgeType > getBridge (const std::string &_name)
 Get a Bridge of typename BridgeType. More...
 
bool empty () const
 Check if the Property value is empty. More...
 
std::string toStringFull () const
 Cast the Property value to a string with all its Attributes, Bridges and Actors. More...
 
std::string toString () const
 Cast the Property value to a string. More...
 
template<typename Type >
bool isType ()
 Checks if Property is of type T. More...
 
std::string typeString () const
 Get the stringified Property type. More...
 
template<typename Type >
Type get () const
 Get the Property value of type T. More...
 
const Nice::Datetimestamp () const
 timestamp of last set. More...
 
template<typename Type >
Typeref ()
 Get a const reference of the Property value of type T, type T must be exactly the one inside the property, otherwise it throws an exception! More...
 
Propertyswap (Property &r)
 Swap the content of two Properties. More...
 
template<>
std::string get () const
 Overloaded Property::get() function for strings. More...
 
template<>
Nice::Any get () const
 
template<>
const Nice::Anyget () const
 
template<typename Type >
Nice::Propertyoperator= (const Type &_v)
 
template<typename Type >
Nice::PropertyPtr applyAttribute (const std::string &_key, const Type &_attr, const Nice::Date &_date)
 

Protected Attributes

Nice::Mutex m_mutex
 
Nice::PropertyFooPtr m_foo
 
PropertyActorList m_actors
 
PropertyAttrMap m_attrs
 
PropertyBridgeMap m_bridges
 
Nice::I64 m_id
 
Nice::Date m_timestamp
 
Nice::U64 m_seq
 

Friends

struct Nice::PropertyActor
 

Detailed Description

An instance of this class holds an value of any type defined in one of the *.nice type definition files. An instance has to be coined by a certain data type. Once a Property has been coind the type can not be changed any more during runtime.

Author
Version
Date
2012-08-10 11:04:58 AM

Constructor & Destructor Documentation

◆ Property() [1/10]

Property::Property ( const Property a)
explicit

Copy constructor.

Parameters
aProperty to clone. Copy constructor.
aProperty to clone.

◆ Property() [2/10]

Property::Property ( const Nice::Any a)
explicit

Copy constructor.

Parameters
aProperty to clone.

◆ Property() [3/10]

Property::Property ( const char *  value,
const Nice::Date _date = Nice::Date::now() 
)
explicit

Constructor for const char* type.

Parameters
valueValue.

◆ Property() [4/10]

template<typename Type >
Property::Property ( const Type value,
const Nice::Date _date = Nice::Date::now() 
)
explicit

Template constructor for any type.

Parameters
valueValue of type T.

◆ Property() [5/10]

template<typename Type >
Property::Property ( const std::string &  value,
const Nice::Date _date = Nice::Date::now() 
)
explicit

Constructor for string type.

Parameters
valueString value.

◆ ~Property() [1/2]

Property::~Property ( )

Destructor.

◆ Property() [6/10]

Nice::Property::Property ( const Property a)
explicit

Copy constructor.

Parameters
aProperty to clone. Copy constructor.
aProperty to clone.

◆ Property() [7/10]

Nice::Property::Property ( const Nice::Any a)
explicit

Copy constructor.

Parameters
aProperty to clone.

◆ Property() [8/10]

Nice::Property::Property ( const char *  value,
const Nice::Date = Nice::Date::now() 
)
explicit

Constructor for const char* type.

Parameters
valueValue.

◆ Property() [9/10]

template<typename Type >
Nice::Property::Property ( const Type value,
const Nice::Date = Nice::Date::now() 
)
explicit

Template constructor for any type.

Parameters
valueValue of type T.

◆ Property() [10/10]

template<typename Type >
Nice::Property::Property ( const std::string &  value,
const Nice::Date = Nice::Date::now() 
)
explicit

Constructor for string type.

Parameters
valueString value.

◆ ~Property() [2/2]

Nice::Property::~Property ( )

Destructor.

Member Function Documentation

◆ actor() [1/4]

Nice::PropertyActorPtr Property::actor ( const std::string &  _name = "") const

Get the Actor assigned to this Property.

Returns
The Actor of type T.

◆ actor() [2/4]

Nice::PropertyActorPtr Nice::Property::actor ( const std::string &  _name = "") const

Get the Actor assigned to this Property.

Returns
The Actor of type T.

◆ actor() [3/4]

template<typename Type >
const IceUtil::Handle<Type>& Nice::Property::actor ( const std::string &  _name = "")
inline

Get the Actor assigned to this Property.

Returns
The Actor of type T.

◆ actor() [4/4]

template<typename Type >
const IceUtil::Handle<Type>& Nice::Property::actor ( const std::string &  _name = "")
inline

Get the Actor assigned to this Property.

Returns
The Actor of type T.

◆ actorList() [1/2]

const std::list<Nice::PropertyActorPtr>& Nice::Property::actorList ( )
inline

Return actor list applied to this property.

Returns
The Actor of type T.

◆ actorList() [2/2]

const std::list<Nice::PropertyActorPtr>& Nice::Property::actorList ( )
inline

Return actor list applied to this property.

Returns
The Actor of type T.

◆ applyActor() [1/2]

void Nice::Property::applyActor ( const Nice::PropertyActorPtr _actor)

Applys a Actor to the Property.

Parameters
_actorActor to apply. This Actors PropertyActor::process() function is called when this Property value is about to change.

◆ applyActor() [2/2]

void Property::applyActor ( const Nice::PropertyActorPtr _actor)

Applys a Actor to the Property.

Parameters
_actorActor to apply. This Actors PropertyActor::process() function is called when this Property value is about to change.

◆ applyAttribute() [1/7]

template<typename Type >
Nice::PropertyPtr Property::applyAttribute ( const std::string &  _key,
const Type _attr,
const Nice::Date _date 
)

◆ applyAttribute() [2/7]

Nice::PropertyPtr Property::applyAttribute ( const std::string &  _key,
const PropertyPtr _attr 
)

Apply an Attribute to the Property.

Parameters
_attrAttribute applied as an Property.

◆ applyAttribute() [3/7]

PropertyPtr Nice::Property::applyAttribute ( const std::string &  _key,
const PropertyPtr _attr 
)

Apply an Attribute to the Property.

Parameters
_attrAttribute applied as an Property.

◆ applyAttribute() [4/7]

Nice::PropertyPtr Property::applyAttribute ( const std::string &  _key,
const char *  _attr 
)

Apply an Attribute to the Property.

Parameters
_attrAttribute applied as an Property.

◆ applyAttribute() [5/7]

PropertyPtr Nice::Property::applyAttribute ( const std::string &  _key,
const char *  _attr 
)

Apply an Attribute to the Property.

Parameters
_attrAttribute applied as an Property.

◆ applyAttribute() [6/7]

template<typename Type >
PropertyPtr Nice::Property::applyAttribute ( const std::string &  _key,
const Type _attr,
const Nice::Date = Nice::Date::now() 
)

Apply an Attribute of Type to the Property.

Parameters
_attrAttribute applied as an Type.

◆ applyAttribute() [7/7]

template<typename Type >
PropertyPtr Nice::Property::applyAttribute ( const std::string &  _key,
const Type _attr,
const Nice::Date = Nice::Date::now() 
)

Apply an Attribute of Type to the Property.

Parameters
_attrAttribute applied as an Type.

◆ applyBridge() [1/2]

void Property::applyBridge ( const Nice::PropertyBridgePtr _bridge,
const std::string &  _name = std::string() 
)

Applies a new Bridge derived from Nice::PropertyBridge to this Property.

Parameters
_bridgeBridge to apply to this Property.
_nameName of the Bridge ICE_BRIDGE/QT_BRIDGE.

◆ applyBridge() [2/2]

void Nice::Property::applyBridge ( const Nice::PropertyBridgePtr _bridge,
const std::string &  _name = std::string() 
)

Applies a new Bridge derived from Nice::PropertyBridge to this Property.

Parameters
_bridgeBridge to apply to this Property.
_nameName of the Bridge ICE_BRIDGE/QT_BRIDGE.

◆ attribute() [1/2]

Nice::PropertyPtr Property::attribute ( const std::string &  _key) const

Get the Attribute assigned to this Property.

Returns
The Actor of type T.

◆ attribute() [2/2]

PropertyPtr Nice::Property::attribute ( const std::string &  _key) const

Get the Attribute assigned to this Property.

Returns
The Actor of type T.

◆ attributeMap() [1/2]

const std::map<std::string, PropertyPtr>& Nice::Property::attributeMap ( )
inline

Return actor list applied to this property.

Returns
The Actor of type T.

◆ attributeMap() [2/2]

const std::map<std::string, PropertyPtr>& Nice::Property::attributeMap ( )
inline

Return actor list applied to this property.

Returns
The Actor of type T.

◆ change() [1/20]

template<typename TypeClass >
Nice::CompletionState Nice::Property::change ( void(TypeClass::*)()  _memfun,
const Nice::Date _date = Nice::Date::now() 
)
inline

Change property throough member function.

Parameters
_vValue to assign.

◆ change() [2/20]

template<typename TypeClass >
Nice::CompletionState Nice::Property::change ( void(TypeClass::*)()  _memfun,
const Nice::Date _date = Nice::Date::now() 
)
inline

Change property throough member function.

Parameters
_vValue to assign.

◆ change() [3/20]

template<typename TypeClass >
Nice::CompletionState Nice::Property::change ( void(TypeClass::*)()  _memfun,
Nice::I64  _setterId,
const Nice::Date _date = Nice::Date::now() 
)
inline

Change property throough member function.

Parameters
_vValue to assign.

◆ change() [4/20]

template<typename TypeClass >
Nice::CompletionState Nice::Property::change ( void(TypeClass::*)()  _memfun,
Nice::I64  _setterId,
const Nice::Date _date = Nice::Date::now() 
)
inline

Change property throough member function.

Parameters
_vValue to assign.

◆ change() [5/20]

template<typename TypeClass , typename Type1 >
Nice::CompletionState Nice::Property::change ( void(TypeClass::*)(Type1)  _memfun,
Type1  _v1,
const Nice::Date _date = Nice::Date::now() 
)
inline

Change property throough member function.

Parameters
_vValue to assign.

◆ change() [6/20]

template<typename TypeClass , typename Type1 >
Nice::CompletionState Nice::Property::change ( void(TypeClass::*)(Type1)  _memfun,
Type1  _v1,
const Nice::Date _date = Nice::Date::now() 
)
inline

Change property throough member function.

Parameters
_vValue to assign.

◆ change() [7/20]

template<typename TypeClass , typename Type1 >
Nice::CompletionState Nice::Property::change ( void(TypeClass::*)(const Type1 &)  _memfun,
Type1  _v1,
const Nice::Date _date = Nice::Date::now() 
)
inline

Change property throough member function.

Parameters
_vValue to assign.

◆ change() [8/20]

template<typename TypeClass , typename Type1 >
Nice::CompletionState Nice::Property::change ( void(TypeClass::*)(const Type1 &)  _memfun,
Type1  _v1,
const Nice::Date _date = Nice::Date::now() 
)
inline

Change property throough member function.

Parameters
_vValue to assign.

◆ change() [9/20]

template<typename TypeClass , typename Type1 >
Nice::CompletionState Nice::Property::change ( void(TypeClass::*)(Type1)  _memfun,
Type1  _v1,
Nice::I64  _setterId,
const Nice::Date _date = Nice::Date::now() 
)
inline

Change property throough member function.

Parameters
_vValue to assign.

◆ change() [10/20]

template<typename TypeClass , typename Type1 >
Nice::CompletionState Nice::Property::change ( void(TypeClass::*)(Type1)  _memfun,
Type1  _v1,
Nice::I64  _setterId,
const Nice::Date _date = Nice::Date::now() 
)
inline

Change property throough member function.

Parameters
_vValue to assign.

◆ change() [11/20]

template<typename TypeClass , typename Type1 >
Nice::CompletionState Nice::Property::change ( void(TypeClass::*)(const Type1 &)  _memfun,
Type1  _v1,
Nice::I64  _setterId,
const Nice::Date _date = Nice::Date::now() 
)
inline

Change property throough member function.

Parameters
_vValue to assign.

◆ change() [12/20]

template<typename TypeClass , typename Type1 >
Nice::CompletionState Nice::Property::change ( void(TypeClass::*)(const Type1 &)  _memfun,
Type1  _v1,
Nice::I64  _setterId,
const Nice::Date _date = Nice::Date::now() 
)
inline

Change property throough member function.

Parameters
_vValue to assign.

◆ change() [13/20]

template<typename TypeClass , typename Type1 , typename TypeMemFn >
Nice::CompletionState Nice::Property::change ( TypeMemFn  _memfun,
Type1  _v1,
const Nice::Date _date = Nice::Date::now() 
)
inline

Change property throough member function.

Parameters
_vValue to assign.

◆ change() [14/20]

template<typename TypeClass , typename Type1 , typename TypeMemFn >
Nice::CompletionState Nice::Property::change ( TypeMemFn  _memfun,
Type1  _v1,
const Nice::Date _date = Nice::Date::now() 
)
inline

Change property throough member function.

Parameters
_vValue to assign.

◆ change() [15/20]

template<typename TypeClass , typename Type1 , typename TypeMemFn >
Nice::CompletionState Nice::Property::change ( TypeMemFn  _memfun,
Type1  _v1,
Nice::I64  _setterId,
const Nice::Date _date = Nice::Date::now() 
)
inline

Change property throough member function.

Parameters
_vValue to assign.

◆ change() [16/20]

template<typename TypeClass , typename Type1 , typename TypeMemFn >
Nice::CompletionState Nice::Property::change ( TypeMemFn  _memfun,
Type1  _v1,
Nice::I64  _setterId,
const Nice::Date _date = Nice::Date::now() 
)
inline

Change property throough member function.

Parameters
_vValue to assign.

◆ change() [17/20]

template<typename TypeClass , typename Type1 , typename Type2 , typename TypeMemFn >
Nice::CompletionState Nice::Property::change ( TypeMemFn  _memfun,
Type1  _v1,
Type2  _v2,
const Nice::Date _date = Nice::Date::now() 
)
inline

Change property throough member function.

Parameters
_vValue to assign.

◆ change() [18/20]

template<typename TypeClass , typename Type1 , typename Type2 , typename TypeMemFn >
Nice::CompletionState Nice::Property::change ( TypeMemFn  _memfun,
Type1  _v1,
Type2  _v2,
const Nice::Date _date = Nice::Date::now() 
)
inline

Change property throough member function.

Parameters
_vValue to assign.

◆ change() [19/20]

template<typename TypeClass , typename Type1 , typename Type2 , typename TypeMemFn >
Nice::CompletionState Nice::Property::change ( TypeMemFn  _memfun,
Type1  _v1,
Type2  _v2,
Nice::I64  _setterId,
const Nice::Date _date = Nice::Date::now() 
)
inline

Change property throough member function.

Parameters
_vValue to assign.

◆ change() [20/20]

template<typename TypeClass , typename Type1 , typename Type2 , typename TypeMemFn >
Nice::CompletionState Nice::Property::change ( TypeMemFn  _memfun,
Type1  _v1,
Type2  _v2,
Nice::I64  _setterId,
const Nice::Date _date = Nice::Date::now() 
)
inline

Change property throough member function.

Parameters
_vValue to assign.

◆ emitSignals() [1/2]

void Property::emitSignals ( Nice::CompletionState  _cs,
Nice::I64  _setterId 
)

Whenever the Property value has changed all connected Properties have to be informed ans synchronized.

The emitSignals() function calls all applied Bridges to send the new value.

◆ emitSignals() [2/2]

void Nice::Property::emitSignals ( Nice::CompletionState  _cs,
Nice::I64  _setterId 
)

Whenever the Property value has changed all connected Properties have to be informed ans synchronized.

The emitSignals() function calls all applied Bridges to send the new value.

◆ empty() [1/2]

bool Property::empty ( ) const

Check if the Property value is empty.

Returns
True, if Property is empty.

◆ empty() [2/2]

bool Nice::Property::empty ( ) const

Check if the Property value is empty.

Returns
True, if Property is empty.

◆ get() [1/5]

template<typename Type >
Type Property::get ( ) const

Get the Property value of type T.

Returns
Property value of type T.

◆ get() [2/5]

template<typename Type >
Type Nice::Property::get ( ) const

Get the Property value of type T.

Returns
Property value of type T.

◆ get() [3/5]

std::string Nice::Property::get ( ) const

Overloaded Property::get() function for strings.

Returns
Stringified Property value.

◆ get() [4/5]

Nice::Any Property::get ( ) const

◆ get() [5/5]

const Nice::Any & Property::get ( ) const

◆ getAttribute() [1/4]

const Nice::PropertyPtr & Property::getAttribute ( const std::string &  _key) const

Get the Attribute assigned to this Property.

Returns
The Actor of type T.

◆ getAttribute() [2/4]

const PropertyPtr& Nice::Property::getAttribute ( const std::string &  _key) const

Get the Attribute assigned to this Property.

Returns
The Actor of type T.

◆ getAttribute() [3/4]

template<typename Type >
Type Property::getAttribute ( const std::string &  _key)

Get the Attribute assigned to this Property.

Returns
The Actor of type T.

◆ getAttribute() [4/4]

template<typename Type >
template bool Property::getAttribute< bool > ( const std::string &  _key)

Get the Attribute assigned to this Property.

Returns
The Actor of type T.

◆ getAttributeWithDefault() [1/2]

template<typename Type >
Type Nice::Property::getAttributeWithDefault ( const std::string &  _key,
const Type _attr,
const Nice::Date = Nice::Date::now() 
)

Get the Attribute assigned to this Property.

Returns
The Actor of type T.

◆ getAttributeWithDefault() [2/2]

template<typename Type >
Type Property::getAttributeWithDefault ( const std::string &  _key,
const Type _attr,
const Nice::Date _date = Nice::Date::now() 
)

Get the Attribute assigned to this Property.

Returns
The Actor of type T.

◆ getBridge() [1/4]

Nice::PropertyBridgePtr Property::getBridge ( const std::string &  _name)

Get a Bridge from all assigned PropertyBridges of this Property.

Parameters
_nameName of the PropertyBridge to get.
Returns
Smart pointer of the requested PropertyBridge.

◆ getBridge() [2/4]

Nice::PropertyBridgePtr Nice::Property::getBridge ( const std::string &  _name)

Get a Bridge from all assigned PropertyBridges of this Property.

Parameters
_nameName of the PropertyBridge to get.
Returns
Smart pointer of the requested PropertyBridge.

◆ getBridge() [3/4]

template<typename BridgeType >
IceUtil::Handle<BridgeType> Nice::Property::getBridge ( const std::string &  _name)
inline

Get a Bridge of typename BridgeType.

Parameters
_nameName of the PropertyBridge to get.
Returns
Smart pointer of the requested PropertyBridge.

◆ getBridge() [4/4]

template<typename BridgeType >
IceUtil::Handle<BridgeType> Nice::Property::getBridge ( const std::string &  _name)
inline

Get a Bridge of typename BridgeType.

Parameters
_nameName of the PropertyBridge to get.
Returns
Smart pointer of the requested PropertyBridge.

◆ id() [1/2]

Nice::I64 Property::id ( )

Get the unique ID of this Property.

Returns
Unique ID.

◆ id() [2/2]

Nice::I64 Nice::Property::id ( )

Get the unique ID of this Property.

Returns
Unique ID.

◆ isType() [1/2]

template<typename Type >
template bool Property::isType< bool > ( )

Checks if Property is of type T.

Returns
True, if Property is of type T

◆ isType() [2/2]

template<typename Type >
bool Property::isType ( )

Checks if Property is of type T.

Returns
True, if Property is of type T

◆ mutex() [1/2]

Nice::Mutex& Nice::Property::mutex ( )
inline

Return the properties Mutex.

Returns
An Object of type Nice::Mutex.

◆ mutex() [2/2]

Nice::Mutex& Nice::Property::mutex ( )
inline

Return the properties Mutex.

Returns
An Object of type Nice::Mutex.

◆ operator std::string() [1/2]

template Property::operator std::string ( ) const

Casts a Property (value) to a string.

Returns
Stringified value.

◆ operator std::string() [2/2]

Nice::Property::operator std::string ( ) const

Casts a Property (value) to a string.

Returns
Stringified value.

◆ operator Type() [1/2]

template<typename Type >
Property::operator Type ( ) const

Cast a Property to a new type T.

Returns
An Object of type T.

◆ operator Type() [2/2]

template<typename Type >
Nice::Property::operator Type ( ) const

Cast a Property to a new type T.

Returns
An Object of type T.

◆ operator=() [1/7]

template<typename Type >
Nice::Property & Property::operator= ( const Type _v)

◆ operator=() [2/7]

Nice::Property & Property::operator= ( const char *  r)

Assignment operator assigns a const char* to the Property.

Parameters
rValue to assign to.
Returns
Reference to this.

◆ operator=() [3/7]

Property& Nice::Property::operator= ( const char *  r)

Assignment operator assigns a const char* to the Property.

Parameters
rValue to assign to.
Returns
Reference to this.

◆ operator=() [4/7]

template<typename Type >
Property& Nice::Property::operator= ( const Type _v)

Assignment operator assigns a value of type T to the Property.

Parameters
_vValue of type T to assign to this Property.
Returns
Reference to this.

◆ operator=() [5/7]

template<typename Type >
Property& Nice::Property::operator= ( const Type _v)

Assignment operator assigns a value of type T to the Property.

Parameters
_vValue of type T to assign to this Property.
Returns
Reference to this.

◆ operator=() [6/7]

Property& Nice::Property::operator= ( Property r)

Assignment operator assigns a value of a Property to this Property.

Parameters
rProperty which value will be assigned to this Property.
Returns
Reference to this.

◆ operator=() [7/7]

Nice::Property & Property::operator= ( Property r)

Assignment operator assigns a value of a Property to this Property.

Parameters
rProperty which value will be assigned to this Property.
Returns
Reference to this.

◆ operator==() [1/6]

bool Property::operator== ( const char *  _value)

Equal operator compares the value of a property to a const char*.

Parameters
_valueValue to compare to.
Returns
True, if value of Property is equal _value.

◆ operator==() [2/6]

bool Nice::Property::operator== ( const char *  _value)

Equal operator compares the value of a property to a const char*.

Parameters
_valueValue to compare to.
Returns
True, if value of Property is equal _value.

◆ operator==() [3/6]

template<typename E >
bool Property::operator== ( const E &  _value)

Equal operator compares the value of a property to a type E.

Parameters
_valueValue of type E.
Returns
True, if the value of the property can be compared to a value of type E and is equal to it.

◆ operator==() [4/6]

template<typename E >
bool Nice::Property::operator== ( const E &  _value)

Equal operator compares the value of a property to a type E.

Parameters
_valueValue of type E.
Returns
True, if the value of the property can be compared to a value of type E and is equal to it.

◆ operator==() [5/6]

bool Nice::Property::operator== ( const Property _value)

Equal operator compares two Properties.

It compares not just the value, but if the two Property instances are equal.

Parameters
_valueProperty to compare to.
Returns
True, if both Property instances are identical.

◆ operator==() [6/6]

bool Property::operator== ( const Property _value)

Equal operator compares two Properties.

It compares not just the value, but if the two Property instances are equal.

Parameters
_valueProperty to compare to.
Returns
True, if both Property instances are identical.

◆ ref() [1/2]

template<typename Type >
template bool & Property::ref< bool > ( )

Get a const reference of the Property value of type T, type T must be exactly the one inside the property, otherwise it throws an exception!

Returns
reference to Property value of type T.

◆ ref() [2/2]

template<typename Type >
Type & Property::ref ( )

Get a const reference of the Property value of type T, type T must be exactly the one inside the property, otherwise it throws an exception!

Returns
reference to Property value of type T.

◆ removeActor() [1/2]

void Property::removeActor ( const std::string &  _name = "")

Removes an Actor to the Property.

Parameters
_actorActor to remove.

◆ removeActor() [2/2]

void Nice::Property::removeActor ( const std::string &  _name = "")

Removes an Actor to the Property.

Parameters
_actorActor to remove.

◆ removeAttribute() [1/2]

void Property::removeAttribute ( const std::string &  _attr = "")

Removes a Property Attribute.

Parameters
_attrAttribute to remove. If _attr is empty all Attributes will be removed.

◆ removeAttribute() [2/2]

void Nice::Property::removeAttribute ( const std::string &  _attr = "")

Removes a Property Attribute.

Parameters
_attrAttribute to remove. If _attr is empty all Attributes will be removed.

◆ removeBridge() [1/2]

void Property::removeBridge ( const std::string &  _bridge = "")

Removes a new Bridge derived from Nice::PropertyBridge to this Property.

Parameters
_nameName of the Bridge ICE_BRIDGE/QT_BRIDGE. If _bridge is empty all Bridges will be removed.

◆ removeBridge() [2/2]

void Nice::Property::removeBridge ( const std::string &  _bridge = "")

Removes a new Bridge derived from Nice::PropertyBridge to this Property.

Parameters
_nameName of the Bridge ICE_BRIDGE/QT_BRIDGE. If _bridge is empty all Bridges will be removed.

◆ set() [1/8]

Nice::CompletionState Property::set ( const char *  _v,
const Nice::Date _date = Nice::Date::now() 
)

Assigns a const char* to this Property.

Parameters
_vValue to assign.

◆ set() [2/8]

Nice::CompletionState Nice::Property::set ( const char *  _v,
const Nice::Date = Nice::Date::now() 
)

Assigns a const char* to this Property.

Parameters
_vValue to assign.

◆ set() [3/8]

Nice::CompletionState Property::set ( const char *  _v,
Nice::I64  _setterId,
const Nice::Date _date = Nice::Date::now() 
)

Assigns a const char* to this Property.

Parameters
_vValue to assign.

◆ set() [4/8]

Nice::CompletionState Nice::Property::set ( const char *  _v,
Nice::I64  _setterId,
const Nice::Date = Nice::Date::now() 
)

Assigns a const char* to this Property.

Parameters
_vValue to assign.

◆ set() [5/8]

template<typename Type >
Nice::CompletionState Nice::Property::set ( const Type _v,
const Nice::Date _date = Nice::Date::now() 
)
inline

Assigns a value of type T to this Property.

Parameters
_vValue to assign.

◆ set() [6/8]

template<typename Type >
Nice::CompletionState Nice::Property::set ( const Type _v,
const Nice::Date _date = Nice::Date::now() 
)
inline

Assigns a value of type T to this Property.

Parameters
_vValue to assign.

◆ set() [7/8]

template<typename Type >
Nice::CompletionState Property::set ( const Type _v,
Nice::I64  _setterId,
const Nice::Date _date = Nice::Date::now() 
)

Assigns a value of type T to this Property.

◆ set() [8/8]

template<typename Type >
Nice::CompletionState Nice::Property::set ( const Type _v,
Nice::I64  _setterId,
const Nice::Date _date = Nice::Date::now() 
)

Assigns a value of type T to this Property.

◆ setAttribute() [1/2]

template<typename Type >
void Nice::Property::setAttribute ( const std::string &  _key,
const Type _attr,
const Nice::Date = Nice::Date::now() 
)

Apply an Attribute of Type to the Property.

Parameters
_attrAttribute applied as an Type.

◆ setAttribute() [2/2]

template<typename Type >
void Property::setAttribute ( const std::string &  _key,
const Type _attr,
const Nice::Date _date = Nice::Date::now() 
)

Apply an Attribute of Type to the Property.

Parameters
_attrAttribute applied as an Type.

◆ swap() [1/2]

Nice::Property & Property::swap ( Nice::Property r)

Swap the content of two Properties.

Parameters
rProperty to swap to.
Returns
Swapped Property.

◆ swap() [2/2]

Property& Nice::Property::swap ( Property r)

Swap the content of two Properties.

Parameters
rProperty to swap to.
Returns
Swapped Property.

◆ timestamp() [1/2]

const Nice::Date& Nice::Property::timestamp ( ) const
inline

timestamp of last set.

Returns
Nice::Date.

◆ timestamp() [2/2]

const Nice::Date& Nice::Property::timestamp ( ) const
inline

timestamp of last set.

Returns
Nice::Date.

◆ toString() [1/2]

std::string Nice::Property::toString ( ) const

Cast the Property value to a string.

Returns
Stringified Property.

◆ toString() [2/2]

std::string Property::toString ( ) const

Cast the Property value to a string.

Returns
Stringified Property.

◆ toStringFull() [1/2]

std::string Nice::Property::toStringFull ( ) const

Cast the Property value to a string with all its Attributes, Bridges and Actors.

Returns
Stringified Property.

◆ toStringFull() [2/2]

std::string Property::toStringFull ( ) const

Cast the Property value to a string with all its Attributes, Bridges and Actors.

Returns
Stringified Property.

◆ typeString() [1/2]

std::string Property::typeString ( ) const

Get the stringified Property type.

Returns
Stringified Property type

◆ typeString() [2/2]

std::string Nice::Property::typeString ( ) const

Get the stringified Property type.

Returns
Stringified Property type

Friends And Related Function Documentation

◆ Nice::PropertyActor

Member Data Documentation

◆ m_actors

PropertyActorList Property::m_actors
protected

Actors. The process function is called any time the Property::set() function is called

◆ m_attrs

PropertyAttrMap Property::m_attrs
protected

Attribute. Property parameters

◆ m_bridges

PropertyBridgeMap Property::m_bridges
protected

Map which holds all PropertyBridges

◆ m_foo

Nice::PropertyFooPtr Property::m_foo
protected

Data container

◆ m_id

Nice::I64 Property::m_id
protected

Unique ID

◆ m_mutex

Nice::Mutex Property::m_mutex
protected

Mutex

◆ m_seq

Nice::U64 Property::m_seq
protected

◆ m_timestamp

Nice::Date Property::m_timestamp
protected

Datestamp last set


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