00001 #ifndef _QG_SESSION_HANDLER_HH_ 00002 #define _QG_SESSION_HANDLER_HH_ 00003 00011 #include <map> 00012 #include <string> 00013 #include <Rtypes.h> 00014 #include "QGTextFileKeys.hh" 00015 00016 class QGCalibrationWindow; 00017 class QGCanvasWindow; 00018 class QGPlot; 00019 00020 class QGSessionHandler { 00021 public: 00023 QGSessionHandler(); 00024 00026 virtual ~QGSessionHandler(); 00027 00029 void OpenSession(QGCanvasWindow *window = 0); 00030 00032 void OpenSession(std::string filename, QGCanvasWindow *window = 0); 00033 00035 void SaveSession(); 00036 00038 void SaveSession(std::string filename); 00039 00040 private: 00042 std::map<std::string, QGCanvasWindow*> fCanvasWindowsMap; 00043 00045 QGCalibrationWindow *fCurrentCalibrationWindow; 00046 00048 QGCanvasWindow *fCurrentCanvasWindow; 00049 00051 QGPlot *fCurrentPlot; 00052 00053 ClassDef(QGSessionHandler, 0) 00054 }; 00055 00056 #endif