VR-Forces 5.0.2 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions
DtFrameRateMonitor Class Reference

Note that this class is not thread safe. Only call from the main thread.

Public Types

typedef std::vector
< DtSimulationAddress > 
DtFrameRateRequesters
 
typedef
DtFrameRateRequesters::iterator 
DtFrameRateRequestersIter
 
typedef
DtFrameRateRequesters::const_iterator 
DtFrameRateRequestersConstIter
 

Public Member Functions

 DtFrameRateMonitor (DtSimManager *simManager)
 
virtual bool init ()
 
virtual bool registerInterfaceCallbacks ()
 
virtual double meanFrameRate (int section=-1)
 
virtual double medianFrameRate (int section=-1)
 
virtual double standardDeviationFrameRate (int section=-1)
 
virtual double minimumFrameRate (int section=-1)
 
virtual double maximumFrameRate (int section=-1)
 
virtual double simTimeToRealTimeRatio ()
 
virtual int numSections () const
 
virtual int section (int index) const
 
virtual std::vector< intsections () const
 
virtual double lastSample (int section=-1)
 
virtual void reset (bool sendReport=false)
 
virtual void setReportMean (bool reportMean)
 
virtual bool reportMean () const
 
virtual void setReportMedian (bool reportMedian)
 
virtual bool reportMedian () const
 
virtual void setReportStandardDeviation (bool reportStandardDeviation)
 
virtual bool reportStandardDeviation () const
 
virtual void setReportMinimum (bool reportMinimum)
 
virtual bool reportMinimum () const
 
virtual void setReportMaximum (bool reportMaximum)
 
virtual bool reportMaximum () const
 
virtual void setReportToConsole (bool reportToConsole)
 
virtual bool reportToConsole () const
 
virtual void setReportSimTimeToRealTimeRatio (bool reportSimTimeToRealTimeRatio)
 
virtual bool reportSimTimeToRealTimeRatio () const
 
virtual void setTickingPublishersDuringObjectTick (bool)
 
virtual bool tickingPublishersDuringObjectTick () const
 
virtual bool hasRequestors () const
 
virtual void setTimeMultiplier (double d)
 
virtual void processFrameRateRequestMessage (DtSimInterfaceMessage *message)
 
virtual void processPingRequest (DtSimInterfaceMessage *message)
 
virtual void processModifyPerformanceSettings (DtSimInterfaceMessage *)
 
virtual void generateReport ()
 
virtual ~DtFrameRateMonitor ()
 

Static Public Member Functions

static void pingRequestCallback (DtSimMessage *msg, void *usr)
 
static void frameRateRequestCallback (DtSimMessage *msg, void *usr)
 
static void modifyPerformanceSettingsCallback (DtSimMessage *msg, void *usr)
 
static void reportTimerCallback (DtTimer *timer)
 

Protected Member Functions

virtual void removeTimer ()
 
virtual void setTimer (double period)
 

Protected Attributes

bool myReportMeanFlag
 
bool myReportMedianFlag
 
bool myReportStandardDeviationFlag
 
bool myReportMinimumFlag
 
bool myReportMaximumFlag
 
bool myReportToConsoleFlag
 
bool myReportSimTimeToRealTimeRatioFlag
 
DtSimManagermySimManager
 
DtPeriodicTimermyReportTimer
 
double myCurrentResponsePeriod
 
DtTime myLastReportTimerCbSimTime
 
DtTime myLastReportTimerCbRealTime
 
DtTime mySimTimeRealTimeRatio
 
DtFrameRateRequesters myRequesters
 
short myNumberOfCPUs
 
double myTimeMultiplier
 
bool myTickingPublishersDuringObjectTick
 
bool myIsPaused
 

Private Member Functions

 DtFrameRateMonitor ()
 
 DtFrameRateMonitor (const DtFrameRateMonitor &orig)
 
const DtFrameRateMonitoroperator= (const DtFrameRateMonitor &orig)
 

Member Typedef Documentation

typedef std::vector<DtSimulationAddress> DtFrameRateMonitor::DtFrameRateRequesters
typedef DtFrameRateRequesters::iterator DtFrameRateMonitor::DtFrameRateRequestersIter
typedef DtFrameRateRequesters::const_iterator DtFrameRateMonitor::DtFrameRateRequestersConstIter

Constructor & Destructor Documentation

DtFrameRateMonitor::DtFrameRateMonitor ( )
private
DtFrameRateMonitor::DtFrameRateMonitor ( const DtFrameRateMonitor orig)
private

copy constructor; report timer is currently not copied.

DtFrameRateMonitor::DtFrameRateMonitor ( DtSimManager simManager)

standard constructor

virtual DtFrameRateMonitor::~DtFrameRateMonitor ( )
virtual

destructor

Member Function Documentation

const DtFrameRateMonitor& DtFrameRateMonitor::operator= ( const DtFrameRateMonitor orig)
private

assignment operator; see copy constructor above.

virtual bool DtFrameRateMonitor::init ( )
virtual

Calls register callbacks.

virtual bool DtFrameRateMonitor::registerInterfaceCallbacks ( )
virtual
Note
Requires that a valid simManager was provided at construction time.
virtual double DtFrameRateMonitor::meanFrameRate ( int  section = -1)
virtual
virtual double DtFrameRateMonitor::medianFrameRate ( int  section = -1)
virtual
virtual double DtFrameRateMonitor::standardDeviationFrameRate ( int  section = -1)
virtual
virtual double DtFrameRateMonitor::minimumFrameRate ( int  section = -1)
virtual
virtual double DtFrameRateMonitor::maximumFrameRate ( int  section = -1)
virtual
virtual double DtFrameRateMonitor::simTimeToRealTimeRatio ( )
virtual
virtual int DtFrameRateMonitor::numSections ( ) const
virtual

Number of sections.

virtual int DtFrameRateMonitor::section ( int  index) const
virtual

The section at the given index. This can be used to get the time for the given section.

virtual std::vector<int> DtFrameRateMonitor::sections ( ) const
virtual

Vector of sections.

virtual double DtFrameRateMonitor::lastSample ( int  section = -1)
virtual
Returns
The last sample point added. (Should be the last reported value of 1/frameTime).
virtual void DtFrameRateMonitor::reset ( bool  sendReport = false)
virtual

Clear out the array of frame rates and start over. If sendReport is true, will send out a frame rate report if there are any requestors.

virtual void DtFrameRateMonitor::setReportMean ( bool  reportMean)
virtual
virtual bool DtFrameRateMonitor::reportMean ( ) const
virtual
virtual void DtFrameRateMonitor::setReportMedian ( bool  reportMedian)
virtual
virtual bool DtFrameRateMonitor::reportMedian ( ) const
virtual
virtual void DtFrameRateMonitor::setReportStandardDeviation ( bool  reportStandardDeviation)
virtual
virtual bool DtFrameRateMonitor::reportStandardDeviation ( ) const
virtual
virtual void DtFrameRateMonitor::setReportMinimum ( bool  reportMinimum)
virtual
virtual bool DtFrameRateMonitor::reportMinimum ( ) const
virtual
virtual void DtFrameRateMonitor::setReportMaximum ( bool  reportMaximum)
virtual
virtual bool DtFrameRateMonitor::reportMaximum ( ) const
virtual
virtual void DtFrameRateMonitor::setReportToConsole ( bool  reportToConsole)
virtual
virtual bool DtFrameRateMonitor::reportToConsole ( ) const
virtual
virtual void DtFrameRateMonitor::setReportSimTimeToRealTimeRatio ( bool  reportSimTimeToRealTimeRatio)
virtual
virtual bool DtFrameRateMonitor::reportSimTimeToRealTimeRatio ( ) const
virtual
virtual void DtFrameRateMonitor::setTickingPublishersDuringObjectTick ( bool  )
virtual
virtual bool DtFrameRateMonitor::tickingPublishersDuringObjectTick ( ) const
virtual
virtual bool DtFrameRateMonitor::hasRequestors ( ) const
virtual

Returns true if there are requestors here.

virtual void DtFrameRateMonitor::setTimeMultiplier ( double  d)
virtual
virtual void DtFrameRateMonitor::processFrameRateRequestMessage ( DtSimInterfaceMessage message)
virtual

handles requests

virtual void DtFrameRateMonitor::processPingRequest ( DtSimInterfaceMessage message)
virtual
virtual void DtFrameRateMonitor::processModifyPerformanceSettings ( DtSimInterfaceMessage )
virtual
virtual void DtFrameRateMonitor::generateReport ( )
virtual

Send report to requester.

static void DtFrameRateMonitor::pingRequestCallback ( DtSimMessage msg,
void *  usr 
)
static
static void DtFrameRateMonitor::frameRateRequestCallback ( DtSimMessage msg,
void *  usr 
)
static
static void DtFrameRateMonitor::modifyPerformanceSettingsCallback ( DtSimMessage msg,
void *  usr 
)
static
static void DtFrameRateMonitor::reportTimerCallback ( DtTimer timer)
static
virtual void DtFrameRateMonitor::removeTimer ( )
protectedvirtual
virtual void DtFrameRateMonitor::setTimer ( double  period)
protectedvirtual

Member Data Documentation

bool DtFrameRateMonitor::myReportMeanFlag
protected

The values of these will determine what gets put into a report.

bool DtFrameRateMonitor::myReportMedianFlag
protected
bool DtFrameRateMonitor::myReportStandardDeviationFlag
protected
bool DtFrameRateMonitor::myReportMinimumFlag
protected
bool DtFrameRateMonitor::myReportMaximumFlag
protected
bool DtFrameRateMonitor::myReportToConsoleFlag
protected
bool DtFrameRateMonitor::myReportSimTimeToRealTimeRatioFlag
protected
DtSimManager* DtFrameRateMonitor::mySimManager
protected
DtPeriodicTimer* DtFrameRateMonitor::myReportTimer
protected
double DtFrameRateMonitor::myCurrentResponsePeriod
protected
DtTime DtFrameRateMonitor::myLastReportTimerCbSimTime
protected
DtTime DtFrameRateMonitor::myLastReportTimerCbRealTime
protected
DtTime DtFrameRateMonitor::mySimTimeRealTimeRatio
protected
DtFrameRateRequesters DtFrameRateMonitor::myRequesters
protected

Contains simulation addresses of everyone who has requested reports.

short DtFrameRateMonitor::myNumberOfCPUs
protected
double DtFrameRateMonitor::myTimeMultiplier
protected
bool DtFrameRateMonitor::myTickingPublishersDuringObjectTick
protected
bool DtFrameRateMonitor::myIsPaused
protected

When paused, the frame rate logger will ignore any specified samples.


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

Document ID: Generated on Sun Dec 4 20:22:03 EST 2022 from SVN revision 249613
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)