Main Page | Class Hierarchy | Data Structures | File List | Data Fields | Globals

ObservableGraph.hpp

Go to the documentation of this file.
00001 // vim:sw=2:ts=8
00017 #ifndef OBS_GRAPH__HPP
00018 #define OBS_GRAPH__HPP
00019 
00020 #include "Graph.hpp"
00021 #include "Subject.hpp"
00022 
00023 
00024 namespace gns {
00025 
00026 
00039   class ObservableGraph : public Graph, public Subject
00040   {
00041     public:
00043       ObservableGraph();
00045       ObservableGraph(PropertyFacility *p);
00047       ObservableGraph(const ObservableGraph &g);
00048 
00050       virtual ~ObservableGraph();
00051 
00052       using Graph::node_id;
00053       using Graph::edge_id;
00054 
00056       virtual void node_id(Node n, const NodeID id);
00057 
00059       virtual void edge_id(Edge e, const EdgeID id);
00060 
00062       virtual Node new_node(NodeID id = "");
00063 
00065       virtual void del_node(Node n);
00066 
00068       virtual Edge new_edge(Node u, Node v, EdgeID id = "");
00069 
00071       virtual void del_edge(Edge e);
00072 
00074       virtual void del_edge(Node u, Node v);
00075 
00077       virtual void add_nodes(int num, int start);
00078 
00079   };
00080 
00081 }
00082 
00083 #endif

Generated on Sun Nov 5 12:05:19 2006 for Graph by  doxygen 1.4.1