tlp::AbstractProperty< Tnode, Tedge, TPROPERTY > Class Template Reference
[Properties]
#include <AbstractProperty.h>
Inherits tlp::PropertyInterface.
List of all members.
Public Member Functions
- AbstractProperty (Graph *)
- Tnode::RealType getNodeDefaultValue ()
- Tedge::RealType getEdgeDefaultValue ()
- ReturnType< typename
Tnode::RealType >::Value getNodeValue (const node n)
- ReturnType< typename
Tedge::RealType >::Value getEdgeValue (const edge e)
- void setNodeValue (const node n, const typename Tnode::RealType &v)
- void setEdgeValue (const edge e, const typename Tedge::RealType &v)
- void setAllNodeValue (const typename Tnode::RealType &v)
- void setAllEdgeValue (const typename Tedge::RealType &v)
- virtual void erase (const node n)
- virtual void erase (const edge e)
- virtual AbstractProperty
< Tnode, Tedge, TPROPERTY > & operator= (AbstractProperty< Tnode, Tedge, TPROPERTY > &prop)
- bool compute (const std::string &algorithm, std::string &msg, const PropertyContext &)
- virtual std::string getTypename ()
- virtual std::string getNodeDefaultStringValue ()
- virtual std::string getEdgeDefaultStringValue ()
- virtual std::string getNodeStringValue (const node n)
- virtual std::string getEdgeStringValue (const edge e)
- virtual bool setNodeStringValue (const node n, const std::string &v)
- virtual bool setEdgeStringValue (const edge e, const std::string &v)
- virtual bool setAllNodeStringValue (const std::string &v)
- virtual bool setAllEdgeStringValue (const std::string &v)
- virtual Iterator< node > * getNonDefaultValuatedNodes ()
- virtual Iterator< edge > * getNonDefaultValuatedEdges ()
- virtual DataMem * getNodeDefaultDataMemValue ()
- virtual DataMem * getEdgeDefaultDataMemValue ()
- virtual DataMem * getNodeDataMemValue (const node n)
- virtual DataMem * getEdgeDataMemValue (const edge e)
- virtual DataMem * getNonDefaultDataMemValue (const node n)
- virtual DataMem * getNonDefaultDataMemValue (const edge e)
- virtual void setNodeDataMemValue (const node n, const DataMem *v)
- virtual void setEdgeDataMemValue (const edge e, const DataMem *v)
- virtual void setAllNodeDataMemValue (const DataMem *v)
- virtual void setAllEdgeDataMemValue (const DataMem *v)
Static Public Member Functions
Static Public Attributes
Protected Member Functions
Protected Attributes
Friends
Detailed Description
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
class tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >
This class is used to store a property of a graph. A property is a couple of two functions:
- One from the set of nodes to a set of Tnode value
- One from the set of edges to a set of Tedge value
A AbstractProperty can be connected or not to a PropertyAlgorithm. In the first case it can be seen as buffer beetween the property and the user. In the second case it is only a memory area for storing data. A AbstractProperty is an observable, so it can be observed by others objects.
Constructor & Destructor Documentation
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
Member Function Documentation
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
Enable to clone part of sub_class.
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
virtual std::string tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::getEdgeDefaultStringValue |
( |
|
) |
[virtual] |
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
Returns the edge default value of the property proxy warnning: If the type is a pointer it can produce big memory leak if the user doesn't manage the memory himself
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
Returns the value associated to the node n in this property. If the value is already fixed it is done in constant time. else if it is a computed property (plug-in), it calls the associated property If there is no value and no algorithms it returns the default value depending of the type.
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
virtual std::string tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::getNodeDefaultStringValue |
( |
|
) |
[virtual] |
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
Returns the node default value of the property proxy warnning: If the type is a pointer it can produce big memory leak if the user doesn't manage the memory himself
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
Returns the value associated to the node n in this property. If the value is already fixed it is done in constant time. else if it is a computed property (plug-in), it calls the associated property If there is no value and no algorithms it returns the default value depending of the type.
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
virtual bool tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::setAllEdgeStringValue |
( |
const std::string & |
v |
) |
[virtual] |
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
void tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::setAllEdgeValue |
( |
const typename Tedge::RealType & |
v |
) |
|
Set the value of all edges and notify the observers
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
virtual bool tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::setAllNodeStringValue |
( |
const std::string & |
v |
) |
[virtual] |
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
void tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::setAllNodeValue |
( |
const typename Tnode::RealType & |
v |
) |
|
Set the value of all nodes and notify the observers
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
virtual bool tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::setEdgeStringValue |
( |
const edge |
e, |
|
|
const std::string & |
v | |
|
) |
| | [virtual] |
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
Set the value of an edge and notify the observers of a modification. Warning : When using computed property (plug-in), if one sets the value of a edge e, the plug-in won't be call for e.
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
virtual bool tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::setNodeStringValue |
( |
const node |
n, |
|
|
const std::string & |
v | |
|
) |
| | [virtual] |
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
Set the value of a node n and notify the observers of a modification. Warning : When using computed property (plug-in), if one sets the value of a node n, the plug-in won't be call for n.
Friends And Related Function Documentation
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
friend class GraphView [friend] |
Member Data Documentation
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
|