]> Creatis software - crea.git/blob - src/creaVtk.h
417438ec74ae765460c55abac4725e71db73e962
[crea.git] / src / creaVtk.h
1 #ifndef __creaVtk_h_INCLUDED__
2 #define __creaVtk_h_INCLUDED__
3
4 #ifdef USE_VTK
5
6 #include <creaSystem.h>
7 #include <vtkImageData.h>
8
9 namespace crea
10 {
11
12   template <class T>
13   vtkImageData* CREA_EXPORT NewVtkImageDataFromRaw( T* data,
14                                                     int nx, 
15                                                     int ny,
16                                                     int nz,
17                                                         bool do_not_desalloc = true);
18
19   /*
20     // Already provided by vtkTypeTraits<T>::VTKTypeID()
21   template <class T>
22   int GetVtkType(T&) { return VTK_VOID; }
23
24 #define SPECIALIZE_GETVTKIDTYPE(T,R) \
25   template <> int GetVtkType<T>(T&) { return R; }  
26
27   SPECIALIZE_GETVTKIDTYPE(char,VTK_CHAR)
28   SPECIALIZE_GETVTKIDTYPE(signed char,VTK_SIGNED_CHAR)
29   SPECIALIZE_GETVTKIDTYPE(unsigned char,VTK_UNSIGNED_CHAR)
30   SPECIALIZE_GETVTKIDTYPE(short,VTK_SHORT)
31   SPECIALIZE_GETVTKIDTYPE(unsigned short,VTK_UNSIGNED_SHORT)
32   SPECIALIZE_GETVTKIDTYPE(int,VTK_INT)
33   SPECIALIZE_GETVTKIDTYPE(unsigned int,VTK_UNSIGNED_INT)
34   SPECIALIZE_GETVTKIDTYPE(long,VTK_LONG)
35   SPECIALIZE_GETVTKIDTYPE(unsigned long,VTK_UNSIGNED_LONG)
36   SPECIALIZE_GETVTKIDTYPE(float,VTK_FLOAT)
37   SPECIALIZE_GETVTKIDTYPE(double,VTK_DOUBLE)
38
39 #undef SPECIALIZE_GETVTKIDTYPE
40   */
41 }
42
43 #include <creaVtk.txx>
44
45
46 #endif // USE_VTK
47 #endif // __creaVtk_h_INCLUDED__