VRG3D::SynchedSystem Class Reference

#include <SynchedSystem.H>

List of all members.

Public Types

enum  TimeUpdateMethod { USE_LOCAL_SYSTEM_TIME, PROGRAM_UPDATES_TIME }

Static Public Member Functions

static double getLocalTime ()
 Programs should access the time through these methods.
static double getAppStartTime ()
static double getAppRunningTime ()
static void setProgramUpdatesTime (double applicationStartTime)
static void updateLocalTime (double t)
static TimeUpdateMethod getTimeUpdateMethod ()

Static Protected Attributes

static TimeUpdateMethod _timeUpdateMethod
static double _appStartTime
static double _localTime


Detailed Description

This is a static class that reproduces some of the functionality of G3D::System for use specifically in clustered rendering environments. For example, when doing animation based on the system's clock you want the time to be the same across all the rendering nodes, so you can't use System::getLocalTime() because it will be slightly off between the various nodes. Instead, use SynchedSystem::getLocalTime() and the value for time will be the same across all walls, although, it will only be as accurate as the rate at which the time is updated from the vrg3d event server, which will be once per frame.

Member Enumeration Documentation

Enumerator:
USE_LOCAL_SYSTEM_TIME 
PROGRAM_UPDATES_TIME 


Member Function Documentation

static double VRG3D::SynchedSystem::getLocalTime (  )  [static]

Programs should access the time through these methods.

Referenced by getAppRunningTime().

static double VRG3D::SynchedSystem::getAppStartTime (  )  [inline, static]

References _appStartTime.

static double VRG3D::SynchedSystem::getAppRunningTime (  )  [inline, static]

References _appStartTime, and getLocalTime().

static void VRG3D::SynchedSystem::setProgramUpdatesTime ( double  applicationStartTime  )  [static]

Called by VRApp when running as a cluster client to initialize the system.

static void VRG3D::SynchedSystem::updateLocalTime ( double  t  )  [static]

Called by VRApp when running as a cluster client once per frame when it receives a new timing event from the synchronization server.

static TimeUpdateMethod VRG3D::SynchedSystem::getTimeUpdateMethod (  )  [inline, static]

References _timeUpdateMethod.


Member Data Documentation

Referenced by getTimeUpdateMethod().

double VRG3D::SynchedSystem::_appStartTime [static, protected]

double VRG3D::SynchedSystem::_localTime [static, protected]


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

Generated on Wed Jan 26 06:36:00 2011 for VRG3D by  doxygen 1.5.6