SiGraph: sulcal graphs


sigraph::Model Class Referenceabstract

Modèle pour l'évaluation de cliques de graphes (classe abstraite). More...

#include <si/model/model.h>

Inheritance diagram for sigraph::Model:

Public Member Functions

virtual ~Model ()
 
virtual Modelclone () const =0
 Duplication (fonction abstraite)
 
Modeloperator= (const Model &m)
 
Fonctions de base
virtual double prop (const Clique *cl)=0
 Propagation (réponse du modèle)
 
virtual double prop (const Clique *cl, const std::map< Vertex *, std::string > &changes)
 Donne le potentiel d'une clique, après une transformation de labels de noeuds, en ne le recalculant que si les labels ayant changé changent effectivement le potentiel.
 
virtual bool doesOutputChange (const Clique *cl, const std::map< Vertex *, std::string > &changes) const
 tells whether a label change inpacts the model output or not.
 
virtual double update (const Clique *cl)
 Met à jour les états internes du modèle (au besoin) Cette fonction doit être appelée après chaque changement de label.
 
virtual double update (const Clique *cl, const std::map< Vertex *, std::string > &changes)
 Change les états internes pour les noeuds de la liste changes, chacun avec son ancien nom (pour les changements par différence).
 
virtual bool isAdaptive () const
 Le modèle est-il adaptatif ?
 
virtual bool openFile (const std::string &basename="")
 Ouvre le(s) fichier(s) de sauvegardes des données reçues.
 
virtual void closeFile ()
 Ferme le(s) fichier(s) de sauvegardes des données reçues.
 
virtual void subFiles (const std::string &prefix, std::set< std::string > &listNames) const
 Donne la liste des fichiers sous le modèle.
 
virtual double printDescription (Clique *cl, bool withnames=false)
 Calcule le potentiel et garde le(s) vecteur(s) de description.
 
Gestion de l'arborescence (parents)
virtual Modelparent ()
 Donne le parent direct (0 si pas de parent)
 
virtual void setParent (Model *m)
 Fixe le parent.
 
virtual TopModeltopModel ()
 Donne la base de l'arborescence (TopModel, s'il y en a)
 
virtual const TopModeltopModel () const
 
virtual carto::AttributedObjectgraphObject ()
 Donne l'élément parent du graphe modèle.
 
virtual const carto::AttributedObjectgraphObject () const
 

IO

virtual void buildTree (Tree &tr) const =0
 (devrait être externe à la classe...)
 
virtual void setBaseName (const std::string &basename)
 
 Model (Model *parent=0)
 
 Model (const Model &m)
 

Detailed Description

Modèle pour l'évaluation de cliques de graphes (classe abstraite).

Le modèle sert à évaluer une description ou une configuration. Sa fonction est de donner un potentiel à un vecteur d'entrée.

Definition at line 25 of file model.h.

Constructor & Destructor Documentation

◆ ~Model()

virtual sigraph::Model::~Model ( )
virtual

◆ Model() [1/2]

◆ Model() [2/2]

sigraph::Model::Model ( const Model & m)
inlineprotected

Definition at line 125 of file model.h.

References Model().

Member Function Documentation

◆ buildTree()

◆ clone()

◆ closeFile()

void sigraph::Model::closeFile ( )
inlinevirtual

Ferme le(s) fichier(s) de sauvegardes des données reçues.

Reimplemented in sigraph::AdaptiveLeaf, sigraph::AdaptiveTree, and sigraph::TopAdaptive.

Definition at line 148 of file model.h.

◆ doesOutputChange()

virtual bool sigraph::Model::doesOutputChange ( const Clique * cl,
const std::map< Vertex *, std::string > & changes ) const
virtual

tells whether a label change inpacts the model output or not.

The default implementation always returns true

Reimplemented in sigraph::AdaptiveLeaf, sigraph::AdaptiveTree, and sigraph::TopAdaptive.

◆ graphObject() [1/2]

carto::AttributedObject * sigraph::Model::graphObject ( )
inlinevirtual

Donne l'élément parent du graphe modèle.

Definition at line 183 of file model.h.

References sigraph::TopModel::parentAO(), and topModel().

Referenced by sigraph::AdaptiveLeaf::eval(), and sigraph::AdaptiveLeaf::prop().

◆ graphObject() [2/2]

const carto::AttributedObject * sigraph::Model::graphObject ( ) const
inlinevirtual

Definition at line 190 of file model.h.

References sigraph::TopModel::parentAO(), and topModel().

◆ isAdaptive()

bool sigraph::Model::isAdaptive ( ) const
inlinevirtual

Le modèle est-il adaptatif ?

. \ Par défaut, il ne l'est pas. Un modèle adaptatif dérive de la classe Adaptive, dont la fonction isAdaptive retourne true. \ Si la fonction retourne true, on peut faire un cast vers une classe Adaptive.

Reimplemented in sigraph::Adaptive.

Definition at line 136 of file model.h.

◆ openFile()

bool sigraph::Model::openFile ( const std::string & basename = "")
inlinevirtual

Ouvre le(s) fichier(s) de sauvegardes des données reçues.

Reimplemented in sigraph::AdaptiveLeaf, sigraph::AdaptiveTree, and sigraph::TopAdaptive.

Definition at line 142 of file model.h.

◆ operator=()

Model & sigraph::Model::operator= ( const Model & m)
inline

Definition at line 130 of file model.h.

References Model().

Referenced by sigraph::Adaptive::operator=().

◆ parent()

◆ printDescription()

virtual double sigraph::Model::printDescription ( Clique * cl,
bool withnames = false )
virtual

Calcule le potentiel et garde le(s) vecteur(s) de description.

Reimplemented in sigraph::AdaptiveLeaf, sigraph::AdaptiveTree, and sigraph::TopAdaptive.

References Model().

◆ prop() [1/2]

◆ prop() [2/2]

virtual double sigraph::Model::prop ( const Clique * cl,
const std::map< Vertex *, std::string > & changes )
virtual

Donne le potentiel d'une clique, après une transformation de labels de noeuds, en ne le recalculant que si les labels ayant changé changent effectivement le potentiel.

Parameters
clclique à décrire
changesliste des noeuds dont le label a changé, avec pour chacun le label d'origine (avant changement), le changement doit déjà être effectué
Returns
potentiel

Reimplemented in sigraph::AdaptiveTree, sigraph::ConstModel, sigraph::FoldFakeRel, sigraph::FunctionalSketchDataDrivenModel, sigraph::FunctionalSketchIntraPSModel, sigraph::FunctionalSketchLowerScaleModel, sigraph::NullModel, sigraph::SurfaceBasedFunctionalSketchDataDrivenModel, sigraph::SurfaceBasedFunctionalSketchIntraPSModel, sigraph::SurfaceBasedFunctionalSketchLowerScaleModel, and sigraph::TopAdaptive.

◆ setBaseName()

void sigraph::Model::setBaseName ( const std::string & basename)
inlinevirtual

Reimplemented in sigraph::AdaptiveLeaf, sigraph::AdaptiveTree, and sigraph::TopAdaptive.

Definition at line 197 of file model.h.

◆ setParent()

void sigraph::Model::setParent ( Model * m)
inlinevirtual

Fixe le parent.

Definition at line 165 of file model.h.

References Model().

Referenced by sigraph::AdaptiveTree::erase(), and sigraph::AdaptiveTree::insert().

◆ subFiles()

void sigraph::Model::subFiles ( const std::string & prefix,
std::set< std::string > & listNames ) const
inlinevirtual

Donne la liste des fichiers sous le modèle.

Reimplemented in sigraph::AdaptiveLeaf, sigraph::AdaptiveTree, and sigraph::TopAdaptive.

Definition at line 153 of file model.h.

◆ topModel() [1/2]

TopModel * sigraph::Model::topModel ( )
inlinevirtual

Donne la base de l'arborescence (TopModel, s'il y en a)

Reimplemented in sigraph::TopAdaptive.

Definition at line 171 of file model.h.

Referenced by graphObject(), graphObject(), and sigraph::AdaptiveLeaf::prop().

◆ topModel() [2/2]

const TopModel * sigraph::Model::topModel ( ) const
inlinevirtual

Reimplemented in sigraph::TopAdaptive.

Definition at line 177 of file model.h.

◆ update() [1/2]

virtual double sigraph::Model::update ( const Clique * cl)
inlinevirtual

Met à jour les états internes du modèle (au besoin) Cette fonction doit être appelée après chaque changement de label.

Returns
le nouveau potentiel de la clique

Reimplemented in sigraph::FoldFakeRel, sigraph::FunctionalSketchIntraPSModel, and sigraph::SurfaceBasedFunctionalSketchIntraPSModel.

Definition at line 60 of file model.h.

References prop().

Referenced by update().

◆ update() [2/2]

double sigraph::Model::update ( const Clique * cl,
const std::map< Vertex *, std::string > & changes )
inlinevirtual

Change les états internes pour les noeuds de la liste changes, chacun avec son ancien nom (pour les changements par différence).

Par défaut (si elle n'est pas surchargée), il rappelle simplement update(const Clique*).

Returns
la différence de potentiel entraînée par le changement

Reimplemented in sigraph::FoldFakeRel.

Definition at line 202 of file model.h.

References update().


The documentation for this class was generated from the following file: