C++ main module for gpm Package  1.0
GPM_3DSnowGraph.h
Go to the documentation of this file.
1 #ifndef GPM_3DSnowGraph_H
2 #define GPM_3DSnowGraph_H
3 
4 #include "GPM_Snow3DFunction.h"
5 #include "GPMIO_vtkPortGraph.h"
6 
247 class GPM_3DSnowGraph : public virtual GPMIO_vtkPortGraph{
248 
249  SP_OBJECT(GPM_3DSnowGraph);
250  // ATTRIBUTES
251 
252 public:
253 
254 
255 
256 private:
257 
258 
259 protected:
260  // METHODS
261 
262  // CONSTRUCTORS
263 
266  GPM_3DSnowGraph(void);
267 
268 
269 
270  // DESTRUCTORS
271 
272 
275  virtual ~GPM_3DSnowGraph(void);
276 
277 
278 
279 public:
282  inline static SP::GPM_3DSnowGraph New() {
283  SP::GPM_3DSnowGraph p(new GPM_3DSnowGraph(),GPM_3DSnowGraph::Delete());
284  p->setThis(p);
285  return p;
286  };
287 
290  tBoolean createPatternFunctions(SV::GPM_PatternFunction& patternFunctions) const;
291 
294  virtual void patternsMappingSignalEmit(const SVC::GPM_PatternFunction patternFunction,
295  const vector<vector<vector<tVertexIID> > >& fmappings) const;
296 
299  SP::GPM_PortGraph createPatternGraph(const int& eps,int idv[4], int idp[3][3] ) const;
302  SP::GPM_PortGraph createTransformerGraph(int idcp[3][2]) const;
305  void createGraph(const int& index);
308  SP::GPM_Snow3DFunction createPatternFunction(SP::GPM_PortGraph pattern,SP::GPM_PortGraph transformer,
309  const int pattern_idv[3],const int pattern_idp[3][3],
310  const int transformer_idcp[3][2]) const;
311 
312 private:
313  void createTetrahedron();
314  void createLozenge() ;
315 
316 
317 };
318 
319 #endif
SP::GPM_Snow3DFunction createPatternFunction(SP::GPM_PortGraph pattern, SP::GPM_PortGraph transformer, const int pattern_idv[3], const int pattern_idp[3][3], const int transformer_idcp[3][2]) const
create pattern function
Definition: GPM_3DSnowGraph.cpp:224
SP::GPM_PortGraph createTransformerGraph(int idcp[3][2]) const
create a transformer graph
Definition: GPM_3DSnowGraph.cpp:54
tBoolean createPatternFunctions(SV::GPM_PatternFunction &patternFunctions) const
create the date for rewriting graph
Definition: GPM_3DSnowGraph.cpp:286
virtual ~GPM_3DSnowGraph(void)
destroy
Definition: GPM_3DSnowGraph.cpp:9
This class describes a 3D Snow graph.
Definition: GPM_3DSnowGraph.h:247
#define tBoolean
Definition: types.h:35
SP::GPM_PortGraph createPatternGraph(const int &eps, int idv[4], int idp[3][3]) const
create a pattern graph
Definition: GPM_3DSnowGraph.cpp:14
static SP::GPM_3DSnowGraph New()
create a test class
Definition: GPM_3DSnowGraph.h:282
virtual void patternsMappingSignalEmit(const SVC::GPM_PatternFunction patternFunction, const vector< vector< vector< tVertexIID > > > &fmappings) const
signal emmiting when the matching of patterns is done
Definition: GPM_3DSnowGraph.cpp:250
void createGraph(const int &index)
create an initial graph
Definition: GPM_3DSnowGraph.cpp:104
GPM_3DSnowGraph(void)
create
Definition: GPM_3DSnowGraph.cpp:5
DEFINE_SPTR(GPM_3DSnowGraph)