31 #ifndef __CU_TIMESTAMP_H__
32 #define __CU_TIMESTAMP_H__
34 #include "../base/CUBase.h"
38 #pragma mark Clock Data Types
41 typedef std::chrono::steady_clock cuclock_t;
43 typedef cuclock_t::time_point timestamp_t;
48 #pragma mark TimeStamp Class
66 #pragma mark Constructors
120 _time = cuclock_t::now();
123 #pragma mark Reading Time
146 auto elapsed = std::chrono::duration_cast<std::chrono::milliseconds>(end.
getTime()-start.
getTime());
147 return (Uint64)elapsed.count();
177 auto elapsed = std::chrono::duration_cast<std::chrono::microseconds>(end.
getTime()-start.
getTime());
178 return (Uint64)elapsed.count();
208 auto elapsed = std::chrono::duration_cast<std::chrono::nanoseconds>(end.
getTime()-start.
getTime());
209 return (Uint64)elapsed.count();
228 #pragma mark Operators
243 _time += std::chrono::milliseconds(millis);
260 _time -= std::chrono::milliseconds(millis);
long ellapsedNanos(const Timestamp &stamp)
Definition: CUTimestamp.h:224
timestamp_t _time
Definition: CUTimestamp.h:64
static Uint64 ellapsedNanos(const Timestamp &start, const Timestamp &end)
Definition: CUTimestamp.h:207
const Timestamp & operator=(const Timestamp &stamp)
Definition: CUTimestamp.h:95
Definition: CUTimestamp.h:61
const Timestamp operator-(Uint32 millis) const
Definition: CUTimestamp.h:292
static Uint64 ellapsedMicros(const Timestamp &start, const Timestamp &end)
Definition: CUTimestamp.h:176
Timestamp()
Definition: CUTimestamp.h:73
timestamp_t getTime() const
Definition: CUTimestamp.h:133
Timestamp & operator-=(Uint32 millis)
Definition: CUTimestamp.h:259
Timestamp(const Timestamp &stamp)
Definition: CUTimestamp.h:83
Uint64 ellapsedMillis(const Timestamp &stamp) const
Definition: CUTimestamp.h:162
Uint64 ellapsedMicros(const Timestamp &stamp) const
Definition: CUTimestamp.h:193
const Timestamp & set(const Timestamp &stamp)
Definition: CUTimestamp.h:109
Timestamp & operator+=(Uint32 millis)
Definition: CUTimestamp.h:242
Definition: CUAnimationNode.h:52
void mark()
Definition: CUTimestamp.h:119
const Timestamp operator+(Uint32 millis) const
Definition: CUTimestamp.h:276
static Uint64 ellapsedMillis(const Timestamp &start, const Timestamp &end)
Definition: CUTimestamp.h:145