VR-Forces Development_Version Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes
makVrv::DtDeTimeManager Class Reference

The time manager is responsible for maintaining the currenting date and time of the scene. More...

Public Types

enum  Month {
  January = 1, February, March, April,
  May, June, July, August,
  September, October, November, December
}

Public Member Functions

 DtDeTimeManager (DtDe &de)
 !
virtual ~DtDeTimeManager ()
 DTOR.
virtual void setReferenceDateAndTime (int year, Month month, int dayOfMonth, int hours, int minutes, double seconds)
 Set the reference date and time, used for calculating the current date and time.
virtual void getReferenceDateAndTime (int &year, Month &month, int &dayOfMonth, int &hours, int &minutes, double &seconds) const
 Get the last set date.
virtual void syncReferenceDateAndTime ()
 Set the reference date and time to the current date and time.
virtual void setUseGlobalTimeZone (bool)
 When displaying the sun/moon position, use the observer (default, suppling false to this method) or use the current GMT time (supplying true to this method)
virtual bool useGlobalTimeZone () const
 Returns whether or not to use GMT Time for observer.
virtual void calculateCurrentDateAndTime (int &year, Month &month, int &dayOfMonth, int &hour, int &minutes, double &seconds) const
 Calculate the current date and time based upon the simulation time passes since the reference was set.
virtual double timeScale () const
 Get the time scale.
virtual void setTimeScale (double timeScale)
 Set the time scale, this will also set the time base upon the current time scale.
virtual void getRecord (makArchives::DtDateTimeRecord &record) const
 Fill out a record with the current date/time and timescale.

Static Public Member Functions

static bool isYearALeapYear (int year)
 Check to see if this is a leap year.
static int daysInTheMonthOf (int year, Month month)
 Get the number of days in a month.
static Month nextMonth (Month month)
 Get the next month.

Public Attributes

boost::signal< void(int year,
Month month, int day)> 
signal_dateChanged
 Signal when the date changes.
boost::signal< void(bool)> signal_useGlobalTimeZoneChanged
 Signal when using GMT time for observer changes.

Protected Member Functions

double timeSinceSet () const

Protected Attributes

DtDemyDe
int myYear
Month myMonth
int myDayOfTheMonth
int myHours
int myMinutes
double mySeconds
double mySimulationTimeAtSet
 The simulation time when the time was set.
double myTimeScaleFactor
 The amount that time scale with simulation time.
bool myUseGlobalTimeZone
 Whether or not to use GMT time for sun/moon position (if true will)

Detailed Description

The time manager is responsible for maintaining the currenting date and time of the scene.

It is also responsible for updating the time when the terrain changes, and querying the time of the observer.

Member Enumeration Documentation

Enumerator:
January 
February 
March 
April 
May 
June 
July 
August 
September 
October 
November 
December 

Constructor & Destructor Documentation

makVrv::DtDeTimeManager::DtDeTimeManager ( DtDe de)

!

CTOR

virtual makVrv::DtDeTimeManager::~DtDeTimeManager ( )
virtual

DTOR.

Member Function Documentation

virtual void makVrv::DtDeTimeManager::setReferenceDateAndTime ( int  year,
Month  month,
int  dayOfMonth,
int  hours,
int  minutes,
double  seconds 
)
virtual

Set the reference date and time, used for calculating the current date and time.

Set the current date.

virtual void makVrv::DtDeTimeManager::getReferenceDateAndTime ( int &  year,
Month month,
int &  dayOfMonth,
int &  hours,
int &  minutes,
double &  seconds 
) const
virtual

Get the last set date.

virtual void makVrv::DtDeTimeManager::syncReferenceDateAndTime ( )
virtual

Set the reference date and time to the current date and time.

virtual void makVrv::DtDeTimeManager::setUseGlobalTimeZone ( bool  )
virtual

When displaying the sun/moon position, use the observer (default, suppling false to this method) or use the current GMT time (supplying true to this method)

virtual bool makVrv::DtDeTimeManager::useGlobalTimeZone ( ) const
virtual

Returns whether or not to use GMT Time for observer.

virtual void makVrv::DtDeTimeManager::calculateCurrentDateAndTime ( int &  year,
Month month,
int &  dayOfMonth,
int &  hour,
int &  minutes,
double &  seconds 
) const
virtual

Calculate the current date and time based upon the simulation time passes since the reference was set.

static bool makVrv::DtDeTimeManager::isYearALeapYear ( int  year)
static

Check to see if this is a leap year.

static int makVrv::DtDeTimeManager::daysInTheMonthOf ( int  year,
Month  month 
)
static

Get the number of days in a month.

The year is necessary for getting Leap days.

static Month makVrv::DtDeTimeManager::nextMonth ( Month  month)
static

Get the next month.

virtual double makVrv::DtDeTimeManager::timeScale ( ) const
virtual

Get the time scale.

virtual void makVrv::DtDeTimeManager::setTimeScale ( double  timeScale)
virtual

Set the time scale, this will also set the time base upon the current time scale.

virtual void makVrv::DtDeTimeManager::getRecord ( makArchives::DtDateTimeRecord record) const
virtual

Fill out a record with the current date/time and timescale.

double makVrv::DtDeTimeManager::timeSinceSet ( ) const
protected

Member Data Documentation

boost::signal<void (int year, Month month, int day)> makVrv::DtDeTimeManager::signal_dateChanged

Signal when the date changes.

boost::signal<void (bool)> makVrv::DtDeTimeManager::signal_useGlobalTimeZoneChanged

Signal when using GMT time for observer changes.

DtDe& makVrv::DtDeTimeManager::myDe
protected
int makVrv::DtDeTimeManager::myYear
protected
Month makVrv::DtDeTimeManager::myMonth
protected
int makVrv::DtDeTimeManager::myDayOfTheMonth
protected
int makVrv::DtDeTimeManager::myHours
protected
int makVrv::DtDeTimeManager::myMinutes
protected
double makVrv::DtDeTimeManager::mySeconds
protected
double makVrv::DtDeTimeManager::mySimulationTimeAtSet
protected

The simulation time when the time was set.

This is used along with the current simulation time to get the current time of day.

double makVrv::DtDeTimeManager::myTimeScaleFactor
protected

The amount that time scale with simulation time.

bool makVrv::DtDeTimeManager::myUseGlobalTimeZone
protected

Whether or not to use GMT time for sun/moon position (if true will)


The documentation for this class was generated from the following file:

Document ID: Generated on Tue Mar 8 22:13:38 EST 2016 from SVN revision 162938
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)