Tulip  4.0.0
Better Visualization Through Research
 All Classes Files Functions Variables Enumerations Enumerator Properties Groups Pages
tlp::DoubleProperty Class Reference

#include <DoubleProperty.h>

Inherits tlp::MinMaxProperty< nodeType, edgeType >.

Public Types

enum  PredefinedMetaValueCalculator {
  NO_CALC = 0, AVG_CALC = 1, SUM_CALC = 2, MAX_CALC = 3,
  MIN_CALC = 4
}
 

Public Member Functions

 DoubleProperty (Graph *, std::string n="")
 
virtual void clone_handler (AbstractProperty< tlp::DoubleType, tlp::DoubleType > &)
 
PropertyInterfaceclonePrototype (Graph *, const std::string &)
 
void edgesUniformQuantification (unsigned int)
 
std::string getTypename () const
 
void nodesUniformQuantification (unsigned int)
 
virtual void setAllEdgeValue (const double &v)
 
virtual void setAllNodeValue (const double &v)
 
virtual void setEdgeValue (const edge e, const double &v)
 
virtual void setMetaValueCalculator (PropertyInterface::MetaValueCalculator *calc)
 
void setMetaValueCalculator (PredefinedMetaValueCalculator nodeCalc=AVG_CALC, PredefinedMetaValueCalculator edgeCalc=AVG_CALC)
 
virtual void setNodeValue (const node n, const double &v)
 
void uniformQuantification (unsigned int)
 
- Public Member Functions inherited from tlp::MinMaxProperty< nodeType, edgeType >
 MinMaxProperty (tlp::Graph *graph, std::string name, typename nodeType::RealType NodeMin, typename nodeType::RealType NodeMax, typename edgeType::RealType EdgeMin, typename edgeType::RealType EdgeMax)
 
edgeType::RealType getEdgeMax (Graph *graph=NULL)
 
edgeType::RealType getEdgeMin (Graph *graph=NULL)
 
nodeType::RealType getNodeMax (Graph *graph=NULL)
 
nodeType::RealType getNodeMin (Graph *graph=NULL)
 
void updateAllEdgesValues (typename edgeType::RealType newValue)
 
void updateAllNodesValues (typename nodeType::RealType newValue)
 
template<>
void updateEdgeValue (tlp::edge e, tlp::LineType::RealType newValue)
 
void updateEdgeValue (tlp::edge e, typename edgeType::RealType newValue)
 
void updateNodeValue (tlp::node n, typename nodeType::RealType newValue)
 
- Public Member Functions inherited from tlp::AbstractProperty< nodeType, edgeType >
 AbstractProperty (Graph *, 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 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
 
edgeType::RealType getEdgeDefaultValue () const
 
virtual std::string getEdgeStringValue (const edge e) const
 
tlp::StoredType< typename
edgeType::RealType >
::ReturnedConstValue 
getEdgeValue (const edge e) const
 
virtual DataMem * getNodeDataMemValue (const node n) const
 
virtual DataMem * getNodeDefaultDataMemValue () const
 
virtual std::string getNodeDefaultStringValue () const
 
nodeType::RealType getNodeDefaultValue () const
 
virtual std::string getNodeStringValue (const node n) const
 
tlp::StoredType< typename
nodeType::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 AbstractProperty
< nodeType, edgeType > & 
operator= (AbstractProperty< nodeType, edgeType > &prop)
 
virtual void setAllEdgeDataMemValue (const DataMem *v)
 
virtual bool setAllEdgeStringValue (const std::string &inV)
 
virtual void setAllEdgeValue (const typename edgeType::RealType &v)
 
virtual void setAllNodeDataMemValue (const DataMem *v)
 
virtual bool setAllNodeStringValue (const std::string &inV)
 
virtual void setAllNodeValue (const typename nodeType::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 edgeType::RealType &v)
 
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 nodeType::RealType &v)
 
- Public Member Functions inherited from tlp::PropertyInterface
void addPropertyObserver (Observable *pObs)
 
tlp::GraphgetGraph () const
 
MetaValueCalculatorgetMetaValueCalculator ()
 
const std::string & getName () const
 
void removePropertyObserver (Observable *pObs)
 
- Public Member Functions inherited from tlp::Observable
void addListener (Observable *const listener) const
 
void addObserver (Observable *const observer) const
 
unsigned int countListeners () const
 
unsigned int countObservers () const
 
unsigned int getReceived () const
 
unsigned int getSent () const
 
void removeListener (Observable *const listener) const
 
void removeObserver (Observable *const observerver) const
 

Static Public Attributes

static const std::string propertyTypename
 

Additional Inherited Members

- Static Public Member Functions inherited from tlp::Observable
static ObservablegetObject (tlp::node n)
 
static const tlp::VectorGraph & getObservableGraph ()
 
static void holdObservers ()
 
static bool isAlive (tlp::node n)
 
static unsigned int observersHoldCounter ()
 
static void unholdObservers ()
 
- Protected Member Functions inherited from tlp::MinMaxProperty< nodeType, edgeType >
void computeMinMaxEdge (Graph *graph)
 
template<>
void computeMinMaxNode (Graph *sg)
 
void computeMinMaxNode (Graph *graph)
 
- Protected Attributes inherited from tlp::MinMaxProperty< nodeType, edgeType >
edgeType::RealType _edgeMax
 
edgeType::RealType _edgeMin
 
nodeType::RealType _nodeMax
 
nodeType::RealType _nodeMin
 
TLP_HASH_MAP< unsigned int, bool > edgeValueUptodate
 
TLP_HASH_MAP< unsigned int,
typename edgeType::RealType > 
maxEdge
 
TLP_HASH_MAP< unsigned int,
typename nodeType::RealType > 
maxNode
 
TLP_HASH_MAP< unsigned int,
typename edgeType::RealType > 
minEdge
 
TLP_HASH_MAP< unsigned int,
typename nodeType::RealType > 
minNode
 
TLP_HASH_MAP< unsigned int, bool > nodeValueUptodate
 

Detailed Description

A graph property that maps a double value to graph elements.

Definition at line 39 of file DoubleProperty.h.

Member Function Documentation

PropertyInterface* tlp::DoubleProperty::clonePrototype ( Graph graph,
const std::string &  name 
)
virtual

Creates a property of the same type (e.g. tlp::DoubleProperty) in the graph. The new property will not contain a copy of this property's values.

Parameters
graphThe Graph in which to create the new property.
nameThe name of the new property.
Returns
The newly created property.

Implements tlp::PropertyInterface.

std::string tlp::DoubleProperty::getTypename ( ) const
inlinevirtual

Gets a string describing the type of the property (e.g. "graph", "double", "layout", "string", "integer", "color", "size").

Returns
The name of this property's type.

Implements tlp::PropertyInterface.

Definition at line 50 of file DoubleProperty.h.

virtual void tlp::DoubleProperty::setMetaValueCalculator ( PropertyInterface::MetaValueCalculator calculator)
virtual

Sets the Calculator for meta nodes and edges.

Parameters
calculatorThe object containing the logic for computing the meta values for the nodes and edges.
Warning
The ownership of the MetaValueCalculator is not taken by the property.

Reimplemented from tlp::AbstractProperty< nodeType, edgeType >.