Provided by: tulip-doc_3.1.2-2.3ubuntu3_all bug

NAME

       tlp::AbstractProperty -

SYNOPSIS

       #include <AbstractProperty.h>

       Inherits tlp::PropertyInterface.

   Public Member Functions
       AbstractProperty (Graph *)
       Tnode::RealType getNodeDefaultValue ()
       Tedge::RealType getEdgeDefaultValue ()
       ReturnType< typename Tnode::RealType >::Value getNodeValue (const node n)
       ReturnType< typename Tedge::RealType >::Value getEdgeValue (const edge e)
       void setNodeValue (const node n, const typename Tnode::RealType &v)
       void setEdgeValue (const edge e, const typename Tedge::RealType &v)
       void setAllNodeValue (const typename Tnode::RealType &v)
       void setAllEdgeValue (const typename Tedge::RealType &v)
       virtual void erase (const node n)
       virtual void erase (const edge e)
       virtual AbstractProperty< Tnode, Tedge, TPROPERTY > & operator= (AbstractProperty< Tnode,
           Tedge, TPROPERTY > &prop)
       bool compute (const std::string &algorithm, std::string &msg, const PropertyContext &)
       virtual std::string getTypename ()
       virtual std::string getNodeDefaultStringValue ()
       virtual std::string getEdgeDefaultStringValue ()
       virtual std::string getNodeStringValue (const node n)
       virtual std::string getEdgeStringValue (const edge e)
       virtual bool setNodeStringValue (const node n, const std::string &v)
       virtual bool setEdgeStringValue (const edge e, const std::string &v)
       virtual bool setAllNodeStringValue (const std::string &v)
       virtual bool setAllEdgeStringValue (const std::string &v)
       virtual Iterator< node > * getNonDefaultValuatedNodes ()
       virtual Iterator< edge > * getNonDefaultValuatedEdges ()
       virtual DataMem * getNodeDefaultDataMemValue ()
       virtual DataMem * getEdgeDefaultDataMemValue ()
       virtual DataMem * getNodeDataMemValue (const node n)
       virtual DataMem * getEdgeDataMemValue (const edge e)
       virtual DataMem * getNonDefaultDataMemValue (const node n)
       virtual DataMem * getNonDefaultDataMemValue (const edge e)
       virtual void setNodeDataMemValue (const node n, const DataMem *v)
       virtual void setEdgeDataMemValue (const edge e, const DataMem *v)
       virtual void setAllNodeDataMemValue (const DataMem *v)
       virtual void setAllEdgeDataMemValue (const DataMem *v)

   Static Public Member Functions
       static void initFactory ()

   Static Public Attributes
       static TLP_SCOPE TemplateFactory< PropertyFactory< TPROPERTY >, TPROPERTY, PropertyContext
           > * factory

   Protected Member Functions
       virtual void clone_handler (AbstractProperty< Tnode, Tedge, TPROPERTY > &)
           Enable to clone part of sub_class.

   Protected Attributes
       MutableContainer< typename Tnode::RealType > nodeProperties
       MutableContainer< typename Tedge::RealType > edgeProperties
       Graph * graph
       bool circularCall
       Tnode::RealType nodeDefaultValue
       Tedge::RealType edgeDefaultValue

   Friends
       class GraphView

Detailed Description

   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>class
       tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >
       This class is used to store a property of a graph. A property is a couple of two
       functions:

       · One from the set of nodes to a set of Tnode value

       · One from the set of edges to a set of Tedge value

       A AbstractProperty can be connected or not to a PropertyAlgorithm. In the first case it
       can be seen as buffer beetween the property and the user. In the second case it is only a
       memory area for storing data. A AbstractProperty is an observable, so it can be observed
       by others objects.

Constructor & Destructor Documentation

   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> tlp::AbstractProperty<
       Tnode, Tedge, TPROPERTY >::AbstractProperty (Graph *)

Member Function Documentation

   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> virtual void
       tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::clone_handler (AbstractProperty< Tnode,
       Tedge, TPROPERTY > &) [inline, protected, virtual]
       Enable to clone part of sub_class.

   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> bool
       tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::compute (const std::string &algorithm,
       std::string &msg, const PropertyContext &)
   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> virtual void
       tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::erase (const edgee) [virtual]
       Implements tlp::PropertyInterface.

   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> virtual void
       tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::erase (const noden) [virtual]
       Implements tlp::PropertyInterface.

   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> virtual DataMem*
       tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::getEdgeDataMemValue (const edgee)
       [virtual]
       Implements tlp::PropertyInterface.

   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> virtual DataMem*
       tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::getEdgeDefaultDataMemValue () [virtual]
       Implements tlp::PropertyInterface.

   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> virtual std::string
       tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::getEdgeDefaultStringValue () [virtual]
       Implements tlp::PropertyInterface.

   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> Tedge::RealType
       tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::getEdgeDefaultValue () Returns the edge
       default value of the property proxy warnning: If the type is a pointer it can produce big
       memory leak if the user doesn't manage the memory himself
   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> virtual std::string
       tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::getEdgeStringValue (const edgee)
       [virtual]
       Implements tlp::PropertyInterface.

   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> ReturnType<typename
       Tedge::RealType>::Value tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::getEdgeValue
       (const edgee) Returns the value associated to the node n in this property. If the value is
       already fixed it is done in constant time. else if it is a computed property (plug-in), it
       calls the associated property If there is no value and no algorithms it returns the
       default value depending of the type.
   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> virtual DataMem*
       tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::getNodeDataMemValue (const noden)
       [virtual]
       Implements tlp::PropertyInterface.

   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> virtual DataMem*
       tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::getNodeDefaultDataMemValue () [virtual]
       Implements tlp::PropertyInterface.

   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> virtual std::string
       tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::getNodeDefaultStringValue () [virtual]
       Implements tlp::PropertyInterface.

   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> Tnode::RealType
       tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::getNodeDefaultValue () Returns the node
       default value of the property proxy warnning: If the type is a pointer it can produce big
       memory leak if the user doesn't manage the memory himself
   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> virtual std::string
       tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::getNodeStringValue (const noden)
       [virtual]
       Implements tlp::PropertyInterface.

   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> ReturnType<typename
       Tnode::RealType>::Value tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::getNodeValue
       (const noden) Returns the value associated to the node n in this property. If the value is
       already fixed it is done in constant time. else if it is a computed property (plug-in), it
       calls the associated property If there is no value and no algorithms it returns the
       default value depending of the type.
   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> virtual DataMem*
       tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::getNonDefaultDataMemValue (const noden)
       [virtual]
       Implements tlp::PropertyInterface.

   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> virtual DataMem*
       tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::getNonDefaultDataMemValue (const edgee)
       [virtual]
       Implements tlp::PropertyInterface.

   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> virtual
       Iterator<edge>* tlp::AbstractProperty< Tnode, Tedge, TPROPERTY
       >::getNonDefaultValuatedEdges () [virtual]
       Implements tlp::PropertyInterface.

   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> virtual
       Iterator<node>* tlp::AbstractProperty< Tnode, Tedge, TPROPERTY
       >::getNonDefaultValuatedNodes () [virtual]
       Implements tlp::PropertyInterface.

   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> virtual std::string
       tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::getTypename () [virtual]
       Implements tlp::PropertyInterface.

   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> static void
       tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::initFactory () [inline, static]
   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> virtual
       AbstractProperty<Tnode,Tedge,TPROPERTY>& tlp::AbstractProperty< Tnode, Tedge, TPROPERTY
       >::operator= (AbstractProperty< Tnode, Tedge, TPROPERTY > &prop) [inline, virtual]
   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> virtual void
       tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::setAllEdgeDataMemValue (const DataMem
       *v) [virtual]
       Implements tlp::PropertyInterface.

   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> virtual bool
       tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::setAllEdgeStringValue (const std::string
       &v) [virtual]
       Implements tlp::PropertyInterface.

       Reimplemented in tlp::GraphProperty.

   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> void
       tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::setAllEdgeValue (const typename
       Tedge::RealType &v) Set the value of all edges and notify the observers
   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> virtual void
       tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::setAllNodeDataMemValue (const DataMem
       *v) [virtual]
       Implements tlp::PropertyInterface.

   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> virtual bool
       tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::setAllNodeStringValue (const std::string
       &v) [virtual]
       Implements tlp::PropertyInterface.

       Reimplemented in tlp::GraphProperty.

   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> void
       tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::setAllNodeValue (const typename
       Tnode::RealType &v) Set the value of all nodes and notify the observers
   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> virtual void
       tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::setEdgeDataMemValue (const edgee, const
       DataMem *v) [virtual]
       Implements tlp::PropertyInterface.

   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> virtual bool
       tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::setEdgeStringValue (const edgee, const
       std::string &v) [virtual]
       Implements tlp::PropertyInterface.

       Reimplemented in tlp::GraphProperty.

   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> void
       tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::setEdgeValue (const edgee, const
       typename Tedge::RealType &v) Set the value of an edge and notify the observers of a
       modification. Warning : When using computed property (plug-in), if one sets the value of a
       edge e, the plug-in won't be call for e.
   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> virtual void
       tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::setNodeDataMemValue (const noden, const
       DataMem *v) [virtual]
       Implements tlp::PropertyInterface.

   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> virtual bool
       tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::setNodeStringValue (const noden, const
       std::string &v) [virtual]
       Implements tlp::PropertyInterface.

       Reimplemented in tlp::GraphProperty.

   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> void
       tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::setNodeValue (const noden, const
       typename Tnode::RealType &v) Set the value of a node n and notify the observers of a
       modification. Warning : When using computed property (plug-in), if one sets the value of a
       node n, the plug-in won't be call for n.

Friends And Related Function Documentation

   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> friend class GraphView
       [friend]

Member Data Documentation

   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> bool
       tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::circularCall [protected]
   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> Tedge::RealType
       tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::edgeDefaultValue [protected]
   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
       MutableContainer<typename Tedge::RealType> tlp::AbstractProperty< Tnode, Tedge, TPROPERTY
       >::edgeProperties [protected]
   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> TLP_SCOPE
       TemplateFactory< PropertyFactory<TPROPERTY>, TPROPERTY, PropertyContext >*
       tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::factory [static]
   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> Graph*
       tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::graph [protected]
   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm> Tnode::RealType
       tlp::AbstractProperty< Tnode, Tedge, TPROPERTY >::nodeDefaultValue [protected]
   template<class Tnode, class Tedge, class TPROPERTY = PropertyAlgorithm>
       MutableContainer<typename Tnode::RealType> tlp::AbstractProperty< Tnode, Tedge, TPROPERTY
       >::nodeProperties [protected]

Author

       Generated automatically by Doxygen for Tulip Graph Library from the source code.