CCSDateTime& CCSDateTime::Assign( int year, int month, int day, int hour /*= 0*/, int minute /*= 0*/, int second /*= 0*/, int milliscond /*= 0*/, int microseccond /*= 0 */ ) { assert (year >= 0 && year <= 9999); assert (month >= 1 && month <= 12); assert (day >= 1 && day <= DaysOfMonth(year, month)); assert (hour >= 0 && hour <= 23); assert (minute >= 0 && minute <= 59); assert (second >= 0 && second <= 59); assert (milliscond >= 0 && milliscond <= 999); assert (microseccond >= 0 && microseccond <= 999); m_ts = ToUtcTime( ToJulianDay( year, month, day, hour) + 10 * ( hour * CCSTimeSpan::HOURS + minute * CCSTimeSpan::MINUTES + second * CCSTimeSpan::SECONDS + milliscond * CCSTimeSpan::MILLISECONDS + microseccond )); m_year = year; m_month = month; m_day = day; m_hour = hour; m_minute = minute; m_second = second; m_millisecond = milliscond; m_microsecond = microseccond; return (*this); }
CCSDateTime::CCSDateTime( int year, int month, int day, int hour /*= 0*/, int minutes /*= 0*/, int seconds /*= 0*/, int milliseconds /*= 0*/, int microseconds /*= 0 */ ) : m_year( year ) , m_month( month ) , m_day( day ) , m_hour( hour ) , m_minute( minutes ) , m_second( seconds ) , m_millisecond( milliseconds ) , m_microsecond( microseconds ) { assert(year >= 0 && year <= 9999); assert (month >= 1 && month <= 12); assert (day >= 1 && day <= DaysOfMonth(year, month)); assert (hour >= 0 && hour <= 23); assert (minutes >= 0 && minutes <= 59); assert (seconds >= 0 && seconds <= 59); assert (milliseconds >= 0 && milliseconds <= 999); assert (microseconds >= 0 && microseconds <= 999); m_ts = ToUtcTime( ToJulianDay( year, month, day, hour) + 10 * ( hour * CCSTimeSpan::HOURS + minutes * CCSTimeSpan::MINUTES + seconds * CCSTimeSpan::SECONDS + milliseconds * CCSTimeSpan::MILLISECONDS + microseconds )); }
double CCSDateTime::JulianDay() const { return ToJulianDay( m_ts ); }
inline double ToJulianDay(const QDateTime & date) { return ToJulianDay(date.date()); }