39 #include "NptStrings.h" 44 #define NPT_DATETIME_YEAR_MIN 1901 45 #define NPT_DATETIME_YEAR_MAX 2262 56 NPT_TimeStamp(NPT_Int64 nanoseconds) : m_NanoSeconds(nanoseconds) {}
60 bool operator==(
const NPT_TimeStamp& t)
const {
return m_NanoSeconds == t.m_NanoSeconds; }
61 bool operator!=(
const NPT_TimeStamp& t)
const {
return m_NanoSeconds != t.m_NanoSeconds; }
62 bool operator> (
const NPT_TimeStamp& t)
const {
return m_NanoSeconds > t.m_NanoSeconds; }
63 bool operator< (
const NPT_TimeStamp& t)
const {
return m_NanoSeconds < t.m_NanoSeconds; }
64 bool operator>=(
const NPT_TimeStamp& t)
const {
return m_NanoSeconds >= t.m_NanoSeconds; }
65 bool operator<=(
const NPT_TimeStamp& t)
const {
return m_NanoSeconds <= t.m_NanoSeconds; }
68 void SetNanos(NPT_Int64 nanoseconds) { m_NanoSeconds = nanoseconds; }
69 void SetMicros(NPT_Int64 micros) { m_NanoSeconds = micros * 1000; }
70 void SetMillis(NPT_Int64 millis) { m_NanoSeconds = millis * 1000000; }
71 void SetSeconds(NPT_Int64 seconds) { m_NanoSeconds = seconds * 1000000000; }
74 operator double()
const {
return (
double)m_NanoSeconds/1E9; }
75 void FromNanos(NPT_Int64 nanoseconds) { m_NanoSeconds = nanoseconds; }
76 NPT_Int64 ToNanos()
const {
return m_NanoSeconds; }
77 NPT_Int64 ToMicros()
const {
return m_NanoSeconds/1000; }
78 NPT_Int64 ToMillis()
const {
return m_NanoSeconds/1000000; }
79 NPT_Int64 ToSeconds()
const {
return m_NanoSeconds/1000000000; }
83 NPT_Int64 m_NanoSeconds;
127 FLAG_EMIT_FRACTION = 1,
128 FLAG_EXTENDED_PRECISION = 2
132 NPT_Int32 GetLocalTimeZone();
139 NPT_Result ChangeTimeZone(NPT_Int32 timezone);
140 NPT_Result FromTimeStamp(
const NPT_TimeStamp& timestamp,
bool local=
false);
142 NPT_Result FromString(
const char* date, Format format = FORMAT_ANSI);
143 NPT_String ToString(Format format = FORMAT_ANSI, NPT_Flags flags=0)
const;
152 NPT_Int32 m_NanoSeconds;
153 NPT_Int32 m_TimeZone;
156 #endif // _NPT_TIME_H_
Definition: NptTime.h:116
Definition: NptStrings.h:57