All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Pages
MultiWidgets::FrameInfo Class Reference

This class provides information about the elapsed simulation frame. More...

#include <MultiWidgets/FrameInfo.hpp>

Public Member Functions

Radiant::TimeStamp applicationStartupTime () const
 
Radiant::TimeStamp currentTime () const
 
float dt () const
 
 FrameInfo (const FrameInfo &frame)
 Makes a copy of FrameInfo object. More...
 
 FrameInfo (FrameInfo &&frame)
 Moves FrameInfo object. More...
 
int frameNumber () const
 
bool isLastUpdate () const
 
Radiant::TimeStamp nextFrameSwapTime () const
 
FrameInfooperator= (const FrameInfo &frame)
 Makes a copy of FrameInfo object. More...
 
FrameInfooperator= (FrameInfo &&frame)
 Moves FrameInfo object. More...
 
double runningTime () const
 
int updateStepNumber () const
 

Detailed Description

This class provides information about the elapsed simulation frame.

It contains data such as the elapsed frame time, simulation time-step, etc. With fixed timestep, one frame can be divided to multiple steps. For example, if the application is configured to run 100 fps, but it takes 20ms to process one frame (real fps is 50), update is called twice in a row every frame with dt 10ms, and with updateStepNumbers 0 and 1.

Examples:
PluginExample.cpp, PositionalSoundsExample.cpp, SamplePlayerExample.cpp, and Widget3DExample.cpp.

Constructor & Destructor Documentation

MultiWidgets::FrameInfo::FrameInfo ( const FrameInfo frame)

Makes a copy of FrameInfo object.

Parameters
frameFrameInfo to copy
MultiWidgets::FrameInfo::FrameInfo ( FrameInfo &&  frame)

Moves FrameInfo object.

Parameters
frameobject to move

Member Function Documentation

Radiant::TimeStamp MultiWidgets::FrameInfo::applicationStartupTime ( ) const
Returns
absolute timestamp when the application started
Radiant::TimeStamp MultiWidgets::FrameInfo::currentTime ( ) const
Returns
absolute frame step time
float MultiWidgets::FrameInfo::dt ( ) const
Returns
frame step duration in seconds
Examples:
PluginExample.cpp, and Widget3DExample.cpp.
int MultiWidgets::FrameInfo::frameNumber ( ) const
Returns
frame number, won't change between frame steps
bool MultiWidgets::FrameInfo::isLastUpdate ( ) const
Returns
true if this is the last (or only) step in this frame
Radiant::TimeStamp MultiWidgets::FrameInfo::nextFrameSwapTime ( ) const
Returns
estimate absolute timestamp when the currently processed frame will be visible on screen
FrameInfo& MultiWidgets::FrameInfo::operator= ( const FrameInfo frame)

Makes a copy of FrameInfo object.

Parameters
frameFrameInfo to copy
Returns
reference to this
FrameInfo& MultiWidgets::FrameInfo::operator= ( FrameInfo &&  frame)

Moves FrameInfo object.

Parameters
frameobject to move
Returns
reference to this
double MultiWidgets::FrameInfo::runningTime ( ) const
Returns
in seconds the application uptime
int MultiWidgets::FrameInfo::updateStepNumber ( ) const
Returns
frame step number, first step in every frame is 0