]> Creatis software - creaMaracasVisu.git/blob - lib/maracasVisuLib/src/interface/wxWindows/widgets/imageUndoRedo/imageInfoUR.h
d55baf49708e53a9af820506bc74c760d9743d81
[creaMaracasVisu.git] / lib / maracasVisuLib / src / interface / wxWindows / widgets / imageUndoRedo / imageInfoUR.h
1 /*
2  * ImageInfo.h
3  *
4  *  Created on: Sep 22, 2011
5  *      Author: caceres
6  */
7
8 #ifndef IMAGEINFO_H_
9 #define IMAGEINFO_H_
10
11 #include <iostream>
12 #include <string>
13 #include <vtkImageData.h>
14 #include <vtkMetaImageWriter.h>
15 #include <vtkMetaImageReader.h>
16 #include <vtkSmartPointer.h>
17 #include "regionStructUR.h"
18
19 class ImageInfoUR {
20
21 public:
22         typedef vtkSmartPointer<vtkImageData> VTKImageDataPointerType;
23         typedef vtkSmartPointer<vtkMetaImageReader> VTKMetaImageReaderPointerType;
24         typedef vtkSmartPointer<vtkMetaImageWriter> VTKMetaImageWriterPointerType;
25         typedef std::string StringType;
26 public:
27         ImageInfoUR();
28         virtual ~ImageInfoUR();
29         void SetImageName(const StringType &imgName);
30         void SetRegion(const RegionStructUR &region);
31         void SetStatus(const bool& onMemory);
32         void SetImage(VTKImageDataPointerType img);
33         void RemoveImageFromMemory(const StringType& gPath);
34         void LoadImageMHDToMemory(const StringType& gPath);
35         void SaveImageAsMHD(const StringType& gPath);
36         void RemoveImageFromDisk(const StringType& gPath);
37         VTKImageDataPointerType GetImage();
38         StringType GetImageName();
39         RegionStructUR GetRegion();
40         bool GetStatus();
41
42 private:
43         VTKImageDataPointerType m_Image;
44         StringType m_ImageName;
45         RegionStructUR m_Region;
46         bool m_OnMemory;
47         bool m_OnDisk;
48
49 };
50
51 #endif /* IMAGEINFO_H_ */