SiGraph: sulcal graphs


modelFinder.h
Go to the documentation of this file.
1/*
2 * Copyright (C) 1998-2003 CEA
3 *
4 * This software and supporting documentation were developed by
5 * CEA/DSV/SHFJ
6 * 4 place du General Leclerc
7 * 91401 Orsay cedex
8 * France
9 *
10 */
11
12#ifndef SI_FINDER_MODELFINDER_H
13#define SI_FINDER_MODELFINDER_H
14
15
16#include <si/graph/clique.h>
17#include <si/graph/mgraph.h>
18#include <si/model/model.h>
19
20
21namespace aims
22{
23 class SelectionSet;
24}
25
26
27namespace sigraph
28{
29 class CGraph;
30
64 {
65 public:
66 virtual ~ModelFinder();
67
68 const MGraph & mGraph() const { return( _mgraph ); }
70 virtual carto::AttributedObject* selectModel( const Clique* cl ) = 0;
75 virtual double potential( const Clique *cl );
85 virtual double potential( const Clique* cl,
86 std::map<Vertex*, std::string> & changes );
89 virtual double update( const Clique* cl );
92 virtual double update( const Clique* cl,
93 std::map<Vertex*, std::string> & changes );
95 virtual bool isAdaptive() const;
97 virtual void clear() {}
103 virtual double printDescription( Clique *cl, bool naming = false );
104
118 virtual void initCliques( CGraph & data,
119 bool verbose = true,
120 bool withCache = false,
121 bool translateLabels = true,
122 bool checkLabels = true,
123 const aims::SelectionSet *sel = 0 );
124
125 protected:
127
129
130 private:
131 };
132
133
134
135 // inline
136
137
138 inline bool ModelFinder::isAdaptive() const
139 {
140 return( false );
141 }
142
143}
144
145
146namespace carto
147{
149}
150
151#endif
152
Graphes avec étiquettes et gestion de cliques (classe abstraite).
Definition cgraph.h:37
Classe Clique.
Definition clique.h:35
Graph modèle (classe abstraite).
Definition mgraph.h:48
Chercheur de modèle (classe abstraite).
Definition modelFinder.h:64
virtual bool isAdaptive() const
peut apprendre ?
virtual carto::AttributedObject * selectModel(const Clique *cl)=0
Choisit le noeud modèle dans le MGraph en fonction de la clique.
virtual void clear()
nettoie les variables & caches éventuels
Definition modelFinder.h:97
virtual double update(const Clique *cl)
Fait un update() sur le modèle sous-jacent.
virtual void initCliques(CGraph &data, bool verbose=true, bool withCache=false, bool translateLabels=true, bool checkLabels=true, const aims::SelectionSet *sel=0)
Initialize cliques of data graph using the current model.
virtual double update(const Clique *cl, std::map< Vertex *, std::string > &changes)
Fait un update() sur le modèle sous-jacent.
virtual double potential(const Clique *cl)
Donne le potentiel d'une clique.
virtual double printDescription(Clique *cl, bool naming=false)
Calcule le potentiel et garde le(s) vecteur(s) de description de la clique.
ModelFinder(MGraph &rg)
const MGraph & mGraph() const
Definition modelFinder.h:68
virtual double potential(const Clique *cl, 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...
SyntaxedObject< PropertySet > AttributedObject
#define DECLARE_GENERIC_OBJECT_TYPE(T)