File: BrainModelSurfaceFlattenPartialHemisphere.h

package info (click to toggle)
caret 5.6.4~dfsg.1-3
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd, wheezy
  • size: 31,904 kB
  • ctags: 28,901
  • sloc: cpp: 378,050; python: 6,718; ansic: 5,507; makefile: 333; sh: 46
file content (41 lines) | stat: -rw-r--r-- 1,298 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41

#ifndef __BRAIN_MODEL_SURFACE_FLATTEN_PARTIAL_HEMISPHERE_H__
#define __BRAIN_MODEL_SURFACE_FLATTEN_PARTIAL_HEMISPHERE_H__

#include "BrainModelAlgorithm.h"

class BrainModelSurface;

/// This class flattens a partial hemisphere
class BrainModelSurfaceFlattenPartialHemisphere : public BrainModelAlgorithm {
   public:
      /// type of surface being flattened
      enum FLATTEN_TYPE {
         FLATTEN_TYPE_ELLIPSOID,
         FLATTEN_TYPE_FIDUCIAL
      };
      
      /// Constructor
      BrainModelSurfaceFlattenPartialHemisphere(BrainModelSurface* fiducialSurfaceIn,
                                                BrainModelSurface* partialHemisphereSurfaceIn,
                                                const FLATTEN_TYPE flattenSurfaceTypeIn);

      /// Destructor
      ~BrainModelSurfaceFlattenPartialHemisphere();
      
      /// Execute the flattening
      virtual void execute() throw (BrainModelAlgorithmException);
      
   protected:
      /// fiducial surface
      BrainModelSurface* fiducialSurface;
      
      /// partial hemisphere surface being flattened
      BrainModelSurface* partialHemisphereSurface;
      
      /// type of surface being flattened
      FLATTEN_TYPE flattenSurfaceType;
};

#endif // __BRAIN_MODEL_SURFACE_FLATTEN_PARTIAL_HEMISPHERE_H__