All Classes Namespaces Files Functions Variables Enumerations Enumerator
libs/system/ManagedTicks.h
Go to the documentation of this file.
00001 #ifndef QRK_MANAGED_TICKS_H
00002 #define QRK_MANAGED_TICKS_H
00003 
00013 #include <memory>
00014 
00015 
00016 namespace qrk
00017 {
00019     class ManagedTicks
00020     {
00021     public:
00022         typedef long (*TicksFunction)(void);
00023 
00024         ManagedTicks(void);
00025         ~ManagedTicks(void);
00026 
00027         void setTicksFunction(TicksFunction function);
00028 
00029         long ticks(void) const;
00030 
00031         // !!! 速度率の最大、最小を定義できるようにする
00032 
00033         void play(void);
00034         void pause(void);
00035         void resume(void);
00036         void moreFaster(void);
00037         void moreSlower(void);
00038 
00039     private:
00040         ManagedTicks(const ManagedTicks& rhs);
00041         ManagedTicks& operator = (const ManagedTicks& rhs);
00042 
00043         struct pImpl;
00044         std::auto_ptr<pImpl> pimpl;
00045     };
00046 }
00047 
00048 #endif /* !QRK_MANAGED_TICKS_H */