VR-Forces 5.0.1 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions
makVrf::DtHlaExerciseClock Class Reference
Inheritance diagram for makVrf::DtHlaExerciseClock:
Inheritance graph
[legend]

Public Member Functions

 DtHlaExerciseClock (DtExerciseConn *exerciseConn)
 
virtual ~DtHlaExerciseClock ()
 
virtual void init ()
 
virtual void tick ()
 
virtual DtTime fedTime () const
 
virtual DtTime lookahead () const
 
virtual DtTime effectiveSimTime () const
 
virtual void setInitialSimTime (DtTime time)
 
virtual bool enableTimeManagementMode (DtTime lookaheadInterval)
 
virtual bool disableTimeManagementMode ()
 
virtual bool isInTimeManagementMode () const
 
- Public Member Functions inherited from DtExerciseClock
 DtExerciseClock ()
 
 DtExerciseClock (const DtExerciseClock &orig)
 
DtExerciseClockoperator= (const DtExerciseClock &orig)
 
virtual ~DtExerciseClock ()
 
virtual void reset ()
 
virtual void pause ()
 
virtual void resume ()
 
virtual bool isPaused () const
 
virtual void setFixedFrameMode (DtTime dT)
 
virtual bool isFixedFrameMode () const
 
virtual void setRunToCompleteFrameMode ()
 
virtual bool isRunToCompleteFrameMode () const
 
virtual void setHybridFrameMode (DtTime dT)
 
virtual bool isHybridFrameMode () const
 
virtual void setFixedFrameRate (DtTime dT)
 
virtual DtTime fixedFrameRate () const
 
virtual void setTimeMultiplier (DtFloat64 timeMultiplier)
 
virtual DtFloat64 timeMultiplier () const
 
virtual void setFastForwardSettings (const DtFastForwardSettings &settings)
 
virtual DtStringelapsedSimTimeString (DtString &strBuffer) const
 
virtual void setExerciseStartTime (DtTime time)
 
virtual DtTime exerciseStartTime () const
 
virtual DtStringexerciseStartTimeString (DtString &strBuffer) const
 
virtual DtTime exerciseTime () const
 
virtual DtStringexerciseTimeString (DtString &strBuffer) const
 
virtual void setExerciseConnectionClockTime (double)
 
virtual void set_dT (DtTime dT)
 
virtual DtTime dT () const
 
virtual void setTimeStampType (DtTimeStampType)
 
DtTimeStampType timeStampType () const
 
virtual double simTimeScale () const
 
virtual void addTimeMultiplierUpdateCallback (DtCallbackList< DtFloat64 >::DtCallbackFunctionType, void *usr)
 
virtual void removeTimeMultiplierUpdateCallback (DtCallbackList< DtFloat64 >::DtCallbackFunctionType fcn, void *usr)
 
- Public Member Functions inherited from DtSimClock
 DtSimClock ()
 
 DtSimClock (const DtSimClock &orig)
 
DtSimClockoperator= (const DtSimClock &orig)
 
virtual ~DtSimClock ()
 

Static Public Member Functions

static void timeAdvanceGrantedCb (DtTimeManagementControl *tmControl, void *usr)
 
- Static Public Member Functions inherited from DtSimClock
static DtTime stringToSeconds (const DtString &timeString)
 
static DtStringsecondsToElapsedTimeString (DtTime seconds, DtString &strBuffer)
 
static DtStringsecondsToExerciseTimeString (DtTime seconds, DtString &strBuffer)
 
static void secondsToDaysHoursMinutesSeconds (DtTime secondsInput, int &days, int &hours, int &minutes, DtTime &seconds)
 
static DtTime daysHoursMinutesSecondsToSeconds (DtTime days, DtTime hours, DtTime minutes, DtTime seconds)
 
static bool processElapsedTimeString (const char *input, int &numDigitsFound, int &value1, int &value2, int &value3, int &value4)
 

Protected Member Functions

virtual bool startRegulatingTime (DtTime lookaheadInterval)
 
virtual bool stopRegulatingTime ()
 
virtual bool isTimeRegulating () const
 
virtual bool enableTimeConstrainedMode ()
 
virtual bool disableTimeConstrainedMode ()
 
virtual bool isTimeConstrained () const
 
virtual RTI::FedTime * createFederationTime (DtTime time=0.0) const
 
virtual RTI::FedTime * createFederationTimeInterval (DtTime time=0.0) const
 
virtual DtTimeManagementControlcreateTimeManagementControl () const
 
virtual void processTimeAdvanceGrantedCb (DtTimeManagementControl *tmControl)
 

Protected Attributes

DtExerciseConn * myExerciseConn
 
DtTimeManagementControlmyTimeManagementControl
 
RTI::FedTime * myInitialFederationTime
 
DtTime myInitialSimTime
 
RTI::FedTime * myFederationTime
 
RTI::FedTime * myEffectiveFederationTime
 
RTI::FedTime * myLookahead
 
- Protected Attributes inherited from DtExerciseClock
enum DtExerciseClock::FrameMode myFrameMode
 
bool myFirstFrame
 
bool myPaused
 
DtTime myLastRealTime
 
DtTime my_dT
 
DtFloat64 myTimeMultiplier
 
DtTime myFixedFrameRate
 
DtTime myExerciseStartTime
 
double mySimTimeScale
 
DtTime myLastSetSimTime
 
int myFrameSinceOverrunPrintCount
 
int myFrameOverrunCount
 
double myMaxOverrunTime
 
DtTimeStampType myTimeStampType
 
double myExerciseConnectionClockTime
 
bool myUsingFastForwardFrameSettings
 
FrameMode myDefaultFrameMode
 
DtTime myDefaultFixedFrameRate
 
DtFastForwardSettings myFastForwardSettings
 
DtCallbackList< DtFloat64 > myTimeMultiplierUpdateCallbacks
 

Private Member Functions

 DtHlaExerciseClock (const DtHlaExerciseClock &orig)
 
DtHlaExerciseClockoperator= (const DtHlaExerciseClock &orig)
 

Additional Inherited Members

- Protected Types inherited from DtExerciseClock
enum  FrameMode { FmRunToComplete, FmFixed, FmHybrid }
 

Constructor & Destructor Documentation

makVrf::DtHlaExerciseClock::DtHlaExerciseClock ( DtExerciseConn *  exerciseConn)

constructor

virtual makVrf::DtHlaExerciseClock::~DtHlaExerciseClock ( )
virtual

destructor

makVrf::DtHlaExerciseClock::DtHlaExerciseClock ( const DtHlaExerciseClock orig)
private

copy constructor - not implemented

Member Function Documentation

virtual void makVrf::DtHlaExerciseClock::init ( )
virtual

Initializes the clock - must be called before any other member functions are called.

Reimplemented from DtExerciseClock.

virtual void makVrf::DtHlaExerciseClock::tick ( )
virtual

If in time constrained mode, call advanceFedTime() to advance federation (logical) time by my_dT.

Reimplemented from DtExerciseClock.

virtual DtTime makVrf::DtHlaExerciseClock::fedTime ( ) const
virtual

HLA federation (logical) time.

virtual DtTime makVrf::DtHlaExerciseClock::lookahead ( ) const
virtual
virtual DtTime makVrf::DtHlaExerciseClock::effectiveSimTime ( ) const
virtual
Returns
Effective sim time (the time that should be set in the DtExerciseConn). If in time-managed mode, this is the federation time plus the lookahead (it is related to simTime() by a fixed offset). If not in time-managed mode, returns simTime().
virtual void makVrf::DtHlaExerciseClock::setInitialSimTime ( DtTime  time)
virtual

Set the initial simulation time (time recorded in a scenario file). Initializes myInitialSimTime and myInitialFederationTime (if in time management mode). Then calls down to base class setSimTime().

virtual bool makVrf::DtHlaExerciseClock::enableTimeManagementMode ( DtTime  lookaheadInterval)
virtual

Returns whether or not exercise clock is in HLA time management mode (i.e. is time regulating and constrained).

virtual bool makVrf::DtHlaExerciseClock::disableTimeManagementMode ( )
virtual
virtual bool makVrf::DtHlaExerciseClock::isInTimeManagementMode ( ) const
virtual
static void makVrf::DtHlaExerciseClock::timeAdvanceGrantedCb ( DtTimeManagementControl tmControl,
void *  usr 
)
static

Called when time advance request is granted by RTI. Calls processTimeAdvanceGrantedCb().

virtual bool makVrf::DtHlaExerciseClock::startRegulatingTime ( DtTime  lookaheadInterval)
protectedvirtual

HLA time regulating mode. Applications that expect to send interactions in time management mode should be time regulating.

virtual bool makVrf::DtHlaExerciseClock::stopRegulatingTime ( )
protectedvirtual
virtual bool makVrf::DtHlaExerciseClock::isTimeRegulating ( ) const
protectedvirtual
virtual bool makVrf::DtHlaExerciseClock::enableTimeConstrainedMode ( )
protectedvirtual

HLA time constrained mode.

virtual bool makVrf::DtHlaExerciseClock::disableTimeConstrainedMode ( )
protectedvirtual
virtual bool makVrf::DtHlaExerciseClock::isTimeConstrained ( ) const
protectedvirtual
virtual RTI::FedTime* makVrf::DtHlaExerciseClock::createFederationTime ( DtTime  time = 0.0) const
protectedvirtual
Returns
New instance of a federation time object.
virtual RTI::FedTime* makVrf::DtHlaExerciseClock::createFederationTimeInterval ( DtTime  time = 0.0) const
protectedvirtual
Returns
New instance of a federation time object.
virtual DtTimeManagementControl* makVrf::DtHlaExerciseClock::createTimeManagementControl ( ) const
protectedvirtual

Called by init() to create myTimeManagementControl member.

Returns
new instance of a DtTimeManagementControl object.
virtual void makVrf::DtHlaExerciseClock::processTimeAdvanceGrantedCb ( DtTimeManagementControl tmControl)
protectedvirtual

Updates myEffectiveFederationTime and sets this new time in the exercise connection.

DtHlaExerciseClock& makVrf::DtHlaExerciseClock::operator= ( const DtHlaExerciseClock orig)
private

assignment operator - not implemented

Member Data Documentation

DtExerciseConn* makVrf::DtHlaExerciseClock::myExerciseConn
protected
DtTimeManagementControl* makVrf::DtHlaExerciseClock::myTimeManagementControl
protected
RTI::FedTime* makVrf::DtHlaExerciseClock::myInitialFederationTime
protected

This time is set when simulation start time is set. Used to compute the current simulation time.

DtTime makVrf::DtHlaExerciseClock::myInitialSimTime
protected
RTI::FedTime* makVrf::DtHlaExerciseClock::myFederationTime
protected
RTI::FedTime* makVrf::DtHlaExerciseClock::myEffectiveFederationTime
protected
RTI::FedTime* makVrf::DtHlaExerciseClock::myLookahead
protected

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

Document ID: Generated on Mon Jun 20 00:38:30 EDT 2022 from SVN revision 244029
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)