]> Creatis software - clitk.git/blob - common/vvImage.h
removed headers
[clitk.git] / common / vvImage.h
1 #ifndef VVIMAGE_H
2 #define VVIMAGE_H
3 #include <iostream>
4 #include <vector>
5 #include <itkObjectFactory.h>
6
7 class vtkImageData;
8
9 class vvImage : public itk::LightObject {
10 public :
11   typedef vvImage Self;
12   typedef itk::SmartPointer<Self> Pointer;
13   itkNewMacro(Self);
14
15   void Init();
16   void SetImage(std::vector<vtkImageData*> images);
17   void AddImage(vtkImageData* image);
18   const std::vector<vtkImageData*>& GetVTKImages();
19   vtkImageData* GetFirstVTKImageData();
20   
21   int GetNumberOfDimensions() const;
22   int GetNumberOfSpatialDimensions();
23   ///Writes the scalar range to the provided array, which must have room for two doubles
24   void GetScalarRange(double* range);
25   unsigned long GetActualMemorySize();
26   std::vector<double> GetSpacing();
27   std::vector<double> GetOrigin() const;
28   std::vector<int> GetSize();
29   std::string GetScalarTypeAsString();
30   int GetNumberOfScalarComponents();
31   int GetScalarSize();
32   bool IsTimeSequence();
33   bool IsScalarTypeInteger();
34   bool IsScalarTypeInteger(int t);
35
36 private:
37   vvImage();
38   ~vvImage();
39   std::vector<vtkImageData*> mVtkImages;
40
41 };
42
43 #endif