Tulip
5.2.1
Large graphs analysis and drawing
|
#include <AbstractProperty.h>
Classes | |
class | MetaValueCalculator |
Public Member Functions | |
AbstractProperty (Graph *, const std::string &n="") | |
int | compare (const node n1, const node n2) const override |
int | compare (const edge e1, const edge e2) const override |
void | computeMetaValue (node n, Graph *sg, Graph *mg) override |
void | computeMetaValue (edge e, tlp::Iterator< edge > *itE, Graph *mg) override |
bool | copy (const node destination, const node source, PropertyInterface *property, bool ifNotDefault=false) override |
bool | copy (const edge destination, const edge source, PropertyInterface *property, bool ifNotDefault=false) override |
void | copy (PropertyInterface *property) override |
unsigned int | edgeValueSize () const override |
void | erase (const node n) override |
void | erase (const edge e) override |
DataMem * | getEdgeDataMemValue (const edge e) const override |
DataMem * | getEdgeDefaultDataMemValue () const override |
std::string | getEdgeDefaultStringValue () const override |
Tedge::RealType | getEdgeDefaultValue () const |
virtual tlp::Iterator< edge > * | getEdgesEqualTo (typename tlp::StoredType< typename Tedge::RealType >::ReturnedConstValue v, const Graph *g=nullptr) const |
std::string | getEdgeStringValue (const edge e) const override |
tlp::StoredType< typename Tedge::RealType >::ReturnedConstValue | getEdgeValue (const edge e) const |
DataMem * | getNodeDataMemValue (const node n) const override |
DataMem * | getNodeDefaultDataMemValue () const override |
std::string | getNodeDefaultStringValue () const override |
Tnode::RealType | getNodeDefaultValue () const |
virtual tlp::Iterator< node > * | getNodesEqualTo (typename tlp::StoredType< typename Tnode::RealType >::ReturnedConstValue v, const Graph *g=nullptr) const |
std::string | getNodeStringValue (const node n) const override |
tlp::StoredType< typename Tnode::RealType >::ReturnedConstValue | getNodeValue (const node n) const |
DataMem * | getNonDefaultDataMemValue (const node n) const override |
DataMem * | getNonDefaultDataMemValue (const edge e) const override |
tlp::Iterator< edge > * | getNonDefaultValuatedEdges (const Graph *g=nullptr) const override |
tlp::Iterator< node > * | getNonDefaultValuatedNodes (const Graph *g=nullptr) const override |
bool | hasNonDefaultValuatedEdges (const Graph *g=nullptr) const override |
bool | hasNonDefaultValuatedNodes (const Graph *g=nullptr) const override |
unsigned int | nodeValueSize () const override |
unsigned int | numberOfNonDefaultValuatedEdges (const Graph *=nullptr) const override |
unsigned int | numberOfNonDefaultValuatedNodes (const Graph *g=nullptr) const override |
virtual AbstractProperty< Tnode, Tedge, Tprop > & | operator= (AbstractProperty< Tnode, Tedge, Tprop > &prop) |
bool | readEdgeDefaultValue (std::istream &) override |
bool | readEdgeValue (std::istream &, edge) override |
bool | readNodeDefaultValue (std::istream &) override |
bool | readNodeValue (std::istream &, node) override |
void | setAllEdgeDataMemValue (const DataMem *v) override |
bool | setAllEdgeStringValue (const std::string &inV) override |
bool | setAllEdgeStringValue (const std::string &inV, const Graph *graph) override |
virtual void | setAllEdgeValue (typename tlp::StoredType< typename Tedge::RealType >::ReturnedConstValue v) |
virtual void | setAllEdgeValue (typename tlp::StoredType< typename Tedge::RealType >::ReturnedConstValue v, const Graph *graph) |
void | setAllNodeDataMemValue (const DataMem *v) override |
bool | setAllNodeStringValue (const std::string &inV) override |
bool | setAllNodeStringValue (const std::string &inV, const Graph *graph) override |
virtual void | setAllNodeValue (typename tlp::StoredType< typename Tnode::RealType >::ReturnedConstValue v) |
virtual void | setAllNodeValue (typename tlp::StoredType< typename Tnode::RealType >::ReturnedConstValue v, const Graph *graph) |
void | setEdgeDataMemValue (const edge e, const DataMem *v) override |
bool | setEdgeDefaultStringValue (const std::string &inV) override |
virtual void | setEdgeDefaultValue (typename tlp::StoredType< typename Tedge::RealType >::ReturnedConstValue v) |
bool | setEdgeStringValue (const edge inE, const std::string &inV) override |
virtual void | setEdgeValue (const edge e, typename tlp::StoredType< typename Tedge::RealType >::ReturnedConstValue v) |
void | setMetaValueCalculator (PropertyInterface::MetaValueCalculator *mvCalc) override |
void | setNodeDataMemValue (const node n, const DataMem *v) override |
bool | setNodeDefaultStringValue (const std::string &inV) override |
virtual void | setNodeDefaultValue (typename tlp::StoredType< typename Tnode::RealType >::ReturnedConstValue v) |
bool | setNodeStringValue (const node inN, const std::string &inV) override |
virtual void | setNodeValue (const node n, typename tlp::StoredType< typename Tnode::RealType >::ReturnedConstValue v) |
bool | setStringValueToGraphEdges (const std::string &inV, const Graph *graph) override |
bool | setStringValueToGraphNodes (const std::string &inV, const Graph *graph) override |
virtual void | setValueToGraphEdges (typename tlp::StoredType< typename Tedge::RealType >::ReturnedConstValue v, const Graph *graph) |
virtual void | setValueToGraphNodes (typename tlp::StoredType< typename Tnode::RealType >::ReturnedConstValue v, const Graph *graph) |
void | writeEdgeDefaultValue (std::ostream &) const override |
void | writeEdgeValue (std::ostream &, edge) const override |
void | writeNodeDefaultValue (std::ostream &) const override |
void | writeNodeValue (std::ostream &, node) const override |
Protected Member Functions | |
virtual void | clone_handler (AbstractProperty< Tnode, Tedge, Tprop > &) |
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 56 of file AbstractProperty.h.
|
inlineprotectedvirtual |
Enable to clone part of sub_class.
Definition at line 596 of file AbstractProperty.h.
|
inlineoverride |
Resets the value of a node to the default value.
n | The node to reset the value of. |
Definition at line 276 of file AbstractProperty.h.
|
inlineoverride |
Resets the value of an edge to the default value.
e | The edge to reset the value of. |
Definition at line 287 of file AbstractProperty.h.
|
inline |
Gets the default edge value of the property.
Definition at line 41 of file AbstractProperty.cxx.
|
virtual |
Returns an iterator through all edges belonging to g whose associated value is equal to val. If g is nullptr, the graph given when creating the property is considered.
Definition at line 78 of file AbstractProperty.cxx.
|
inline |
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 54 of file AbstractProperty.cxx.
|
inline |
Gets the default node value of the property.
Definition at line 35 of file AbstractProperty.cxx.
|
virtual |
Returns an iterator through all nodes belonging to g whose associated value is equal to val. If g is nullptr, the graph given when creating the property is considered.
Definition at line 60 of file AbstractProperty.cxx.
|
inline |
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 47 of file AbstractProperty.cxx.
|
inlinevirtual |
This operator overload allows to copy a property using the following syntax :
prop | The property to copy the values from. |
Definition at line 303 of file AbstractProperty.h.
|
virtual |
Sets the value of all edges and notify the observers. All previous values are lost and the given value is assigned as the default one to the future added edges.
v | The value to set to all edges. |
Definition at line 220 of file AbstractProperty.cxx.
|
virtual |
Sets the value of all edges in a graph and notify the observers. Only the edges from that graph will have their value modified in the property and the default edge value will not be modified.
v | The value to set to all edges. |
graph | A graph that defines the set of edges |
Definition at line 229 of file AbstractProperty.cxx.
|
virtual |
Sets the value of all nodes and notify the observers. All previous values are lost and the given value is assigned as the default one to the future added nodes.
v | The value to set to all nodes. |
Definition at line 114 of file AbstractProperty.cxx.
|
virtual |
Sets the value of all nodes in a graph and notify the observers. Only the nodes from that graph will have their value modified in the property and the default node value will not be modified.
v | The value to set to all nodes. |
graph | A graph that defines the set of nodes |
Definition at line 163 of file AbstractProperty.cxx.
|
virtual |
Sets the value assigned as the default one to the future added edges.
value | the new value to set on future added edges. |
Definition at line 179 of file AbstractProperty.cxx.
|
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 105 of file AbstractProperty.cxx.
|
virtual |
Sets the value assigned as the default one to the future added nodes.
v | the new value to set on future added nodes. |
Definition at line 123 of file AbstractProperty.cxx.
|
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 96 of file AbstractProperty.cxx.
|
virtual |
Sets the value of all edges in a graph and notify the observers. Only the edges from that graph will have their value modified in the property and the default edge value will not be modified.
v | The value to set to all edges. |
graph | A graph on which to modify |
Definition at line 235 of file AbstractProperty.cxx.
|
virtual |
Sets the value of all nodes in a graph and notify the observers. Only the nodes from that graph will have their value modified in the property and the default node value will not be modified.
v | The value to set to all nodes. |
graph | A graph that defines the set of nodes |
Definition at line 169 of file AbstractProperty.cxx.