Elaztek Developer Hub
Blamite Game Engine - blam!  00398.09.22.23.2015.blamite
The core library for the Blamite Game Engine.
tick.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <cstdint>
4 #include <Windows.h>
5 
6 #ifndef BLAM
7 #define BLAM
8 #endif
9 
13 namespace Blam::Tick
14 {
18  BLAM void PrepareTick();
19 
25  BLAM void TickThread();
26 
35 
41  BLAM int MaxTicksPerSecond();
42 
46  BLAM void ResumeTickLoop();
47 
54  BLAM void PauseTickLoop();
55 
61  BLAM void EndTickLoop();
62 
70  BLAM bool HasTickStopped();
71 
77  BLAM bool IsTickLoopRunning();
78 
84  BLAM void SetCurrentTickRate(int tickrate);
85 
92 }
BLAM
#define BLAM
Definition: tick.h:7
Blam::Logger::LogEvent
BLAM void LogEvent(std::string message)
Logs a message to the log and/or console.
Definition: aliases.cpp:142
logger.h
Blam::Input::FireMouseMove
BLAM void FireMouseMove(int x, int y)
Definition: mouse.cpp:17
keyboard.h
Blam::Tick::TickThread
BLAM void TickThread()
Function containing the tick loop.
Definition: tick.cpp:67
uint8_t
unsigned char uint8_t
Definition: stdint.h:15
Blam::Tick::ResumeTickLoop
BLAM void ResumeTickLoop()
Resumes the tick loop if it has been paused.
Definition: tick.cpp:127
Blam::Tick::MaxTicksPerSecond
BLAM int MaxTicksPerSecond()
Retrieves the maximum number of ticks per second.
Definition: tick.cpp:152
y
font DisplayOffset y
Definition: README.txt:68
Blam::Tick::SetCurrentTickRate
BLAM void SetCurrentTickRate(int tickrate)
Stops the game tick, updates the tick rate, and re-starts the game tick.
Definition: tick.cpp:157
Blam::Input::IsMouseButtonDown
BLAM bool IsMouseButtonDown(uint8_t button)
Definition: mouse.cpp:60
doTick
void doTick()
Fires a #Blam::Events::TickEvent event to inform all listeners to update based on the game tick.
Definition: tick.cpp:59
Blam::Input::SetMouseButtonState
BLAM void SetMouseButtonState(uint8_t button, bool down)
Definition: mouse.cpp:25
uint64_t
unsigned long long uint64_t
Definition: stdint.h:18
Blam::Tick::PrepareTick
BLAM void PrepareTick()
Prepares required data for the tick loop.
Definition: tick.cpp:31
tick.h
Blam::Tick::GetTotalRuntimeTicks
BLAM uint64_t GetTotalRuntimeTicks()
Gets the total amount of ticks that have elapsed during program runtime.
Definition: tick.cpp:177
clock_frequency
LARGE_INTEGER clock_frequency
The frequency of the CPU clock. Used in calculations for tick rate.
Definition: tick.cpp:23
total_runtime_ticks
uint64_t total_runtime_ticks
Number of game ticks that have been run during entire program execution.
Definition: tick.cpp:20
Blam::Tick
Namespace containing components relating to the game tick.
Definition: tick.h:13
seconds_per_tick
float seconds_per_tick
The number of seconds within a single tick. Usually much less than 1 second.
Definition: tick.cpp:24
checkElapsedTime
float checkElapsedTime()
Definition: tick.cpp:47
Blam::Tick::IsTickLoopRunning
BLAM bool IsTickLoopRunning()
Determines whether or not the tick loop is currently running - NOT whether it is paused.
Definition: tick.cpp:147
Blam::Tick::EndTickLoop
BLAM void EndTickLoop()
Terminates the tick loop.
Definition: tick.cpp:137
crash.h
Blam::Input::FireMouseClick
BLAM void FireMouseClick(uint8_t button)
Definition: mouse.cpp:11
pause_tick
bool pause_tick
Whether or not to temporarily pause the game tick.
Definition: tick.cpp:28
Blam::Tick::HasTickStopped
BLAM bool HasTickStopped()
Determines whether or not the tick loop has finished terminating.
Definition: tick.cpp:142
x
config GlyphExtraSpacing x
Definition: README.txt:30
max_tickrate
int max_tickrate
Maximum number of times doTick() should be run per second.
Definition: tick.cpp:18
total_elapsed_time
float total_elapsed_time
The total amount of time elapsed this second. Used to determine how many ticks have run this second.
Definition: tick.cpp:25
Blam::Tick::GetCurrentTickRate
BLAM uint64_t GetCurrentTickRate()
Retrieves the current tick rate.
Definition: tick.cpp:39
has_tick_stopped
bool has_tick_stopped
Whether or not the game tick loop has terminated.
Definition: tick.cpp:29
lock_mouse_button_state
bool lock_mouse_button_state
Definition: mouse.cpp:23
Blam::Tick::PauseTickLoop
BLAM void PauseTickLoop()
Temporarily pauses the tick loop.
Definition: tick.cpp:132
ticks_this_second
int ticks_this_second
Number of game ticks that have been run this second.
Definition: tick.cpp:19
run_tick_loop
bool run_tick_loop
Whether or not to continue running the game tick loop.
Definition: tick.cpp:27
active_mouse_buttons
std::vector< uint8_t > active_mouse_buttons
Definition: mouse.cpp:9
last_second_time
LARGE_INTEGER last_second_time
Timestamp of previous second/tick counter reset.
Definition: tick.cpp:22