Current section

Files

Jump to
exray lib Core Timing.ex
Raw

lib/Core/Timing.ex

defmodule Exray.Core.Timing do
@moduledoc """
Handle frame timing (Set FPS, get Delta Time (get_frame_time))
"""
@loader Exray.Core.Timing.Loader
@doc """
Set target FPS (maximum)
"""
@spec set_target_fps(fps :: integer) :: :ok
defdelegate set_target_fps(fps), to: @loader
@doc """
Get time in seconds for last frame drawn (delta time)
"""
@spec get_frame_time() :: delta_time :: float
defdelegate get_frame_time(), to: @loader
@doc """
Get elapsed time in seconds since InitWindow()
"""
@spec get_time() :: elapsed_time :: float
defdelegate get_time(), to: @loader
@doc """
Get current FPS
"""
@spec get_fps() :: fps :: integer
defdelegate get_fps(), to: @loader
end