SiGraph: sulcal graphs


interFoldDescr2.h
Go to the documentation of this file.
1
2#ifndef SI_FOLD_INTERFOLDDESCR2_H
3#define SI_FOLD_INTERFOLDDESCR2_H
4
5
7#include <set>
8
9
10namespace sigraph
11{
12
14 {
15 public:
50
57
59 InterFoldDescr2( const InterFoldDescr2 & ifd );
61 virtual CliqueDescr* clone() const;
62
65 virtual bool makeVector( const Clique* cl, std::vector<double> & vec,
66 carto::GenericObject* model = 0 );
67 virtual bool hasChanged( const Clique* cl,
68 const std::map<Vertex*, std::string> & changes,
69 const carto::GenericObject* model = 0 ) const;
70 virtual void buildTree( Tree & t );
71 virtual std::vector<std::string> descriptorsNames() const;
72 virtual std::string name() const;
73 void setNormalizedMode( NormalizedMode x ) { _normalized = x; }
74 NormalizedMode normalizedMode() const { return _normalized; }
75
76 virtual bool makeLearnVector( const Clique* cl, std::vector<double> & vec,
77 carto::GenericObject* model = 0 );
78
79 // attributes switches
80 virtual std::string foldSurfaceAttribute( bool normalized, const Clique*,
81 int major, int minor ) const;
82 virtual std::string corticalLengthAttribute( bool normalized,
83 const Clique*,
84 int major, int minor ) const;
85 virtual std::string corticalDistanceAttribute( bool normalized,
86 const Clique*, int major,
87 int minor ) const;
88 virtual std::string corticalSS1NearestAttribute( bool normalized,
89 const Clique*, int major,
90 int minor ) const;
91 virtual std::string corticalSS2NearestAttribute( bool normalized,
92 const Clique*, int major,
93 int minor ) const;
94 virtual std::string
95 hullJunctionDirectionAttribute( bool normalized, const Clique*,
96 int major, int minor ) const;
97 virtual std::string
98 hullJunctionExtremity1Attribute( bool normalized, const Clique*,
99 int major, int minor ) const;
100 virtual std::string
101 hullJunctionExtremity2Attribute( bool normalized, const Clique*,
102 int major, int minor ) const;
103 virtual std::string junctionLengthAttribute( bool normalized,
104 const Clique*,
105 int major, int minor ) const;
106 virtual std::string junctionDepthAttribute( bool normalized,
107 const Clique*,
108 int major, int minor ) const;
109 virtual std::string pliDePassageDepthAttribute( bool normalized,
110 const Clique*, int major,
111 int minor ) const;
112
113 protected:
114 virtual bool makeVectorElements( const Clique* cl,
115 std::vector<double> & vec,
116 carto::GenericObject* model = 0 );
117 // builtin attributes offsets
118 virtual int foldSurfaceOffset( bool normalized, const Clique*,
119 int major, int minor ) const;
120 virtual int foldSurfaceValidOffset( bool normalized, const Clique*,
121 int major, int minor ) const;
122 virtual int corticalLengthOffset( bool normalized, const Clique*,
123 int major, int minor ) const;
124 virtual int corticalLengthValidOffset( bool normalized, const Clique*,
125 int major, int minor ) const;
126 virtual int corticalDistanceOffset( bool normalized, const Clique*,
127 int major, int minor ) const;
128 virtual int corticalDistanceValidOffset( bool normalized, const Clique*,
129 int major, int minor ) const;
130 virtual int corticalSS1NearestOffset( bool normalized, const Clique*,
131 int major, int minor ) const;
132 virtual int corticalSS1NearestValidOffset( bool normalized, const Clique*,
133 int major, int minor ) const;
134 virtual int corticalSS2NearestOffset( bool normalized, const Clique*,
135 int major, int minor ) const;
136 virtual int corticalSS2NearestValidOffset( bool normalized, const Clique*,
137 int major, int minor ) const;
138 virtual int junctionLengthOffset( bool normalized, const Clique*,
139 int major, int minor ) const;
140 virtual int junctionLengthValidOffset( bool normalized, const Clique*,
141 int major, int minor ) const;
142 virtual int junctionDepthOffset( bool normalized, const Clique*,
143 int major, int minor ) const;
144 virtual int junctionDepthValidOffset( bool normalized, const Clique*,
145 int major, int minor ) const;
146 virtual int hullJunctionDirectionOffset( bool normalized, const Clique*,
147 int major, int minor ) const;
148 virtual int hullJunctionDirectionValidOffset( bool normalized,
149 const Clique*,
150 int major, int minor ) const;
151 virtual int hullJunctionExtremity1Offset( bool normalized, const Clique*,
152 int major, int minor ) const;
153 virtual int hullJunctionExtremity1ValidOffset( bool normalized,
154 const Clique*, int major,
155 int minor ) const;
156 virtual int hullJunctionExtremity2Offset( bool normalized, const Clique*,
157 int major, int minor ) const;
158 virtual int hullJunctionExtremity2ValidOffset( bool normalized,
159 const Clique*, int major,
160 int minor ) const;
161 virtual int pliDePassageDepthOffset( bool normalized, const Clique*,
162 int major, int minor ) const;
163 virtual int pliDePassageDepthValidOffset( bool normalized, const Clique*,
164 int major, int minor ) const;
165
166 void scanFold( const std::set<Vertex *> & sv, float & size,
167 std::vector<float> & extr1, std::vector<float> & extr2,
168 double & dmax, bool & hashj1, const Clique*, int vmaj,
169 int vmin );
170
171 private:
172 NormalizedMode _normalized;
173 };
174
175 // inline
176
178 : AdapDescr(), _normalized( Normalized )
179 {
180 }
181
182
184 : AdapDescr( ifd ), _normalized( ifd._normalized )
185 {
186 }
187
188
190 {
191 return( new InterFoldDescr2( *this ) );
192 }
193
194}
195
196#endif
197
Descripteur de clique (classe abstraite).
Definition cliqueDescr.h:36
Classe Clique.
Definition clique.h:35
virtual std::string corticalLengthAttribute(bool normalized, const Clique *, int major, int minor) const
virtual int corticalLengthValidOffset(bool normalized, const Clique *, int major, int minor) const
virtual int pliDePassageDepthValidOffset(bool normalized, const Clique *, int major, int minor) const
virtual void buildTree(Tree &t)
virtual std::string junctionLengthAttribute(bool normalized, const Clique *, int major, int minor) const
virtual int hullJunctionDirectionOffset(bool normalized, const Clique *, int major, int minor) const
virtual std::string corticalDistanceAttribute(bool normalized, const Clique *, int major, int minor) const
virtual int corticalDistanceOffset(bool normalized, const Clique *, int major, int minor) const
Inputs
Liste des entrées.
virtual int corticalLengthOffset(bool normalized, const Clique *, int major, int minor) const
virtual int hullJunctionDirectionValidOffset(bool normalized, const Clique *, int major, int minor) const
virtual int pliDePassageDepthOffset(bool normalized, const Clique *, int major, int minor) const
virtual int foldSurfaceOffset(bool normalized, const Clique *, int major, int minor) const
void scanFold(const std::set< Vertex * > &sv, float &size, std::vector< float > &extr1, std::vector< float > &extr2, double &dmax, bool &hashj1, const Clique *, int vmaj, int vmin)
virtual int junctionDepthValidOffset(bool normalized, const Clique *, int major, int minor) const
virtual std::string junctionDepthAttribute(bool normalized, const Clique *, int major, int minor) const
virtual std::string hullJunctionDirectionAttribute(bool normalized, const Clique *, int major, int minor) const
virtual CliqueDescr * clone() const
virtual int junctionLengthValidOffset(bool normalized, const Clique *, int major, int minor) const
virtual int corticalDistanceValidOffset(bool normalized, const Clique *, int major, int minor) const
virtual std::string corticalSS2NearestAttribute(bool normalized, const Clique *, int major, int minor) const
virtual int hullJunctionExtremity2Offset(bool normalized, const Clique *, int major, int minor) const
virtual bool makeLearnVector(const Clique *cl, std::vector< double > &vec, carto::GenericObject *model=0)
virtual int corticalSS1NearestValidOffset(bool normalized, const Clique *, int major, int minor) const
virtual std::vector< std::string > descriptorsNames() const
virtual bool makeVectorElements(const Clique *cl, std::vector< double > &vec, carto::GenericObject *model=0)
void setNormalizedMode(NormalizedMode x)
NormalizedMode normalizedMode() const
virtual int hullJunctionExtremity1Offset(bool normalized, const Clique *, int major, int minor) const
virtual std::string hullJunctionExtremity2Attribute(bool normalized, const Clique *, int major, int minor) const
virtual int corticalSS2NearestValidOffset(bool normalized, const Clique *, int major, int minor) const
virtual int hullJunctionExtremity1ValidOffset(bool normalized, const Clique *, int major, int minor) const
virtual std::string foldSurfaceAttribute(bool normalized, const Clique *, int major, int minor) const
virtual bool makeVector(const Clique *cl, std::vector< double > &vec, carto::GenericObject *model=0)
Remplit le vecteur d'entrées.
virtual int hullJunctionExtremity2ValidOffset(bool normalized, const Clique *, int major, int minor) const
virtual std::string name() const
virtual std::string pliDePassageDepthAttribute(bool normalized, const Clique *, int major, int minor) const
virtual int junctionDepthOffset(bool normalized, const Clique *, int major, int minor) const
virtual std::string corticalSS1NearestAttribute(bool normalized, const Clique *, int major, int minor) const
virtual bool hasChanged(const Clique *cl, const std::map< Vertex *, std::string > &changes, const carto::GenericObject *model=0) const
Dit si le potentiel d'une clique, après une transformation de labels de noeuds, a pu changer,...
virtual int corticalSS2NearestOffset(bool normalized, const Clique *, int major, int minor) const
virtual int corticalSS1NearestOffset(bool normalized, const Clique *, int major, int minor) const
virtual int junctionLengthOffset(bool normalized, const Clique *, int major, int minor) const
virtual int foldSurfaceValidOffset(bool normalized, const Clique *, int major, int minor) const
virtual std::string hullJunctionExtremity1Attribute(bool normalized, const Clique *, int major, int minor) const