Jafar
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Graph.hpp
00001 /* $Id$ */
00002 
00003 #ifndef _SPAF_GRAPH_GRAPH_HPP_
00004 #define _SPAF_GRAPH_GRAPH_HPP_
00005 
00006 #include <string>
00007 #include <list>
00008 
00009 #include "spafgraph/Node.hpp"
00010 
00011 namespace jafar {
00012   namespace spafgraph {
00017     class Graph : public Node {
00018       public:
00019         Graph();
00020         ~Graph();
00021       public:
00025         std::string toDot() const;
00032         Node* createNode( spaf::Feature* feature, Node* parent );
00036         const std::list<Node*>& nodes() const;
00040         Node* nodeFor( const spaf::Feature* feature );
00044         void removeNode( Node* n );
00045       private:
00049         void appendNode( Node* n );
00050         std::string edgeToDot( const Edge* edge) const;
00051         std::string nodeToDot( const Node* node) const;
00052       private:
00053         struct Private;
00054         Private* const d;
00055     };
00056   }
00057 }
00058 
00059 #endif
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on Wed Oct 15 2014 00:37:28 for Jafar by doxygen 1.7.6.1
LAAS-CNRS