20 #ifndef TULIP_STRING_H
21 #define TULIP_STRING_H
23 #include <tulip/PropertyTypes.h>
24 #include <tulip/AbstractProperty.h>
28 class PropertyContext;
30 typedef AbstractProperty<tlp::StringType, tlp::StringType> AbstractStringProperty;
42 static const std::string propertyTypename;
43 const std::string& getTypename()
const {
44 return propertyTypename;
47 virtual unsigned int nodeValueSize()
const {
50 virtual unsigned int edgeValueSize()
const {
53 int compare(
const node n1,
const node n2)
const;
54 int compare(
const edge e1,
const edge e2)
const;
61 class TLP_SCOPE
StringVectorProperty:
public AbstractVectorProperty<tlp::StringVectorType, tlp::StringType> {
63 StringVectorProperty(
Graph *g,
const std::string& n=
""):AbstractVectorProperty<StringVectorType, tlp::StringType>(g, n) {}
67 static const std::string propertyTypename;
68 const std::string& getTypename()
const {
69 return propertyTypename;
72 virtual unsigned int nodeValueSize()
const {
75 virtual unsigned int edgeValueSize()
const {
This class extends upon PropertyInterface, and adds type-safe methods to get and set the node and edg...
PropertyInterface describes the interface of a graph property.
A graph property that maps a std::vector<std::string> value to graph elements.
The edge struct represents an edge in a Graph object.
The node struct represents a node in a Graph object.
A graph property that maps a std::string value to graph elements.