Ajout d'un couple (ou pas) à une projection en cours de construction. More...
#include "cogitant/opeprojection.h"
Public Member Functions | |
| Error | check () |
| Vérification des paramètres. More... | |
| void | run () |
| Lancement de l'opération. More... | |
| void | setInjective (bool i) |
| Filtre des projections injectives. More... | |
Constructeurs - destructeur. | |
| OpeProjAcceptableCouple (Environment *env) | |
| Constructeur. More... | |
| ~OpeProjAcceptableCouple () | |
| Destructeur. More... | |
| virtual OpeProjAcceptableCouple * | clone () const |
| Copie. More... | |
Entrée des paramètres. | |
| void | setParamG (Graph const *g) |
| void | setParamH (Graph const *h) |
| void | setParamO1 (iSet o1) |
| void | setParamO2 (iSet o2) |
| void | setParamProj (Projection const *proj) |
| void | setParamNoImage (GraphSubset const *noimg) |
Accès aux résultats. | |
| bool | getResult () const |
Méthodes de mise à jour. | |
Ces méthodes sont appelées automatiquement par l'opération de calcul des projections, et peuvent être utilisées pour mettre à jour des structures de données internes à la classe et permettre ainsi une exécution plus rapide de l'opération. | |
| virtual void | begin () |
| Début du calcul des projections. | |
| virtual void | end () |
| Fin du calcul des projections. | |
| virtual void | addCouple (iSet o1, iSet o2) |
| Ajout d'un couple à la projection en cours de calcul. More... | |
| virtual void | removeCouple (iSet o1, iSet o2) |
| Retrait d'un couple à la projection en cours de calcul. More... | |
Public Member Functions inherited from cogitant::Operation | |
| Environment * | environment () const |
| Environnement. More... | |
| void | setEnvironment (Environment *env) |
| Modification de l'environnement sur lequel est défini l'opération. More... | |
| Operation (Environment *env) | |
| Constructeur. More... | |
| Operation (Operation const &o) | |
| Constructeur par recopie. More... | |
| ~Operation () | |
| Destructeur. More... | |
Public Member Functions inherited from cogitant::OperationBase | |
| void | stop () |
| Stopper l'opération dès que possible. More... | |
| bool | isStopped () const |
| Est-ce que l'opération a été stoppée. More... | |
| OperationBase () | |
| Constructeur. More... | |
| OperationBase (OperationBase const &o) | |
| Constructeur par recopie. More... | |
| ~OperationBase () | |
| Destructeur. More... | |
Public Member Functions inherited from cogitant::ObservableObject | |
| ObservableObject () | |
| Constructeur. More... | |
| ObservableObject (ObservableObject const &o) | |
| Constructeur par recopie. More... | |
| ~ObservableObject () | |
| Destructeur. More... | |
| ObserverSet const & | observers () const |
| Accès à l'ensemble des observateurs. More... | |
| bool | hasObservers () const |
| Existence d'observateurs. More... | |
| bool | hasObservers (ObserverMessage::Type mt) const |
| Existence d'observateurs qui écoutent le type de message passé. More... | |
| void | attachObserver (Observer *obs) |
| Ajoute un nouvel observateur à l'objet. More... | |
| void | detachObserver (Observer *obs) |
| Supprime le lien entre l'observateur et l'objet. More... | |
| void | notifyObservers (ObserverMessage const *msg) |
| Envoie le message de modification à tous les observateurs. More... | |
Public Member Functions inherited from cogitant::CogitantObject | |
| CogitantObject () | |
| Constructeur. More... | |
| CogitantObject (CogitantObject const &o) | |
| Constructeur par recopie. More... | |
| virtual | ~CogitantObject () |
| Destructeur. More... | |
| PropertySet * | properties () |
| Accès à l'ensemble des propriétés. More... | |
| virtual std::string | toString () const |
| Transformation en chaîne de caractères. More... | |
| std::string | className () const |
| Nom de la classe. More... | |
| PropertySet const * | properties () const |
| Accès en lecture seule à l'ensemble des propriétés. More... | |
| bool | hasProperties () const |
| Existence de propriétés. More... | |
| CogitantObject & | operator= (CogitantObject const &ob) |
| Affectation. More... | |
Protected Attributes | |
| Graph const * | i_g |
| Le premier graphe. | |
| Graph const * | i_h |
| Le second graphe. | |
| iSet | i_o1 |
| Le premier élément du couple. | |
| iSet | i_o2 |
| Le second élément du couple. | |
| Projection const * | i_proj |
| La projection en cours de construction. | |
| GraphSubset const * | i_noimage |
| Ensemble des sommets dont l'image n'a pas encore été calculée. More... | |
| bool | o_result |
| Résultat: le couple est acceptable ou pas. | |
| bool | i_injective |
| Calcul des projections injectives uniquement. | |
| GraphSubset * | m_injectiveh |
| Sommets de i_h ayant un antécédant par la projection en cours. | |
Protected Attributes inherited from cogitant::OperationBase | |
| bool | m_stop |
| Arrêt de l'exécution de l'opération demandé. More... | |
Additional Inherited Members | |
Public Types inherited from cogitant::OperationBase | |
| typedef unsigned int | Error |
| Résultat de la vérification des arguments d'une opération. More... | |
Static Public Attributes inherited from cogitant::Operation | |
| static const Error | PROJBACKTRACKCHOICE_EMPTYLIST |
| Impossible d'enlever un élément à une liste vide. More... | |
| static const Error | OBJECTTYPE |
| Un (identifiant d') objet parmi les paramètres n'est pas du bon type. More... | |
| static const Error | WRONGEDGES |
| Un graphe parmi les paramètres de l'opération possède des arêtes pendantes. More... | |
Static Public Attributes inherited from cogitant::OperationBase | |
| static const Error | CHECKOK |
| Pas d'erreur. More... | |
| static const Error | ARGUMENTS |
| Certains paramètres de l'opération n'ont pas été fixés. More... | |
| static const Error | UNUSED |
| Symbole d'erreur inutilisé. More... | |
Protected Member Functions inherited from cogitant::Operation | |
| void | setProgress (unsigned int current, unsigned int max) |
| Progression actuelle de l'opération. More... | |
Protected Member Functions inherited from cogitant::ObservableObject | |
| virtual ObserverSet * | allocObservers () const |
| Fonction créant l'instance d'une sous classe de ObserverSet pour la représentation de l'ensemble des observateurs de l'objet. More... | |
| ObserverSet & | observers () |
| Accès à l'ensemble des observateurs. More... | |
Protected Member Functions inherited from cogitant::CogitantObject | |
| virtual PropertySet * | allocProperties () const |
| Fonction créant l'instance d'une sous classe de PropertySet pour la représentation des propriétés de l'objet. More... | |
Ajout d'un couple (ou pas) à une projection en cours de construction.
Lors du calcul des projections d'un graphe i_g dans i_h, lors de la construction de la projection i_proj, alors que le couple i_o1, i_o2 (identifiants respectivement dans i_g et i_h) peut être ajouté à i_proj, ce couple doit-il être ajouté ou pas ?. Cette opération ne doit pas prendre en compte les étiquettes de i_o1 et i_o2 ni le voisinage de ces sommets (pris en compte par ailleurs) mais uniquement d'autres propriétés telles que l'injectivité de la projection.
| cogitant::OpeProjAcceptableCouple::OpeProjAcceptableCouple | ( | Environment * | env | ) |
Constructeur.
| cogitant::OpeProjAcceptableCouple::~OpeProjAcceptableCouple | ( | ) |
Destructeur.
Ajout d'un couple à la projection en cours de calcul.
| o1 | identificateur de l'objet dans le graphe projeté. |
| o2 | identificateur de l'objet dans le graphe sur lequel les projections sont cherchées. |
|
virtual |
Vérification des paramètres.
Retourne Operation::CHECKOK si l'opération peut être exécutée (méthode run()) ou un code d'erreur dans le cas contraire.
Implements cogitant::OperationBase.
|
virtual |
Copie.
Retrait d'un couple à la projection en cours de calcul.
|
virtual |
Lancement de l'opération.
Cette méthode ne retourne rien mais le résultat de l'opération peut être récupéré avec les méthodes getResultxxx() (différentes selon les sous classes de Operation).
Implements cogitant::OperationBase.
|
inline |
Filtre des projections injectives.
| i | si true, la projection en cours est prise en compte pour ne PAS accepter de couples qui conduisent à une projection non injective. Cette méthode doit être appelée avant begin(), mais après setParamH(). |
|
protected |
Ensemble des sommets dont l'image n'a pas encore été calculée.
Cet attribut n'est pas utilisé par cette implémentation, mais peut-être utilisé par des sous-classes.