COIN-OR::LEMON - Graph Library

Changeset 1563:0853ed07a677 in lemon-0.x for lemon/concept


Ignore:
Timestamp:
07/18/05 17:03:55 (19 years ago)
Author:
Balazs Dezso
Branch:
default
Phase:
public
Convert:
svn:c9d7d8f5-90d6-0310-b91f-818b3a526b0e/lemon/trunk@2062
Message:

Fix concepts and constraints

Location:
lemon/concept
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • lemon/concept/graph.h

    r1470 r1563  
    407407      ///
    408408      Node source(Edge) const { return INVALID; }
     409
     410      /// Gives back the first Node in the iterating order.
     411     
     412      /// Gives back the first Node in the iterating order.
     413      ///     
     414      void first(Node&) const {}
     415
     416      /// Gives back the next Node in the iterating order.
     417     
     418      /// Gives back the next Node in the iterating order.
     419      ///     
     420      void next(Node&) const {}
     421
     422      /// Gives back the first Edge in the iterating order.
     423     
     424      /// Gives back the first Edge in the iterating order.
     425      ///     
     426      void first(Edge&) const {}
     427      /// Gives back the next Edge in the iterating order.
     428     
     429      /// Gives back the next Edge in the iterating order.
     430      ///     
     431      void next(Edge&) const {}
     432
     433
     434      /// Gives back the first of the Edges point to the given Node.
     435     
     436      /// Gives back the first of the Edges point to the given Node.
     437      ///     
     438      void firstIn(Edge&, const Node&) const {}
     439
     440      /// Gives back the next of the Edges points to the given Node.
     441
     442
     443      /// Gives back the next of the Edges points to the given Node.
     444      ///
     445      void nextIn(Edge&) const {}
     446
     447      /// Gives back the first of the Edges start from the given Node.
     448     
     449      /// Gives back the first of the Edges start from the given Node.
     450      ///     
     451      void firstOut(Edge&, const Node&) const {}
     452
     453      /// Gives back the next of the Edges start from the given Node.
     454     
     455      /// Gives back the next of the Edges start from the given Node.
     456      ///     
     457      void nextOut(Edge&) const {}
     458
     459      /// \brief The base node of the iterator.
     460      ///
     461      /// Gives back the base node of the iterator.
     462      Node baseNode(const InEdgeIt&) const { return INVALID; }
     463
     464      /// \brief The running node of the iterator.
     465      ///
     466      /// Gives back the running node of the iterator.
     467      Node runningNode(const InEdgeIt&) const { return INVALID; }
     468
     469      /// \brief The base node of the iterator.
     470      ///
     471      /// Gives back the base node of the iterator.
     472      Node baseNode(const OutEdgeIt&) const { return INVALID; }
     473
     474      /// \brief The running node of the iterator.
     475      ///
     476      /// Gives back the running node of the iterator.
     477      Node runningNode(const OutEdgeIt&) const { return INVALID; }
    409478      /// Read write map of the nodes to type \c T.
    410479
  • lemon/concept/graph_component.h

    r1494 r1563  
    678678      /// of a graph.
    679679      typedef GraphIncIterator<Graph, Edge, 'o'> OutEdgeIt;
    680     };
     680
     681      /// \brief The base node of the iterator.
     682      ///
     683      /// Gives back the base node of the iterator.
     684      Node baseNode(const InEdgeIt&) const { return INVALID; }
     685
     686      /// \brief The running node of the iterator.
     687      ///
     688      /// Gives back the running node of the iterator.
     689      Node runningNode(const InEdgeIt&) const { return INVALID; }
     690
     691      /// \brief The base node of the iterator.
     692      ///
     693      /// Gives back the base node of the iterator.
     694      Node baseNode(const OutEdgeIt&) const { return INVALID; }
     695
     696      /// \brief The running node of the iterator.
     697      ///
     698      /// Gives back the running node of the iterator.
     699      Node runningNode(const OutEdgeIt&) const { return INVALID; }
     700
    681701   
    682     template <typename _Graph>
    683     struct Constraints {
    684       void constraints() {
    685         checkConcept< BaseGraphComponent, _Graph>();
    686 
    687         checkConcept<GraphIterator<_Graph, typename _Graph::Edge>,
    688           typename _Graph::EdgeIt >();
    689         checkConcept<GraphIterator<_Graph, typename _Graph::Node>,
    690           typename _Graph::NodeIt >();
    691         checkConcept<GraphIncIterator<_Graph>, typename _Graph::InEdgeIt >();
    692         checkConcept<GraphIncIterator<_Graph>, typename _Graph::OutEdgeIt >();
    693       }
     702      template <typename _Graph>
     703      struct Constraints {
     704        void constraints() {
     705          checkConcept< BaseGraphComponent, _Graph>();
     706         
     707          checkConcept<GraphIterator<_Graph, typename _Graph::Edge>,
     708            typename _Graph::EdgeIt >();
     709          checkConcept<GraphIterator<_Graph, typename _Graph::Node>,
     710            typename _Graph::NodeIt >();
     711          checkConcept<GraphIncIterator<_Graph>, typename _Graph::InEdgeIt>();
     712          checkConcept<GraphIncIterator<_Graph>, typename _Graph::OutEdgeIt>();
     713        }
     714      };
    694715    };
    695716
Note: See TracChangeset for help on using the changeset viewer.