21 #ifndef TULIP_ITERATOR_H 
   22 #define TULIP_ITERATOR_H 
   24 #include <tulip/tulipconf.h> 
   28 #ifndef DOXYGEN_NOTFOR_DEVEL 
   29 extern TLP_SCOPE 
void incrNumIterators();
 
   30 extern TLP_SCOPE 
void decrNumIterators();
 
   31 extern TLP_SCOPE 
int getNumIterators();
 
   32 #endif // DOXYGEN_NOTFOR_DEVEL 
   39 template<
class itType> 
struct Iterator {
 
   57   virtual itType next()=0;
 
   64   virtual bool hasNext()=0;
 
   68 #ifndef DOXYGEN_NOTFOR_DEVEL 
   69 template<
typename TYPE> 
class UINTIterator : 
public Iterator<TYPE> {
 
   71   UINTIterator(Iterator<unsigned int> *it):it(it) {
 
   80     return TYPE(it->next());
 
   83   Iterator<unsigned int> *it;
 
   85 #endif // DOXYGEN_NOTFOR_DEVEL 
   92 #include <tulip/Edge.h> 
   93 #include <tulip/Node.h> 
   95 template struct TLP_SCOPE tlp::Iterator<tlp::edge>;
 
   96 template struct TLP_SCOPE tlp::Iterator<tlp::node>;