Quick links: Tutorial - Examples - Files - Symbols.
Classes: Hierarchy - Index - List - Members.
Namespaces: Index - base - cs - display.

Public Types | Public Member Functions | Static Public Member Functions | List of all members
cogitant::OpeConnectedComponent Class Reference

Opération de calcul des composantes connexes d'un graphe conceptuel. More...

#include "cogitant/opeconnected.h"

Inheritance diagram for cogitant::OpeConnectedComponent:
cogitant::Operation cogitant::OperationBase cogitant::ObservableObject cogitant::CogitantObject

Public Types

enum  ResultType { RT_BOOL, RT_INTEGER, RT_CONNECTEDCOMPONENTS }
 Type de calcul devant être effectué par une opération OpeConnectedComponent. More...
 
- Public Types inherited from cogitant::OperationBase
typedef unsigned int Error
 Résultat de la vérification des arguments d'une opération. More...
 

Public Member Functions

Error check ()
 Vérification des paramètres. More...
 
void run ()
 Lancement de l'opération. More...
 
Constructeurs - destructeur.
 OpeConnectedComponent (Environment *env)
 Constructeur. More...
 
 ~OpeConnectedComponent ()
 Destructeur. More...
 
Entrée des paramètres.
void setParamG (Graph const *g)
 
void setParamGParent (iSet gparent)
 
void setParamGSubset (GraphSubset const *subset)
 Permet de chercher les composantes connexes dans le seul GraphSubset passé. More...
 
void setParamResultType (ResultType ccresult)
 Type de calcul devant être effectué. More...
 
void setParamResultConnectedComponents (std::vector< GraphSubset > *cc)
 
Accès aux résultats.
bool getResultBool () const
 
nSet getResultInteger () const
 
std::vector< GraphSubset > * getResultConnectedComponents () const
 
- Public Member Functions inherited from cogitant::Operation
Environmentenvironment () 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...
 
PropertySetproperties ()
 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...
 
CogitantObjectoperator= (CogitantObject const &ob)
 Affectation. More...
 

Static Public Member Functions

static void getConnectedComponent (Graph const *g, GraphSubset const *subg, iSet obj, GraphSubset &ss)
 Calcule la composante connexe à laquelle appartient un sommet. More...
 

Additional Inherited Members

- 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 ObserverSetallocObservers () 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...
 
ObserverSetobservers ()
 Accès à l'ensemble des observateurs. More...
 
- Protected Member Functions inherited from cogitant::CogitantObject
virtual PropertySetallocProperties () const
 Fonction créant l'instance d'une sous classe de PropertySet pour la représentation des propriétés de l'objet. More...
 
- Protected Attributes inherited from cogitant::OperationBase
bool m_stop
 Arrêt de l'exécution de l'opération demandé. More...
 

Detailed Description

Opération de calcul des composantes connexes d'un graphe conceptuel.

Dans un usage normal de la bibliothèque, il est plus simple d'appeler les méthodes cogitant::Environment::isConnected() (connexité du graphe), cogitant::Environment::connectedComponentsSize() (nombre de composantes connexes) et cogitant::Environment::connectedComponents() (composantes connexes) qui effectuent ces opérations en appelant les méthodes de cette classe, mais en cachant l'initialisation des paramètres.

Soient un graphe i_g, et un InternalGraph de i_g d'identificateur i_gparent, cette opération calcule si le graphe i_gparent est connexe, son nombre de composantes connexes, et ses composantes connexes selon la valeur de i_ccresult.

See also
Conceptual graph operations.

Member Enumeration Documentation

◆ ResultType

Type de calcul devant être effectué par une opération OpeConnectedComponent.

Enumerator
RT_BOOL 

Tester seulement la connexité du graphe.

RT_INTEGER 

Déterminer le nombre de composantes connexes.

RT_CONNECTEDCOMPONENTS 

Déterminer les sommets contenus dans chaque composante connexe.

Constructor & Destructor Documentation

◆ OpeConnectedComponent()

cogitant::OpeConnectedComponent::OpeConnectedComponent ( Environment env)

Constructeur.

◆ ~OpeConnectedComponent()

cogitant::OpeConnectedComponent::~OpeConnectedComponent ( )

Destructeur.

Member Function Documentation

◆ check()

Error cogitant::OpeConnectedComponent::check ( )
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.

◆ getConnectedComponent()

static void cogitant::OpeConnectedComponent::getConnectedComponent ( Graph const *  g,
GraphSubset const *  subg,
iSet  obj,
GraphSubset ss 
)
static

Calcule la composante connexe à laquelle appartient un sommet.

Parameters
ggraphe considéré.
subgsous-graphe de g à considérer. Si NULL, considère tout g, sinon, les seuls sommets de g qui sont dans subg.
objidentificateur de l'objet dont la composante connexe est cherchée.
ss(R) sous ensemble des sommets de g contenant en résultat les sommets de la composante connexe de obj. Les sommets de la composante connexe sont ajoutés à ss qui n'est pas vidé avant l'exécution de cette méthode.

◆ run()

void cogitant::OpeConnectedComponent::run ( )
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.

◆ setParamGSubset()

void cogitant::OpeConnectedComponent::setParamGSubset ( GraphSubset const *  subset)

Permet de chercher les composantes connexes dans le seul GraphSubset passé.

Par défaut (ou en passant NULL à cette méthode), les composantes connexes sont cherchées parmi tous les sommets du graphe (qui sont des fils de i_gparent). En passant un Subset (de g) à cette méthode, les composantes ne sont cherchées que parmi les sommets du Subset en question. Ainsi, il est possible de connaîte facilement la connexité, le nombre de composantes connexes ou les composantes d'un sous-ensemble du graphe, sans avoir à construire un Graph à partir d'un GraphSubset.

◆ setParamResultType()

void cogitant::OpeConnectedComponent::setParamResultType ( ResultType  ccresult)

Type de calcul devant être effectué.

Si cette méthode n'est pas appelée, le nombre de composantes connexes est calculé (ce qui est équivalent à appeler cette méthode avec le paramètre OpeConnectedComponent::ResultType::RT_INTEGER).