2001-09-20 07:52:12 +08:00
|
|
|
#include <osg/FrameStamp>
|
|
|
|
|
|
|
|
using namespace osg;
|
|
|
|
|
|
|
|
FrameStamp::FrameStamp():Referenced()
|
|
|
|
{
|
|
|
|
}
|
|
|
|
|
|
|
|
FrameStamp::FrameStamp(const FrameStamp& fs):Referenced()
|
|
|
|
{
|
|
|
|
_frameNumber = fs._frameNumber;
|
|
|
|
_referenceTime = fs._referenceTime;
|
|
|
|
|
|
|
|
tm_sec = fs.tm_sec; /* Seconds. [0-60] (1 leap second) */
|
|
|
|
tm_min = fs.tm_min; /* Minutes. [0-59] */
|
|
|
|
tm_hour = fs.tm_hour; /* Hours. [0-23] */
|
|
|
|
tm_mday = fs.tm_mday; /* Day. [1-31] */
|
|
|
|
tm_mon = fs.tm_mon; /* Month. [0-11] */
|
|
|
|
tm_year = fs.tm_year; /* Year - 1900. */
|
|
|
|
tm_wday = fs.tm_wday; /* Day of week. [0-6] */
|
|
|
|
tm_yday = fs.tm_yday; /* Days in year.[0-365] */
|
|
|
|
tm_isdst = fs.tm_isdst; /* DST. [-1/0/1]*/
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
FrameStamp::~FrameStamp()
|
|
|
|
{
|
|
|
|
}
|
|
|
|
|
|
|
|
FrameStamp& FrameStamp::operator = (const FrameStamp& fs)
|
|
|
|
{
|
|
|
|
if (this==&fs) return *this;
|
|
|
|
|
|
|
|
_frameNumber = fs._frameNumber;
|
|
|
|
_referenceTime = fs._referenceTime;
|
|
|
|
|
|
|
|
tm_sec = fs.tm_sec; /* Seconds. [0-60] (1 leap second) */
|
|
|
|
tm_min = fs.tm_min; /* Minutes. [0-59] */
|
|
|
|
tm_hour = fs.tm_hour; /* Hours. [0-23] */
|
|
|
|
tm_mday = fs.tm_mday; /* Day. [1-31] */
|
|
|
|
tm_mon = fs.tm_mon; /* Month. [0-11] */
|
|
|
|
tm_year = fs.tm_year; /* Year - 1900. */
|
|
|
|
tm_wday = fs.tm_wday; /* Day of week. [0-6] */
|
|
|
|
tm_yday = fs.tm_yday; /* Days in year.[0-365] */
|
|
|
|
tm_isdst = fs.tm_isdst; /* DST. [-1/0/1]*/
|
|
|
|
|
|
|
|
return *this;
|
|
|
|
}
|
|
|
|
|
2001-10-17 05:47:47 +08:00
|
|
|
void FrameStamp::setCalanderTime(const tm& ct)
|
2001-09-20 07:52:12 +08:00
|
|
|
{
|
|
|
|
tm_sec = ct.tm_sec; /* Seconds. [0-60] (1 leap second) */
|
|
|
|
tm_min = ct.tm_min; /* Minutes. [0-59] */
|
|
|
|
tm_hour = ct.tm_hour; /* Hours. [0-23] */
|
|
|
|
tm_mday = ct.tm_mday; /* Day. [1-31] */
|
|
|
|
tm_mon = ct.tm_mon; /* Month. [0-11] */
|
|
|
|
tm_year = ct.tm_year; /* Year - 1900. */
|
|
|
|
tm_wday = ct.tm_wday; /* Day of week. [0-6] */
|
|
|
|
tm_yday = ct.tm_yday; /* Days in year.[0-365] */
|
|
|
|
tm_isdst = ct.tm_isdst; /* DST. [-1/0/1]*/
|
|
|
|
}
|
|
|
|
|
2001-10-17 05:47:47 +08:00
|
|
|
void FrameStamp::getCalanderTime(tm& ct) const
|
2001-09-20 07:52:12 +08:00
|
|
|
{
|
|
|
|
ct.tm_sec = tm_sec; /* Seconds. [0-60] (1 leap second) */
|
|
|
|
ct.tm_min = tm_min; /* Minutes. [0-59] */
|
|
|
|
ct.tm_hour = tm_hour; /* Hours. [0-23] */
|
|
|
|
ct.tm_mday = tm_mday; /* Day. [1-31] */
|
|
|
|
ct.tm_mon = tm_mon; /* Month. [0-11] */
|
|
|
|
ct.tm_year = tm_year; /* Year - 1900. */
|
|
|
|
ct.tm_wday = tm_wday; /* Day of week. [0-6] */
|
|
|
|
ct.tm_yday = tm_yday; /* Days in year.[0-365] */
|
|
|
|
ct.tm_isdst = tm_isdst; /* DST. [-1/0/1]*/
|
|
|
|
}
|