lemon/concept/graph_component.h
changeset 1606 dc4ea2010dee
parent 1494 ae55ba000ebb
child 1620 09feafe81053
equal deleted inserted replaced
1:54e384335cc4 2:33283543a849
   675       /// This iterator goes trough the outgoing edges of a node.
   675       /// This iterator goes trough the outgoing edges of a node.
   676 
   676 
   677       /// This iterator goes trough the \e outgoing edges of a certain node
   677       /// This iterator goes trough the \e outgoing edges of a certain node
   678       /// of a graph.
   678       /// of a graph.
   679       typedef GraphIncIterator<Graph, Edge, 'o'> OutEdgeIt;
   679       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 
   681     
   701     
   682     template <typename _Graph> 
   702       template <typename _Graph> 
   683     struct Constraints {
   703       struct Constraints {
   684       void constraints() {
   704 	void constraints() {
   685   	checkConcept< BaseGraphComponent, _Graph>();
   705 	  checkConcept< BaseGraphComponent, _Graph>();
   686 
   706 	  
   687 	checkConcept<GraphIterator<_Graph, typename _Graph::Edge>,
   707 	  checkConcept<GraphIterator<_Graph, typename _Graph::Edge>,
   688 	  typename _Graph::EdgeIt >();
   708 	    typename _Graph::EdgeIt >();
   689 	checkConcept<GraphIterator<_Graph, typename _Graph::Node>,
   709 	  checkConcept<GraphIterator<_Graph, typename _Graph::Node>,
   690 	  typename _Graph::NodeIt >();
   710 	    typename _Graph::NodeIt >();
   691 	checkConcept<GraphIncIterator<_Graph>, typename _Graph::InEdgeIt >();
   711 	  checkConcept<GraphIncIterator<_Graph>, typename _Graph::InEdgeIt>();
   692 	checkConcept<GraphIncIterator<_Graph>, typename _Graph::OutEdgeIt >();
   712 	  checkConcept<GraphIncIterator<_Graph>, typename _Graph::OutEdgeIt>();
   693       }
   713 	}
       
   714       };
   694     };
   715     };
   695 
   716 
   696     /// An empty alteration notifier base graph class.
   717     /// An empty alteration notifier base graph class.
   697   
   718   
   698     /// This class provides beside the core graph features
   719     /// This class provides beside the core graph features