Tulip
4.6.0
Better Visualization Through Research
|
#include <AbstractProperty.h>
Classes | |
class | MetaValueCalculator |
This class is used to delegate the computation of the values associated to meta nodes or edges. More... | |
Public Member Functions | |
AbstractProperty (Graph *, const std::string &n="") | |
int | compare (const node n1, const node n2) const |
int | compare (const edge e1, const edge e2) const |
virtual void | computeMetaValue (node n, Graph *sg, Graph *mg) |
virtual void | computeMetaValue (edge e, tlp::Iterator< edge > *itE, Graph *mg) |
virtual bool | copy (const node destination, const node source, PropertyInterface *property, bool ifNotDefault=false) |
virtual bool | copy (const edge destination, const edge source, PropertyInterface *property, bool ifNotDefault=false) |
virtual void | copy (PropertyInterface *property) |
virtual unsigned int | edgeValueSize () const |
virtual void | erase (const node n) |
virtual void | erase (const edge e) |
virtual DataMem * | getEdgeDataMemValue (const edge e) const |
virtual DataMem * | getEdgeDefaultDataMemValue () const |
virtual std::string | getEdgeDefaultStringValue () const |
virtual Tedge::RealType | getEdgeDefaultValue () const |
virtual std::string | getEdgeStringValue (const edge e) const |
virtual tlp::StoredType < typename Tedge::RealType > ::ReturnedConstValue | getEdgeValue (const edge e) const |
virtual DataMem * | getNodeDataMemValue (const node n) const |
virtual DataMem * | getNodeDefaultDataMemValue () const |
virtual std::string | getNodeDefaultStringValue () const |
virtual Tnode::RealType | getNodeDefaultValue () const |
virtual std::string | getNodeStringValue (const node n) const |
virtual tlp::StoredType < typename Tnode::RealType > ::ReturnedConstValue | getNodeValue (const node n) const |
virtual DataMem * | getNonDefaultDataMemValue (const node n) const |
virtual DataMem * | getNonDefaultDataMemValue (const edge e) const |
virtual tlp::Iterator< edge > * | getNonDefaultValuatedEdges (const Graph *g=NULL) const |
virtual tlp::Iterator< node > * | getNonDefaultValuatedNodes (const Graph *g=NULL) const |
virtual unsigned int | nodeValueSize () const |
virtual unsigned int | numberOfNonDefaultValuatedEdges () const |
virtual unsigned int | numberOfNonDefaultValuatedNodes () const |
virtual AbstractProperty < Tnode, Tedge, Tprop > & | operator= (AbstractProperty< Tnode, Tedge, Tprop > &prop) |
virtual bool | readEdgeDefaultValue (std::istream &) |
virtual bool | readEdgeValue (std::istream &, edge) |
virtual bool | readNodeDefaultValue (std::istream &) |
virtual bool | readNodeValue (std::istream &, node) |
virtual void | setAllEdgeDataMemValue (const DataMem *v) |
virtual bool | setAllEdgeStringValue (const std::string &inV) |
virtual void | setAllEdgeValue (const typename Tedge::RealType &v) |
virtual void | setAllNodeDataMemValue (const DataMem *v) |
virtual bool | setAllNodeStringValue (const std::string &inV) |
virtual void | setAllNodeValue (const typename Tnode::RealType &v) |
virtual void | setEdgeDataMemValue (const edge e, const DataMem *v) |
virtual bool | setEdgeStringValue (const edge inE, const std::string &inV) |
virtual void | setEdgeValue (const edge e, const typename Tedge::RealType &v) |
virtual void | setMetaValueCalculator (PropertyInterface::MetaValueCalculator *mvCalc) |
virtual void | setNodeDataMemValue (const node n, const DataMem *v) |
virtual bool | setNodeStringValue (const node inN, const std::string &inV) |
virtual void | setNodeValue (const node n, const typename Tnode::RealType &v) |
virtual void | writeEdgeDefaultValue (std::ostream &) const |
virtual void | writeEdgeValue (std::ostream &, edge) const |
virtual void | writeNodeDefaultValue (std::ostream &) const |
virtual void | writeNodeValue (std::ostream &, node) const |
Protected Member Functions | |
virtual void | clone_handler (AbstractProperty< Tnode, Tedge, Tprop > &) |
Protected Attributes | |
Tedge::RealType | edgeDefaultValue |
MutableContainer< typename Tedge::RealType > | edgeProperties |
Tnode::RealType | nodeDefaultValue |
MutableContainer< typename Tnode::RealType > | nodeProperties |
Friends | |
class | Graph |
class | GraphView |
This class extends upon PropertyInterface, and adds type-safe methods to get and set the node and edge values, through the magic of template programming.
Nodes and Edges can have different types (e.g. tlp::LayoutProperty has tlp::PointType as node type and tlp::LineType as edge type), but most of the time they have the same type (e.g. tlp::DoubleProperty, tlp::IntegerProperty).
Some of the pure virtual functions of PropertyInterface are implemented in this class (e.g. erase()).
The actual data is stored in this class, and it manages the default values.
Definition at line 54 of file AbstractProperty.h.
virtual void tlp::AbstractProperty< Tnode, Tedge, Tprop >::clone_handler | ( | AbstractProperty< Tnode, Tedge, Tprop > & | ) | [inline, protected, virtual] |
Enable to clone part of sub_class.
Definition at line 413 of file AbstractProperty.h.
virtual void tlp::AbstractProperty< Tnode, Tedge, Tprop >::erase | ( | const node | n | ) | [inline, virtual] |
Resets the value of a node to the default value.
n | The node to reset the value of. |
Definition at line 130 of file AbstractProperty.h.
virtual void tlp::AbstractProperty< Tnode, Tedge, Tprop >::erase | ( | const edge | e | ) | [inline, virtual] |
Resets the value of an edge to the default value.
e | The edge to reset the value of. |
Definition at line 141 of file AbstractProperty.h.
Tedge::RealType tlp::AbstractProperty< Tnode, Tedge, Tprop >::getEdgeDefaultValue | ( | ) | const [virtual] |
Gets the default edge value of the property.
Definition at line 38 of file AbstractProperty.cxx.
tlp::StoredType< typename Tedge::RealType >::ReturnedConstValue tlp::AbstractProperty< Tnode, Tedge, Tprop >::getEdgeValue | ( | const edge | e | ) | const [virtual] |
Returns the value associated to the edge e in this property. If there is no value, it returns the default edge value.
e | The edge for which we want to get the value of the property. |
Definition at line 49 of file AbstractProperty.cxx.
Tnode::RealType tlp::AbstractProperty< Tnode, Tedge, Tprop >::getNodeDefaultValue | ( | ) | const [virtual] |
Gets the default node value of the property.
Definition at line 33 of file AbstractProperty.cxx.
tlp::StoredType< typename Tnode::RealType >::ReturnedConstValue tlp::AbstractProperty< Tnode, Tedge, Tprop >::getNodeValue | ( | const node | n | ) | const [virtual] |
Returns the value associated with the node n in this property. If there is no value, it returns the default node value.
n | The node for which we want to get the value of the property. |
Definition at line 43 of file AbstractProperty.cxx.
virtual AbstractProperty<Tnode,Tedge,Tprop>& tlp::AbstractProperty< Tnode, Tedge, Tprop >::operator= | ( | AbstractProperty< Tnode, Tedge, Tprop > & | prop | ) | [inline, virtual] |
This operator overload allows to copy a property using the following syntax :
IntegerProperty* shape = graph->getProperty<IntegerProperty>("viewShape"); IntegerProperty* backup = graph->getProperty<IntegerProperty>("shapeBackup"); *backup = *shape; // all the values from 'shape' will be copied into 'backup'.
prop | The property nto copy the values from. |
Definition at line 156 of file AbstractProperty.h.
void tlp::AbstractProperty< Tnode, Tedge, Tprop >::setAllEdgeValue | ( | const typename Tedge::RealType & | v | ) | [virtual] |
Sets the value of all edges and notify the observers.
v | The value to set to all edges. |
Definition at line 79 of file AbstractProperty.cxx.
void tlp::AbstractProperty< Tnode, Tedge, Tprop >::setAllNodeValue | ( | const typename Tnode::RealType & | v | ) | [virtual] |
Sets the value of all nodes and notify the observers.
v | The value to set to all nodes. |
Definition at line 71 of file AbstractProperty.cxx.
void tlp::AbstractProperty< Tnode, Tedge, Tprop >::setEdgeValue | ( | const edge | e, |
const typename Tedge::RealType & | v | ||
) | [virtual] |
Set the value of an edge and notify the observers of a modification.
e | The edge to set the value of. |
v | The value to affect for this edge. |
Definition at line 63 of file AbstractProperty.cxx.
void tlp::AbstractProperty< Tnode, Tedge, Tprop >::setNodeValue | ( | const node | n, |
const typename Tnode::RealType & | v | ||
) | [virtual] |
Sets the value of a node and notify the observers of a modification.
n | The node to set the value of. |
v | The value to affect for this node. |
Definition at line 55 of file AbstractProperty.cxx.