30 lines
1.4 KiB
C++
30 lines
1.4 KiB
C++
#pragma once
|
|
|
|
#include "dtcore/inc/dtdefinitions.h"
|
|
|
|
#pragma warning(push)
|
|
#include <chrono>
|
|
#pragma warning(pop)
|
|
|
|
namespace dt
|
|
{
|
|
|
|
typedef std::chrono::duration<S64, std::micro> MicroSeconds;
|
|
typedef std::chrono::duration<S64, std::milli> MilliSeconds;
|
|
typedef std::chrono::duration<S64> Seconds;
|
|
typedef std::chrono::duration<S32, std::ratio<60>> Minutes;
|
|
typedef std::chrono::duration<S32, std::ratio<3600>> Hours;
|
|
typedef std::chrono::duration<S32, std::ratio<86400>> Days;
|
|
typedef std::chrono::duration<S32, std::ratio<604800>> Weeks;
|
|
typedef std::chrono::duration<S32, std::ratio<31556952>> Years;
|
|
|
|
inline constexpr MicroSeconds operator"" _us(unsigned long long value) { return MicroSeconds(value); }
|
|
inline constexpr MilliSeconds operator"" _ms(unsigned long long value) { return MilliSeconds(value); }
|
|
inline constexpr Seconds operator"" _s(unsigned long long value) { return Seconds(value); }
|
|
inline constexpr Minutes operator"" _min(unsigned long long value) { return Minutes(value); }
|
|
inline constexpr Hours operator"" _h(unsigned long long value) { return Hours(value); }
|
|
inline constexpr Days operator"" _d(unsigned long long value) { return Days(value); }
|
|
inline constexpr Weeks operator"" _w(unsigned long long value) { return Weeks(value); }
|
|
inline constexpr Years operator"" _y(unsigned long long value) { return Years(value); }
|
|
|
|
}
|