equal
deleted
inserted
replaced
23 |
23 |
24 #include <lemon/erasable_graph_extender.h> |
24 #include <lemon/erasable_graph_extender.h> |
25 #include <lemon/clearable_graph_extender.h> |
25 #include <lemon/clearable_graph_extender.h> |
26 #include <lemon/extendable_graph_extender.h> |
26 #include <lemon/extendable_graph_extender.h> |
27 |
27 |
28 #include <lemon/idmappable_graph_extender.h> |
|
29 |
|
30 #include <lemon/iterable_graph_extender.h> |
28 #include <lemon/iterable_graph_extender.h> |
31 |
29 |
32 #include <lemon/alteration_observer_registry.h> |
30 #include <lemon/alteration_observer_registry.h> |
33 |
31 |
34 #include <lemon/default_map.h> |
32 #include <lemon/default_map.h> |
103 |
101 |
104 /// Maximum node ID. |
102 /// Maximum node ID. |
105 |
103 |
106 /// Maximum node ID. |
104 /// Maximum node ID. |
107 ///\sa id(Node) |
105 ///\sa id(Node) |
108 int maxNodeId() const { return nodes.size()-1; } |
106 int maxId(Node = INVALID) const { return nodes.size()-1; } |
109 |
107 |
110 /// Maximum edge ID. |
108 /// Maximum edge ID. |
111 |
109 |
112 /// Maximum edge ID. |
110 /// Maximum edge ID. |
113 ///\sa id(Edge) |
111 ///\sa id(Edge) |
114 int maxEdgeId() const { return edges.size()-1; } |
112 int maxId(Edge = INVALID) const { return edges.size()-1; } |
115 |
113 |
116 Node tail(Edge e) const { return edges[e.id].tail; } |
114 Node tail(Edge e) const { return edges[e.id].tail; } |
117 Node head(Edge e) const { return edges[e.id].head; } |
115 Node head(Edge e) const { return edges[e.id].head; } |
118 |
116 |
119 |
117 |
301 |
299 |
302 }; |
300 }; |
303 |
301 |
304 typedef AlterableGraphExtender<ListGraphBase> AlterableListGraphBase; |
302 typedef AlterableGraphExtender<ListGraphBase> AlterableListGraphBase; |
305 typedef IterableGraphExtender<AlterableListGraphBase> IterableListGraphBase; |
303 typedef IterableGraphExtender<AlterableListGraphBase> IterableListGraphBase; |
306 typedef IdMappableGraphExtender<IterableListGraphBase> IdMappableListGraphBase; |
304 typedef DefaultMappableGraphExtender<IterableListGraphBase> MappableListGraphBase; |
307 typedef DefaultMappableGraphExtender<IdMappableListGraphBase> MappableListGraphBase; |
|
308 typedef ExtendableGraphExtender<MappableListGraphBase> ExtendableListGraphBase; |
305 typedef ExtendableGraphExtender<MappableListGraphBase> ExtendableListGraphBase; |
309 typedef ClearableGraphExtender<ExtendableListGraphBase> ClearableListGraphBase; |
306 typedef ClearableGraphExtender<ExtendableListGraphBase> ClearableListGraphBase; |
310 typedef ErasableGraphExtender<ClearableListGraphBase> ErasableListGraphBase; |
307 typedef ErasableGraphExtender<ClearableListGraphBase> ErasableListGraphBase; |
311 |
308 |
312 /// \addtogroup graphs |
309 /// \addtogroup graphs |