SignStateManager.h

Go to the documentation of this file.
00001 #ifndef _SIGNSTATEMANAGER_H_
00002 #define _SIGNSTATEMANAGER_H_
00003 
00014 #include <vector>
00015 #include <string>
00016 #include <map>
00017 #include <SignDLL.h>
00018 
00019 
00020 class SignState;
00021 class SignContext;
00022 class vtkKWFrame;
00023 
00024 typedef std::map<std::string,SignState*> StateMap;
00025 
00026 class SIGN_EXPORT SignStateManager
00027 {
00028 public:
00031         SignStateManager(SignContext* newSignContext);
00032 
00034         ~SignStateManager();
00035 
00042         SignState* SaveState(std::string name,vtkKWFrame* frame);
00043 
00048         SignState* RestoreState(std::string name);
00049 
00053         void DeleteState(std::string name);
00054 
00058         bool CheckState(std::string name);
00059 
00062         SignState* GetCurrentState();
00063 
00064 private:
00065         StateMap states;
00066         SignState* currentState;
00067         SignContext* signContext;
00068 
00070         void RestoreFiducials(SignState* state);
00072         void RestoreViewers(SignState* state);
00074         void RestoreTransferFunctions(SignState* state);
00075 
00076         SignStateManager(); // reserves the name
00077 };
00078 
00079 #endif

Generated on Mon Feb 26 12:11:16 2007 for TheSIGN by  doxygen 1.4.6