00001 #ifndef BALL_VIEW_KERNEL_SNAPSHOT_MANAGER_INTERFACE_H 00002 #define BALL_VIEW_KERNEL_SNAPSHOT_MANAGER_INTERFACE_H 00003 00004 #include <BALL/MOLMEC/COMMON/snapShotManager.h> 00005 00006 #include <vector> 00007 #include <deque> 00008 00009 namespace BALL 00010 { 00011 class String; 00012 00013 namespace VIEW 00014 { 00015 class SnapshotManagerInterface 00016 { 00017 public: 00018 SnapshotManagerInterface(); 00019 void setup(); 00020 void takeSnapshot(const String& name); 00021 void applySnapshot(unsigned int i); 00022 00023 void rename(unsigned int i, const String& name); 00024 00025 protected: 00026 unsigned int num_snapshots_; 00027 std::vector<boost::shared_ptr<SnapShotManager> > managers_; 00028 std::deque<String> names_; 00029 }; 00030 00031 } 00032 } 00033 00034 #endif //BALL_VIEW_KERNEL_SNAPSHOT_MANAGER_INTERFACE_H