]> Creatis software - creaMaracasVisu.git/blob - lib/maracasVisuLib/src/interface/wxWindows/widgets/imageUndoRedo/imageDequeUR.h
DFCH
[creaMaracasVisu.git] / lib / maracasVisuLib / src / interface / wxWindows / widgets / imageUndoRedo / imageDequeUR.h
1 /*
2  * ImageDeque.h
3  *
4  *  Created on: Sep 22, 2011
5  *      Author: caceres
6  */
7
8 #ifndef IMAGEDEQUE_H_
9 #define IMAGEDEQUE_H_
10
11 #include <iostream>
12 #include <string>
13 #include <deque>
14 #include <unistd.h>
15 #include <vtkImageData.h>
16 #include <vtkSmartPointer.h>
17 #include "imageInfoUR.h"
18 #include "imageModificationManager.h"
19
20 class ImageDequeUR {
21 public:
22         typedef std::deque<ImageInfoUR*> ImageInfoDeque;
23         typedef vtkSmartPointer<vtkImageData> VTKImageDataPointerType;
24         typedef std::string StringType;
25         typedef ImageMManager ImageMManagerType;
26 public:
27         ImageDequeUR();
28         virtual ~ImageDequeUR();
29         virtual void AddImageToUndoContainer(VTKImageDataPointerType img,
30                         ImageMManager* imMManager);
31         virtual void AddImageToRedoContainer(VTKImageDataPointerType img,
32                         ImageMManager* imMManager);
33         virtual void CleanUndoContainerFromIndex(const int& index);
34         virtual void CleanRedoContainerFromIndex(const int& index);
35         virtual void CleanContainers();
36         virtual void ManageMemory();
37         virtual ImageInfoUR* Undo();
38         virtual ImageInfoUR* Redo();
39 };
40
41 #endif /* IMAGEDEQUE_H_ */