8 #ifndef frameRateMonitor_H_
9 #define frameRateMonitor_H_
20 #include <vlutil/vlString.h>
21 #include <vl/hostStructs.h>
61 virtual bool registerInterfaceCallbacks();
63 virtual double meanFrameRate();
65 virtual double medianFrameRate();
67 virtual double standardDeviationFrameRate();
69 virtual double minimumFrameRate();
71 virtual double maximumFrameRate();
73 virtual double simTimeToRealTimeRatio();
79 virtual void addSample(
double frameTime);
84 virtual double lastSample()
const;
88 virtual void reset(
bool sendReport =
false);
91 virtual void setNumberOfFramesToAverage(
unsigned int numFramesToAverage);
92 virtual unsigned int numberOfFramesToAverage();
94 virtual void setReportMean(
bool reportMean);
95 virtual bool reportMean()
const;
97 virtual void setReportMedian(
bool reportMedian);
98 virtual bool reportMedian()
const;
100 virtual void setReportStandardDeviation(
bool reportStandardDeviation);
101 virtual bool reportStandardDeviation()
const;
103 virtual void setReportMinimum(
bool reportMinimum);
104 virtual bool reportMinimum()
const;
106 virtual void setReportMaximum(
bool reportMaximum);
107 virtual bool reportMaximum()
const;
109 virtual void setReportToConsole(
bool reportToConsole);
110 virtual bool reportToConsole()
const;
112 virtual void setReportSimTimeToRealTimeRatio(
bool reportSimTimeToRealTimeRatio);
113 virtual bool reportSimTimeToRealTimeRatio()
const;
116 virtual bool hasRequestors()
const;
122 virtual void generateReport();
126 virtual void pause();
127 virtual void resume();
130 virtual bool isPaused()
const;
135 static void frameRateRequestCallback(
DtSimMessage* msg,
void* usr);
136 static void reportTimerCallback(
DtTimer* timer);
139 virtual void removeTimer();
140 virtual void setTimer(
double period);
DtTime myLastReportTimerCbSimTime
Definition: frameRateMonitor.h:162
class DtAverager:
Definition: averager.h:26
DtFrameRateRequesters::iterator DtFrameRateRequestersIter
Definition: frameRateMonitor.h:36
DtTime mySimTimeRealTimeRatio
Definition: frameRateMonitor.h:164
Instances of DtTimer are used to maintain the information needed to represent some kind of scheduled ...
Definition: timer.h:45
DtAverager myAverager
Definition: frameRateMonitor.h:157
DtFrameRateRequesters myRequesters
Contains simulation addresses of everyone who has requested reports.
Definition: frameRateMonitor.h:167
bool myReportMeanFlag
The values of these will determine what gets put into a report.
Definition: frameRateMonitor.h:149
DtPeriodicTimer * myReportTimer
Definition: frameRateMonitor.h:160
DtSimInterfaceMessage is used to send a message to the front end or the back end. ...
Definition: simInterfaceMessage.h:32
DtSimManager * mySimManager
Definition: frameRateMonitor.h:159
double myCurrentFrameRate
If not currently averaging, this is returned for mean or median requests set by tick.
Definition: frameRateMonitor.h:146
bool myReportSimTimeToRealTimeRatioFlag
Definition: frameRateMonitor.h:155
bool myReportStandardDeviationFlag
Definition: frameRateMonitor.h:151
bool myReportMaximumFlag
Definition: frameRateMonitor.h:153
bool myReportMinimumFlag
Definition: frameRateMonitor.h:152
DtFrameRateRequesters::const_iterator DtFrameRateRequestersConstIter
Definition: frameRateMonitor.h:37
bool myReportToConsoleFlag
Definition: frameRateMonitor.h:154
File: simMsg.h.
Definition: simMessage.h:35
std::vector< DtSimulationAddress > DtFrameRateRequesters
Definition: frameRateMonitor.h:35
bool myReportMedianFlag
Definition: frameRateMonitor.h:150
Definition: frameRateMonitor.h:32
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
bool myIsPaused
When paused, the frame rate logger will ignore any specified samples.
Definition: frameRateMonitor.h:171
DtTime myLastReportTimerCbRealTime
Definition: frameRateMonitor.h:163
The simulation engine is controlled by a single,top-level class called the Simulation Manager...
Definition: simManager.h:102
double myCurrentResponsePeriod
Definition: frameRateMonitor.h:161
File: periTimer.h.
Definition: periodicTimer.h:30
#define DT_DLL_vrfcore
This file is used to determine how to build.
Definition: vrfcoreDefines.h:25