Files
eepp/include/eepp/system/clock.hpp
2023-03-16 01:02:56 -03:00

36 lines
708 B
C++

#ifndef EE_SYSTEMCTIMER_H
#define EE_SYSTEMCTIMER_H
#include <eepp/system/time.hpp>
namespace EE { namespace System {
namespace Platform {
class ClockImpl;
}
class EE_API Clock {
public:
/** Clock constructor. Must be called from the same thread that calls GetElapsedTime() */
Clock();
~Clock();
/** Restarts the timer */
void restart();
/** @returns time since initialisation or last reset */
Time getElapsedTime() const;
/** Time in time elapsed between this call and the last call to Elapsed()
* This is the equivalent to call GetElapsedTime() and then Restart().
*/
Time getElapsedTimeAndReset();
private:
Platform::ClockImpl* mClockImpl;
};
}} // namespace EE::System
#endif