2#ifndef SI_GRAPH_SGITERATOR_H
3#define SI_GRAPH_SGITERATOR_H
23 {
if(
this != &i ) { _iter = i._iter; }
return( *
this ); }
27 {
return( _iter == i._iter ); }
29 {
return( !
operator ==( i ) ); }
31 { ++_iter;
return( *
this ); }
43 typedef std::list< const std::set< Vertex *> * >
datatype;
82class RandComp :
public std::binary_function< const std::set<Vertex *> *,
83 const std::set<Vertex *> *, bool >
87 const std::set<Vertex *> *s2 );
92 std::map< const std::set<Vertex *> *,
float > dat;
Graphes avec étiquettes et gestion de cliques (classe abstraite).
"Functor" de comparaison aléatoire.
bool operator()(const std::set< Vertex * > *s1, const std::set< Vertex * > *s2)
Itérateur de sous-graphe.
bool operator!=(const SGIterator &i) const
SGIterator & operator=(const SGIterator &i)
SGIterator & operator++()
SGIterator(const std::list< const std::set< Vertex * > * >::const_iterator &it)
const std::set< Vertex * > * operator*() const
bool operator==(const SGIterator &i) const
virtual void refresh()=0
A appeler à chaque fois qu'on veut repréparer les données (par ex.
SGProvider(const CGraph &gr)
SGIterator begin() const
Produit des pointeurs d'objets alloués avec new, qu'il faut effacer.
std::list< const std::set< Vertex * > * > datatype
unsigned size() const
Nombre d'éléments.
SGIterator end() const
Idem.
SGIterator const_iterator
virtual void refresh()
A appeler à chaque fois qu'on veut repréparer les données (par ex.
virtual void init()
Crée la liste, appelé par refresh au besoin.
virtual ~VertexCliqueProvider()
VertexCliqueProvider(const CGraph &gr)
Le constructeur ne crée pas les données: appeler refresh() !
virtual ~VertexProvider()
VertexProvider(const CGraph &gr)
Le constructeur ne crée pas les données: appeler refresh() !
virtual void refresh()
A appeler à chaque fois qu'on veut repréparer les données (par ex.
virtual void cleanup()
Détruit les sets dans les listes (bref: fait le ménage)
virtual void init()
Crée la liste, appelé par refresh au besoin.