COIN-OR::LEMON - Graph Library

source: lemon-0.x/src/work/alpar/emptygraph.h @ 129:1630a5b631c8

Last change on this file since 129:1630a5b631c8 was 67:5f86199dcf3e, checked in by marci, 21 years ago

.

File size: 1.9 KB
RevLine 
[52]1// -*-mode: c++; -*-
2
3class Graph
4{
5public:
6  class EdgeIt {};
7 
[67]8  class InEdgeIt : public EdgeIt {};
[52]9  class OutEdgeIt : public EdgeIt {};
10  class SymEdgeIt : public EdgeIt {};
11  class EachEdgeIt : public EdgeIt {};
12
13  class NodeIt {};
14   
[67]15  NodeIt &getFirst(NodeIt &) const {}
16  InEdgeIt &getFirst(InEdgeIt &, NodeIt) const {}
17  OutEdgeIt &getFirst(OutEdgeIt &, NodeIt) const {}
18  SymEdgeIt &getFirst(SymEdgeIt &, NodeIt) const {}
19  EachEdgeIt &getFirst(EachEdgeIt &) const {}
[52]20
[67]21  NodeIt next(NodeIt) const {}
22  InEdgeIt next(InEdgeIt) const {}
23  OutEdgeIt next(OutEdgeIt) const {}
24  SymEdgeIt next(SymEdgeIt) const {}
25  EachEdgeIt next(EachEdgeIt) const {}
[52]26
[67]27  NodeIt &goNext(NodeIt &) const {}
28  InEdgeIt &goNext(InEdgeIt &) const {}
29  OutEdgeIt &goNext(OutEdgeIt &) const {}
30  SymEdgeIt &goNext(SymEdgeIt &) const {}
31  EachEdgeIt &goNext(EachEdgeIt &) const {}
[52]32
[67]33  NodeIt head(EdgeIt) const {}
34  NodeIt tail(EdgeIt) const {}
[55]35 
[67]36  NodeIt aNode(InEdgeIt) const {}
37  NodeIt aNode(OutEdgeIt) const {}
38  NodeIt aNode(SymEdgeIt) const {}
[52]39
[67]40  NodeIt bNode(InEdgeIt) const {}
41  NodeIt bNode(OutEdgeIt) const {}
42  NodeIt bNode(SymEdgeIt) const {}
[55]43
[67]44  //bool valid(const NodeIt) const {};
45  //bool valid(const EdgeIt) const {};
[55]46
[67]47  //void setInvalid(NodeIt &) const {};
48  //void setInvalid(EdgeIt &) const {};
[52]49 
[67]50  NodeIt addNode() {}
51  EdgeIt addEdge(NodeIt tail, NodeIt head) {}
[52]52   
[67]53  void erase(NodeIt n) {}
54  void erase(EdgeIt e) {}
[52]55
[67]56  void clear() {}
[52]57
58  template<class T> class NodeMap
59  {
60  public:
[61]61    typedef T ValueType;
62    typedef NodeIt KeyType;
[67]63    void set(NodeIt i, T t) {}
64    T get(NodeIt i) const {}
65    T &operator[](NodeIt i) {}
[52]66     
[67]67    NodeMap(const Graph &G) {}
68    NodeMap(const Graph &G, T t) {}
[52]69  };
70
71  template<class T> class EdgeMap
72  {
73  public:
[61]74    typedef T ValueType;
75    typedef EdgeIt KeyType;
[67]76    void set(EdgeIt i, T t) {}
77    T get(EdgeIt i) const {}
78    T &operator[](EdgeIt i) {}
[52]79     
[67]80    EdgeMap(const Graph &G) {}
81    EdgeMap(const Graph &G, T t) {}
[52]82  };
83};
Note: See TracBrowser for help on using the repository browser.