00001 #ifndef __LOG_MANAGER_BASE_H__ 00002 #define __LOG_MANAGER_BASE_H__ 00003 00004 class LogManagerBase 00005 { 00006 public: 00007 LogManagerBase() : 00008 m_isPlaying(false), m_isRecording(false), m_playRatio(1.0){} 00009 virtual ~LogManagerBase(){} 00010 virtual void play() = 0; 00011 virtual bool record(double i_fps) = 0; 00012 virtual void faster() = 0; 00013 virtual void slower() = 0; 00014 virtual void head() = 0; 00015 virtual void tail() = 0; 00016 virtual void prev(int delta) = 0; 00017 virtual void next(int delta) = 0; 00018 virtual void move(double ratio) = 0; 00019 virtual unsigned int length() = 0; 00020 virtual double currentTime() = 0; 00021 virtual int updateIndex() = 0; 00022 virtual int index() = 0; 00023 virtual void clear() = 0; 00024 virtual double time() = 0; 00025 bool isPlaying(){ return m_isPlaying; } 00026 bool isRecording(){ return m_isRecording; } 00027 double playRatio() { return m_playRatio; } 00028 double fps() { return m_fps; } 00029 protected: 00030 bool m_isPlaying, m_isRecording; 00031 double m_playRatio, m_fps; 00032 }; 00033 #endif