]> Creatis software - clitk.git/blob - vv/vvSaveState.h
Debug RTStruct conversion with empty struc
[clitk.git] / vv / vvSaveState.h
1 #ifndef VVSAVESTATE_H
2 #define VVSAVESTATE_H
3
4 #include <string>
5 #include <memory>
6 #include "vvSlicerManager.h"
7
8 class vvMainWindow;
9 class QXmlStreamWriter;
10 class QFile;
11 class QTreeWidgetItem;
12
13 class vvSaveState
14 {
15 public:
16   vvSaveState();
17   virtual ~vvSaveState();
18   
19   virtual void Run(vvMainWindow* vvWindow, const std::string& file);
20     
21 protected:
22   
23   void SaveGlobals();
24   void SaveGUI();
25   void SaveTree();
26   void SaveTools();
27   void SaveImage(const QTreeWidgetItem* item, int index);
28   void SaveFusion(const QTreeWidgetItem* item, const vvSlicerManager* slicerManager);
29   void SaveOverlay(const QTreeWidgetItem* item, const vvSlicerManager* slicerManager);
30   void SaveVector(const QTreeWidgetItem* item);
31   void SaveLink(const vvSlicerManager* slicerManager);
32
33 #if __cplusplus > 199711L
34   std::shared_ptr<QXmlStreamWriter> m_XmlWriter;
35   std::shared_ptr<QFile> m_File;
36 #else
37   std::auto_ptr<QXmlStreamWriter> m_XmlWriter;
38   std::auto_ptr<QFile> m_File;
39 #endif
40   vvMainWindow* m_Window;
41 };
42
43 #endif // VVSAVESTATE_H