]> Creatis software - cpPlugins.git/blob - lib/cpPlugins/OrthoNormalBase.h
Ortho normal bases added.
[cpPlugins.git] / lib / cpPlugins / OrthoNormalBase.h
1 #ifndef __CPPLUGINS__ORTHONORMALBASE__H__
2 #define __CPPLUGINS__ORTHONORMALBASE__H__
3
4 #include <cpPlugins/DataObject.h>
5
6 namespace cpPlugins
7 {
8   /**
9    */
10   class cpPlugins_EXPORT OrthoNormalBase
11     : public DataObject
12   {
13   public:
14     typedef OrthoNormalBase                 Self;
15     typedef DataObject                      Superclass;
16     typedef itk::SmartPointer< Self >       Pointer;
17     typedef itk::SmartPointer< const Self > ConstPointer;
18
19   public:
20     itkNewMacro( Self );
21     itkTypeMacro( OrthoNormalBase, DataObject );
22     cpPlugins_Id_Macro( OrthoNormalBase, Object );
23
24   public:
25     virtual void SetITK( itk::LightObject* o ) ITK_OVERRIDE;
26     virtual void SetVTK( vtkObjectBase* o ) ITK_OVERRIDE;
27
28     template< class _TMatrix >
29       inline void SetITK( const _TMatrix& m );
30
31   protected:
32     OrthoNormalBase( );
33     virtual ~OrthoNormalBase( );
34
35     virtual void _CreateVTKActor( ) const ITK_OVERRIDE;
36
37   private:
38     // Purposely not implemented
39     OrthoNormalBase( const Self& );
40     Self& operator=( const Self& );
41   };
42
43 } // ecapseman
44
45 #include <cpPlugins/OrthoNormalBase.hxx>
46
47 #endif // __CPPLUGINS__ORTHONORMALBASE__H__
48
49 // eof - $RCSfile$