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(
const Graph *sg =
nullptr);
44 Size getMin(
const Graph *sg =
nullptr);
45 void scale(
const tlp::Vector<float, 3> &,
const Graph *sg =
nullptr);
50 static const std::string propertyTypename;
51 const std::string &getTypename()
const override {
52 return propertyTypename;
56 void setNodeValue(
const node n, tlp::StoredType<Size>::ReturnedConstValue v)
override;
57 void setAllNodeValue(tlp::StoredType<Size>::ReturnedConstValue v)
override;
58 void setValueToGraphNodes(tlp::StoredType<Size>::ReturnedConstValue v,
59 const Graph *graph)
override;
61 int compare(
const node n1,
const node n2)
const override;
63 _DEPRECATED
void setAllNodeValue(tlp::StoredType<Size>::ReturnedConstValue v,
64 const Graph *graph)
override;
70 TLP_HASH_MAP<unsigned int, Size> max, min;
71 TLP_HASH_MAP<unsigned int, bool> minMaxOk;
72 void computeMinMax(
const Graph *sg =
nullptr);
80 :
public AbstractVectorProperty<tlp::SizeVectorType, tlp::SizeType> {
83 : AbstractVectorProperty<SizeVectorType, SizeType>(g, n) {}
87 static const std::string propertyTypename;
88 const std::string &getTypename()
const override {
89 return propertyTypename;
Interface for Tulip iterators. Allows basic iteration operations only.
PropertyInterface describes the interface of a graph property.
The node struct represents a node in a Graph object.
A graph property that maps a tlp::Size value to graph elements.
A graph property that maps a std::vector<tlp::Size> value to graph elements.