23 #include <tulip/tuliphash.h>
24 #include <tulip/PropertyTypes.h>
25 #include <tulip/AbstractProperty.h>
26 #include <tulip/PropertyAlgorithm.h>
30 class PropertyContext;
32 typedef AbstractProperty<tlp::SizeType, tlp::SizeType> AbstractSizeProperty;
43 Size getMax(
Graph *sg=NULL);
44 Size getMin(
Graph *sg=NULL);
45 void scale(
const tlp::Vector<float,3>&,
Graph *sg=NULL );
46 void scale(
const tlp::Vector<float,3>&, Iterator<node> *, Iterator<edge> *);
50 static const std::string propertyTypename;
51 std::string getTypename()
const {
52 return propertyTypename;
57 virtual void setNodeValue(
const node n,
const Size &v);
58 virtual void setAllNodeValue(
const Size &v);
60 int compare(
const node n1,
const node n2)
const;
66 TLP_HASH_MAP<unsigned int, Size> max,min;
67 TLP_HASH_MAP<unsigned int, bool> minMaxOk;
68 void computeMinMax(
Graph * sg=NULL);
75 class TLP_SCOPE
SizeVectorProperty:
public AbstractVectorProperty<tlp::SizeVectorType, tlp::SizeType> {
81 static const std::string propertyTypename;
82 std::string getTypename()
const {
83 return propertyTypename;