wren
Vulkan-based game engine
Loading...
Searching...
No Matches
wren::Application Class Reference

#include <application.hpp>

Public Types

enum class  errors
 

Public Member Functions

auto context () -> std::shared_ptr< Context > const &
 
void run ()
 
void add_callback_to_phase (CallbackPhase phase, phase_cb_t const &cb)
 

Static Public Member Functions

static auto Create (std::string const &application_name) -> expected< std::shared_ptr< Application > >
 

Private Member Functions

 Application (std::shared_ptr< Context > const &ctx, std::shared_ptr< Renderer > const &renderer)
 

Private Attributes

std::shared_ptr< Contextctx
 
std::shared_ptr< Rendererrenderer
 
std::vector< phase_cb_tstartup_phase
 
std::vector< phase_cb_tupdate_phase
 
std::vector< phase_cb_tshutdown_phase
 
bool running
 

Member Enumeration Documentation

◆ errors

enum class wren::Application::errors
strong

Constructor & Destructor Documentation

◆ Application()

wren::Application::Application ( std::shared_ptr< Context > const & ctx,
std::shared_ptr< Renderer > const & renderer )
explicitprivate

Member Function Documentation

◆ add_callback_to_phase()

void wren::Application::add_callback_to_phase ( CallbackPhase phase,
phase_cb_t const & cb )

◆ context()

auto wren::Application::context ( ) -> std::shared_ptr<Context> const &
inline

◆ Create()

auto wren::Application::Create ( std::string const & application_name) -> expected<std::shared_ptr<Application>>
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ run()

void wren::Application::run ( )

Member Data Documentation

◆ ctx

std::shared_ptr<Context> wren::Application::ctx
private

◆ renderer

std::shared_ptr<Renderer> wren::Application::renderer
private

◆ running

bool wren::Application::running
private

◆ shutdown_phase

std::vector<phase_cb_t> wren::Application::shutdown_phase
private

◆ startup_phase

std::vector<phase_cb_t> wren::Application::startup_phase
private

◆ update_phase

std::vector<phase_cb_t> wren::Application::update_phase
private

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