20 #ifndef NUMERICPROPERTY_H 
   21 #define NUMERICPROPERTY_H 
   23 #include <tulip/PropertyInterface.h> 
  102     nodesUniformQuantification(k);
 
  103     edgesUniformQuantification(k);
 
  141                                                       bool ascendingOrder = 
true);
 
  152                                                       bool ascendingOrder = 
true);
 
  165                                                             bool ascendingOrder = 
true);
 
Interface all numerical properties. Property values are always returned as double.
 
virtual void edgesUniformQuantification(unsigned int)=0
computes a uniform quantification for the edges associated values
 
virtual double getEdgeDoubleValue(const edge e) const =0
Returns the value associated with the edge e in this property.
 
virtual Iterator< node > * getSortedNodes(const Graph *sg=nullptr, bool ascendingOrder=true)
Gets an iterator sorting nodes according to their values in that numeric property.
 
virtual Iterator< edge > * getSortedEdgesByExtremitiesValues(const Graph *sg=nullptr, bool ascendingOrder=true)
Gets an iterator sorting edges according to the values of their extremities in that numeric property....
 
virtual double getEdgeDoubleMin(const Graph *graph=nullptr)=0
Gets the minimum value on the edges.
 
virtual double getEdgeDoubleMax(const Graph *graph=nullptr)=0
Gets the maximum value on the edges.
 
virtual double getEdgeDoubleDefaultValue() const =0
Gets the default edge value of the property.
 
virtual double getNodeDoubleDefaultValue() const =0
Gets the default node value of the property.
 
virtual double getNodeDoubleValue(const node n) const =0
Returns the value associated with the node n in this property.
 
void uniformQuantification(unsigned int k)
computes a uniform quantification for the nodes/edges associated values
 
virtual double getNodeDoubleMax(const Graph *graph=nullptr)=0
Gets the maximum value on the nodes.
 
virtual void nodesUniformQuantification(unsigned int)=0
computes a uniform quantification for the nodes associated values
 
virtual double getNodeDoubleMin(const Graph *graph=nullptr)=0
Gets the minimum value on the nodes.
 
virtual Iterator< edge > * getSortedEdges(const Graph *sg=nullptr, bool ascendingOrder=true)
Gets an iterator sorting edges according to their values in that numeric property.
 
virtual NumericProperty * copyProperty(Graph *graph)=0
Creates a property of the same type (e.g. tlp::DoubleProperty) The new property will be a copy of thi...
 
virtual Iterator< edge > * getSortedEdgesByTargetValue(const Graph *sg=nullptr, bool ascendingOrder=true)
Gets an iterator sorting edges according to the values of their target nodes in that numeric property...
 
virtual Iterator< edge > * getSortedEdgesBySourceValue(const Graph *sg=nullptr, bool ascendingOrder=true)
Gets an iterator sorting edges according to the values of their source nodes in that numeric property...
 
PropertyInterface describes the interface of a graph property.
 
Interface for Tulip iterators. Allows basic iteration operations only.
 
The edge struct represents an edge in a Graph object.
 
The node struct represents a node in a Graph object.