Ember
A C++ 20 'game engine' built with SDL3 with wide platform support.
Public Member Functions | List of all members
TimeManager Class Reference

TimeManager class. More...

#include <time_manager.h>

Public Member Functions

 TimeManager ()
 
float get_delta_time () const
 
float get_raw_delta_time () const
 
float get_scaled_delta_time () const
 
Uint64 get_frame_count () const
 
float get_elapsed_time () const
 
float get_total_time () const
 
float get_fps () const
 
float get_average_fps () const
 
Uint32 get_target_fps () const
 
void set_target_fps (Uint32 fps=60)
 
float get_time_scale () const
 
void set_time_scale (float scale)
 
bool is_paused () const
 
void pause ()
 
void resume ()
 
void toggle_pause ()
 
void limit_frame_rate ()
 
void update ()
 
void reset ()
 
void print_debug_info () const
 
void set_max_delta_time (float max_dt)
 
float get_max_delta_time () const
 

Detailed Description

TimeManager class.

Manages time, delta time, frame rate, and time scaling.

Version
0.0.1

Constructor & Destructor Documentation

◆ TimeManager()

TimeManager::TimeManager ( )

Member Function Documentation

◆ get_average_fps()

float TimeManager::get_average_fps ( ) const

◆ get_delta_time()

float TimeManager::get_delta_time ( ) const

◆ get_elapsed_time()

float TimeManager::get_elapsed_time ( ) const

◆ get_fps()

float TimeManager::get_fps ( ) const

◆ get_frame_count()

Uint64 TimeManager::get_frame_count ( ) const

◆ get_max_delta_time()

float TimeManager::get_max_delta_time ( ) const

◆ get_raw_delta_time()

float TimeManager::get_raw_delta_time ( ) const

◆ get_scaled_delta_time()

float TimeManager::get_scaled_delta_time ( ) const

◆ get_target_fps()

Uint32 TimeManager::get_target_fps ( ) const

◆ get_time_scale()

float TimeManager::get_time_scale ( ) const

◆ get_total_time()

float TimeManager::get_total_time ( ) const

◆ is_paused()

bool TimeManager::is_paused ( ) const

◆ limit_frame_rate()

void TimeManager::limit_frame_rate ( )

◆ pause()

void TimeManager::pause ( )

◆ print_debug_info()

void TimeManager::print_debug_info ( ) const

◆ reset()

void TimeManager::reset ( )

◆ resume()

void TimeManager::resume ( )

◆ set_max_delta_time()

void TimeManager::set_max_delta_time ( float  max_dt)

◆ set_target_fps()

void TimeManager::set_target_fps ( Uint32  fps = 60)

◆ set_time_scale()

void TimeManager::set_time_scale ( float  scale)

◆ toggle_pause()

void TimeManager::toggle_pause ( )

◆ update()

void TimeManager::update ( )

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