1 #include <cpExtensions/IO/MementoState.h>
4 #include <vtkMetaImageReader.h>
5 #include <vtkMetaImageWriter.h>
8 // -------------------------------------------------------------------------
9 cpExtensions::IO::MementoState::MementoState()
14 // -------------------------------------------------------------------------
15 //cpExtensions::IO::MementoState::MementoState(long id, TPluginImage* _img)
17 // SetToMemento(_img);
21 //cpExtensions::IO::MementoState::SetToMemento(TPluginObject * _do)
23 // char base[] = "state";
24 // std::ostringstream oss;
27 // std::string str = oss.str();
28 // auto complement = str.c_str();
30 // std::string fileName(base);
31 // fileName.append(complement);
32 // fileName.append(".mhd");
34 // std::string fileNameRaw(base);
35 // fileNameRaw.append(complement);
36 // fileNameRaw.append(".raw");
37 //// save(fileName, fileNameRaw, _img);
40 // vtkSmartPointer<vtkMetaImageWriter> writer =
41 // vtkSmartPointer<vtkMetaImageWriter>::New();
43 // auto img = TPluginImage::New();
44 // img->SetSource(_do);
46 // // writer->SetInputData(_do->GetVTK<vtkDataObject>());
47 // writer->SetInputData(img->GetVTK<vtkDataObject>());
49 // writer->SetFileName(fileName.c_str());
50 // writer->SetRAWFileName(fileNameRaw.c_str());
58 cpExtensions::IO::MementoState::SetToMemento(cpPlugins::Interface::Image* _img)
60 char base[] = "state";
61 std::ostringstream oss;
64 std::string str = oss.str();
65 auto complement = str.c_str();
67 std::string fileName(base);
68 fileName.append(complement);
69 fileName.append(".mhd");
71 std::string fileNameRaw(base);
72 fileNameRaw.append(complement);
73 fileNameRaw.append(".raw");
74 save(fileName, fileNameRaw, _img);
80 //// -------------------------------------------------------------------------
81 //vtkSmartPointer<vtkMetaImageReader>
82 //cpExtensions::IO::MementoState::getMemento(long id)
84 // char base[] = "state";
85 // std::ostringstream oss;
87 // std::string str = oss.str();
88 // auto complement = str.c_str();
90 // std::string fileName(base);
91 // fileName.append(complement);
92 // fileName.append(".mhd");
93 // return load(fileName);
96 // -------------------------------------------------------------------------
98 cpExtensions::IO::MementoState::
99 save(const std::string& filename, const std::string& filenameRaw, cpPlugins::Interface::Image* img) {
101 vtkSmartPointer<vtkMetaImageWriter> writer =
102 vtkSmartPointer<vtkMetaImageWriter>::New();
103 writer->SetInputData(img->GetVTK< vtkImageData >());
104 writer->SetFileName(filename.c_str());
105 writer->SetRAWFileName(filenameRaw.c_str());
110 // -------------------------------------------------------------------------
111 vtkSmartPointer<vtkMetaImageReader>
112 cpExtensions::IO::MementoState::load(const std::string& filename) {
114 vtkSmartPointer<vtkMetaImageReader> reader =
115 vtkSmartPointer<vtkMetaImageReader>::New();
116 reader->SetFileName(filename.c_str());