4 * Created on: Sep 22, 2011
7 #include "imageInfoUR.h"
9 ImageInfoUR::ImageInfoUR() {
10 this->m_OnMemory = false;
11 this->m_OnDisk = false;
14 ImageInfoUR::~ImageInfoUR() {
17 void ImageInfoUR::SetImageName(const StringType &imgName) {
18 this->m_ImageName = imgName;
20 void ImageInfoUR::SetImageMManager(ImageMManagerType* imMManager) {
21 this->m_ImageMManager = imMManager;
23 void ImageInfoUR::SetStatus(const bool& onMemory) {
24 this->m_OnMemory = onMemory;
26 void ImageInfoUR::SetImage(VTKImageDataPointerType img) {
28 this->SetStatus(true);
30 ImageInfoUR::StringType ImageInfoUR::GetImageName() {
31 return (this->m_ImageName);
34 ImageInfoUR::VTKImageDataPointerType ImageInfoUR::GetImage() {
35 return (this->m_Image);
38 ImageInfoUR::ImageMManagerType* ImageInfoUR::GetImageMManager() {
39 return (this->m_ImageMManager);
41 bool ImageInfoUR::GetStatus() {
42 return (this->m_OnMemory);
44 void ImageInfoUR::RemoveImageFromMemory(const StringType& gPath) {
45 if (!this->m_OnDisk) {
46 this->SaveImageAsMHD(gPath);
49 this->SetStatus(false);
51 void ImageInfoUR::LoadImageMHDToMemory(const StringType& gPath) {
52 StringType filename = gPath + this->m_ImageName;
53 VTKMetaImageReaderPointerType reader = VTKMetaImageReaderPointerType::New();
54 reader->SetFileName(filename.c_str());
55 this->m_Image = reader->GetOutput();
56 this->m_Image->Update();
57 this->m_OnMemory = true;
59 void ImageInfoUR::SaveImageAsMHD(const StringType& gPath) {
60 this->m_OnDisk = true;
61 StringType filename = gPath + this->m_ImageName;
62 VTKMetaImageWriterPointerType w = VTKMetaImageWriterPointerType::New();
63 w->SetInput(this->m_Image);
64 w->SetCompression(false);
65 w->SetFileDimensionality(this->m_Image->GetDataDimension());
66 w->SetFileName(filename.c_str());
70 void ImageInfoUR::RemoveImageFromDisk(const StringType& gPath) {