Tulip  6.0.0
Large graphs analysis and drawing
tlp::VectorPropertyInterface Class Referenceabstract

#include <PropertyInterface.h>

+ Inheritance diagram for tlp::VectorPropertyInterface:
+ Collaboration diagram for tlp::VectorPropertyInterface:

Public Member Functions

virtual bool setEdgeStringValueAsVector (const edge e, const std::string &value, char openChar='(', char sepChar=',', char closeChar=')')=0
 
virtual bool setEdgeStringValueAsVector (const edge e, const std::vector< std::string > &values)=0
 
virtual bool setNodeStringValueAsVector (const node n, const std::string &value, char openChar='(', char sepChar=',', char closeChar=')')=0
 
virtual bool setNodeStringValueAsVector (const node n, const std::vector< std::string > &values)=0
 
virtual bool tokenize (const std::string &str, std::vector< std::string > &vect, char openChar='(', char sepChar=',', char closeChar=')')=0
 
- Public Member Functions inherited from tlp::PropertyInterface
virtual PropertyInterfaceclonePrototype (Graph *graph, const std::string &name) const =0
 
virtual int compare (const edge e1, const edge e2) const =0
 
virtual int compare (const node n1, const node n2) const =0
 
virtual void computeMetaValue (edge metaEdge, tlp::Iterator< edge > *it, Graph *metaGraph)=0
 
virtual void computeMetaValue (node metaNode, Graph *subgraph, Graph *metaGraph)=0
 
virtual bool copy (const edge destination, const edge source, PropertyInterface *property, bool ifNotDefault=false)=0
 
virtual bool copy (const node destination, const node source, PropertyInterface *property, bool ifNotDefault=false)=0
 
virtual void copy (PropertyInterface *source)=0
 
virtual unsigned int edgeValueSize () const =0
 
virtual void erase (const edge)=0
 
virtual void erase (const node)=0
 
virtual const std::string & getCppClassName () const =0
 
virtual DataMem * getEdgeDataMemValue (const edge e) const =0
 
virtual DataMem * getEdgeDefaultDataMemValue () const =0
 
virtual std::string getEdgeDefaultStringValue () const =0
 
virtual std::string getEdgeStringValue (const edge e) const =0
 
tlp::GraphgetGraph () const
 
MetaValueCalculatorgetMetaValueCalculator ()
 
const std::string & getName () const
 
virtual DataMem * getNodeDataMemValue (const node n) const =0
 
virtual DataMem * getNodeDefaultDataMemValue () const =0
 
virtual std::string getNodeDefaultStringValue () const =0
 
virtual std::string getNodeStringValue (const node n) const =0
 
virtual DataMem * getNonDefaultDataMemValue (const edge e) const =0
 
virtual DataMem * getNonDefaultDataMemValue (const node n) const =0
 
virtual tlp::Iterator< edge > * getNonDefaultValuatedEdges (const Graph *=nullptr) const =0
 
virtual tlp::Iterator< node > * getNonDefaultValuatedNodes (const Graph *=nullptr) const =0
 
virtual const std::string & getTypename () const =0
 
virtual bool hasNonDefaultValuatedEdges (const Graph *=nullptr) const =0
 
virtual bool hasNonDefaultValuatedNodes (const Graph *=nullptr) const =0
 
virtual unsigned int nodeValueSize () const =0
 
virtual unsigned int numberOfNonDefaultValuatedEdges (const Graph *=nullptr) const =0
 
virtual unsigned int numberOfNonDefaultValuatedNodes (const Graph *=nullptr) const =0
 
constexpr edgeStringValueRef operator[] (edge e)
 
std::string operator[] (edge e) const
 
constexpr nodeStringValueRef operator[] (node n)
 
virtual bool readEdgeDefaultValue (std::istream &)=0
 
virtual bool readEdgeValue (std::istream &, edge)=0
 
virtual bool readNodeDefaultValue (std::istream &)=0
 
virtual bool readNodeValue (std::istream &, node)=0
 
bool rename (const std::string &newName)
 
virtual void setAllEdgeDataMemValue (const DataMem *v)=0
 
virtual bool setAllEdgeStringValue (const std::string &value)=0
 
virtual void setAllNodeDataMemValue (const DataMem *value)=0
 
virtual bool setAllNodeStringValue (const std::string &value)=0
 
virtual void setEdgeDataMemValue (const edge e, const DataMem *v)=0
 
virtual bool setEdgeDefaultStringValue (const std::string &value)=0
 
virtual bool setEdgeStringValue (const edge e, const std::string &value)=0
 
virtual void setMetaValueCalculator (MetaValueCalculator *calculator)
 
virtual void setNodeDataMemValue (const node n, const DataMem *value)=0
 
virtual bool setNodeDefaultStringValue (const std::string &value)=0
 
virtual bool setNodeStringValue (const node n, const std::string &value)=0
 
virtual bool setStringValueToGraphEdges (const std::string &value, const Graph *graph)=0
 
virtual bool setStringValueToGraphNodes (const std::string &value, const Graph *graph)=0
 
virtual void writeEdgeDefaultValue (std::ostream &) const =0
 
virtual void writeEdgeValue (std::ostream &, edge) const =0
 
virtual void writeNodeDefaultValue (std::ostream &) const =0
 
virtual void writeNodeValue (std::ostream &, node) const =0
 
- Public Member Functions inherited from tlp::Observable
void addListener (Observable &listener) const
 
void addListener (Observable *const listener) const
 
void addObserver (Observable &observer) 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 &listener) const
 
void removeListener (Observable *const listener) const
 
void removeObserver (Observable &observer) const
 
void removeObserver (Observable *const observer) const
 

Additional Inherited Members

- Static Public Member Functions inherited from tlp::Observable
static void disableEventNotification ()
 
static void enableEventNotification ()
 
static tlp::node getNode (const tlp::Observable *obs)
 
static ObservablegetObject (tlp::node n)
 
static const tlp::VectorGraph & getObservableGraph ()
 
static unsigned int getScheduled (tlp::node n)
 
static void holdObservers ()
 
static bool isAlive (tlp::node n)
 
static unsigned int observersHoldCounter ()
 
static void unholdObservers ()
 
- Protected Member Functions inherited from tlp::PropertyInterface
void notifyAfterSetAllEdgeValue ()
 
void notifyAfterSetAllNodeValue ()
 
void notifyAfterSetEdgeValue (const edge e)
 
void notifyAfterSetNodeValue (const node n)
 
void notifyBeforeSetAllEdgeValue ()
 
void notifyBeforeSetAllNodeValue ()
 
void notifyBeforeSetEdgeValue (const edge e)
 
void notifyBeforeSetNodeValue (const node n)
 
void notifyDestroy ()
 
void notifyRename (const std::string &newName)
 
- Protected Member Functions inherited from tlp::Observable
 Observable (const Observable &)
 
bool hasOnlookers () const
 
void observableDeleted ()
 
Observableoperator= (const Observable &)
 
void sendEvent (const Event &message)
 
virtual void treatEvent (const Event &message)
 
virtual void treatEvents (const std::vector< Event > &events)
 
- Protected Attributes inherited from tlp::PropertyInterface
Graphgraph
 
MetaValueCalculatormetaValueCalculator
 
std::string name
 

Detailed Description

VectorPropertyInterface describes the interface of a graph property whose holded value is a vector (std::vector)

Definition at line 727 of file PropertyInterface.h.

Member Function Documentation

◆ setEdgeStringValueAsVector() [1/2]

virtual bool tlp::VectorPropertyInterface::setEdgeStringValueAsVector ( const edge  e,
const std::string &  value,
char  openChar = '(',
char  sepChar = ',',
char  closeChar = ')' 
)
pure virtual

Sets a new vector represented by the string parameter as the edge value.

Parameters
eThe edge on which to set value on.
valueA string listing the elements of the vector to set on the edge.
openCharan optional character opening the list of elements. Default value is '('; when set to '\0' it indicates that there is no opening character.
sepCharan optional character separating the elements of the list. Default value is ','.
closeCharan optional character closing the list of elements. Default value is ')'; when set to '\0' it indicates that there is no opening character.
Returns
Whether the string was a correct representation for this property's type. If not, the value is not set.

◆ setEdgeStringValueAsVector() [2/2]

virtual bool tlp::VectorPropertyInterface::setEdgeStringValueAsVector ( const edge  e,
const std::vector< std::string > &  values 
)
pure virtual

Sets a new vector represented by the vector of string parameter as the edge value.

Parameters
eThe edge on which to set the new value.
valuesA vector of strings listing the string representations of elements of the vector to set on the edge.
Returns
Whether the vector was a correct representation for this property's type. If not, the value is not set.

◆ setNodeStringValueAsVector() [1/2]

virtual bool tlp::VectorPropertyInterface::setNodeStringValueAsVector ( const node  n,
const std::string &  value,
char  openChar = '(',
char  sepChar = ',',
char  closeChar = ')' 
)
pure virtual

Sets a new vector represented by the string parameter as the node value.

Parameters
nThe node on which to set the new value.
valueA string listing the elements of the vector to set on the node.
openCharan optional character opening the list of elements. Default value is '('; when set to '\0' it indicates that there is no opening character.
sepCharan optional character separating the elements of the list. Default value is ','.
closeCharan optional character closing the list of elements. Default value is ')'; when set to '\0' it indicates that there is no opening character.
Returns
Whether the string was a correct representation for this property's type. If not, the value is not set.

◆ setNodeStringValueAsVector() [2/2]

virtual bool tlp::VectorPropertyInterface::setNodeStringValueAsVector ( const node  n,
const std::vector< std::string > &  values 
)
pure virtual

Sets a new vector represented by the vector of string parameter as the node value.

Parameters
nThe node on which to set the new value.
valuesA vector of strings listing the string representations of elements of the vector to set on the node.
Returns
Whether the vector was a correct representation for this property's type. If not, the value is not set.

◆ tokenize()

virtual bool tlp::VectorPropertyInterface::tokenize ( const std::string &  str,
std::vector< std::string > &  vect,
char  openChar = '(',
char  sepChar = ',',
char  closeChar = ')' 
)
pure virtual

split an input string into a vector of strings

Parameters
strA string listing the elements of the vector to set on a node/edge.
vectAn output vector containing the string elements
openCharan optional character opening the list of elements. Default value is '('; when set to '\0' it indicates that there is no opening character.
sepCharan optional character separating the elements of the list. Default value is ','.
closeCharan optional character closing the list of elements. Default value is ')'; when set to '\0' it indicates that there is no opening character.
Returns
Whether the string was a correct representation for this property's type.