Regroupement de toutes les opérations permettant de calculer des projections. More...
#include "cogitant/opeprojection.h"
Public Member Functions | |
OpeProjectionBundle (OpeGraphObjectCompatibility *opegraphobjectcompatibility, OpeProjBacktrackChoice *opeprojbacktrackchoice, OpeProjPrecalcImages *opeprojprecalcimages, OpeProjAcceptableCouple *opeprojacceptablecouple, OpeProjAcceptableLIPs *opeprojacceptablelips, OpeProjLIPInit *opeprojlipinit, OpeProjLIPUpdate *opeprojlipupdate, OpeProjLIPIndividual *opeprojlipindividual, OpeProjection *opeprojection, OpeAcceptableProjection *opeacceptableprojection) | |
Constructeur. More... | |
virtual | ~OpeProjectionBundle () |
Destructeur. More... | |
virtual OpeProjectionBundle * | clone () const |
Alloue dynamiquement une copie du regroupement. More... | |
virtual void | reset () |
Crée (ou recrée) les liens entre les opérations du regroupement. More... | |
void | iteratorPrepare () |
Prépare l'opération pour un parcours des projections par itérateur. More... | |
void | iteratorFinish () |
Libère l'opération après un parcours des projections par itérateur. More... | |
ProjectionIterator | begin () |
Début de parcours. More... | |
ProjectionIterator | begin (Graph const *g, Graph const *h) |
Début de parcours pour les projections d'un graphe sur un autre. More... | |
ProjectionIterator | begin (iSet ig, iSet ih) |
Début des parcours pour les projections d'un graphe sur un autre. More... | |
ProjectionIterator const & | end () const |
Itérateur de fin de parcours. More... | |
Public Attributes | |
OpeGraphObjectCompatibility * | m_opegraphobjectcompatibility |
Opération de test de compatibilité entre objets. | |
OpeProjBacktrackChoice * | m_opeprojbacktrackchoice |
Opération de choix d'un objet pour le backtrack. | |
OpeProjPrecalcImages * | m_opeprojprecalcimages |
Opération de test sur le précalcul des images possibles. | |
OpeProjAcceptableCouple * | m_opeprojacceptablecouple |
Opération de test d'un couple. | |
OpeProjAcceptableLIPs * | m_opeprojacceptablelips |
Opération de test d'un ensemble de liste d'images possibles. | |
OpeProjLIPInit * | m_opeprojlipinit |
Opération de calcul d'une liste d'images possibles initiale. | |
OpeProjLIPUpdate * | m_opeprojlipupdate |
Opération de mise à jour d'une liste d'images possibles. | |
OpeProjLIPIndividual * | m_opeprojlipindividual |
Opération de construction des listes d'images possibles des sommets individuels. | |
OpeProjection * | m_opeprojection |
Opération de calcul des projections. | |
OpeAcceptableProjection * | m_opeacceptableprojection |
Opération de filtre des projections calculées. | |
Regroupement de toutes les opérations permettant de calculer des projections.
cogitant::OpeProjectionBundle::OpeProjectionBundle | ( | OpeGraphObjectCompatibility * | opegraphobjectcompatibility, |
OpeProjBacktrackChoice * | opeprojbacktrackchoice, | ||
OpeProjPrecalcImages * | opeprojprecalcimages, | ||
OpeProjAcceptableCouple * | opeprojacceptablecouple, | ||
OpeProjAcceptableLIPs * | opeprojacceptablelips, | ||
OpeProjLIPInit * | opeprojlipinit, | ||
OpeProjLIPUpdate * | opeprojlipupdate, | ||
OpeProjLIPIndividual * | opeprojlipindividual, | ||
OpeProjection * | opeprojection, | ||
OpeAcceptableProjection * | opeacceptableprojection | ||
) |
Constructeur.
|
virtual |
Destructeur.
Détruit les opérations du regroupement.
ProjectionIterator cogitant::OpeProjectionBundle::begin | ( | ) |
Début de parcours.
Tous les paramètres doivent être fixés avant appel à cette méthode.
ProjectionIterator cogitant::OpeProjectionBundle::begin | ( | Graph const * | g, |
Graph const * | h | ||
) |
Début de parcours pour les projections d'un graphe sur un autre.
g | graphe projeté. |
h | graphe sur lequel les projections sont calculées. Tous les paramètres de l'OpeProjection (sauf G et H) doivent être fixés avant appel à cette méthode, pour cela, le plus simple est de passer par un appel à iteratorPrepare() suivi d'une personnsalisation des paramètres. |
ProjectionIterator cogitant::OpeProjectionBundle::begin | ( | iSet | ig, |
iSet | ih | ||
) |
Début des parcours pour les projections d'un graphe sur un autre.
ig | graphe projeté. |
ih | graphe sur lequel les projections sont calculées. Tous les paramètres de l'OpeProjection (sauf G et H) doivent être fixés avant appel à cette méthode, pour cela, le plus simple est de passer par un appel à iteratorPrepare() suivi d'une personnsalisation des paramètres. |
|
virtual |
Alloue dynamiquement une copie du regroupement.
ProjectionIterator const& cogitant::OpeProjectionBundle::end | ( | ) | const |
Itérateur de fin de parcours.
void cogitant::OpeProjectionBundle::iteratorFinish | ( | ) |
Libère l'opération après un parcours des projections par itérateur.
Cette méthode doit être appelée après un parcours de projections par itérateur. Son usage est optionnel, mais il permet de libérer des structures de données temporaires utilisés pour le calcul des projections. Si la méthode n'est pas appelée, ces structures de données seront libérées lors du prochain calcul de projections. Si l'objet est détruit après le parcours par itérator, il est là aussi inutile d'appeler iteratorFinish() : le destructeur se charge de tout.
void cogitant::OpeProjectionBundle::iteratorPrepare | ( | ) |
Prépare l'opération pour un parcours des projections par itérateur.
Cette méthode doit être appelée avant de lancer un parcours de projections par itérateur.
|
virtual |
Crée (ou recrée) les liens entre les opérations du regroupement.