Chicane

Application

Header
Includes/Chicane/Runtime/Application.hpp
Namespace
Chicane::Application

Tipos

NomeValorDescrição
ControllerObservable
ControllerSubscription
SceneObservable
EventObservable<std::shared_ptr<Scene>>
SceneSubscription
EventSubscription<std::shared_ptr<Scene>>
ViewObservable
EventObservable<std::shared_ptr<Grid::View>>
ViewSubscription
EventSubscription<std::shared_ptr<Grid::View>>

Construtores

NomeDescrição
Application()
Application()
Application()

Funções

AccessoReturnoModificadorNomeDescrição
public
static, inline
getInstance()
public
operator=()
public
operator=()
public
void
run(
const  ApplicationCreateInfo& inCreateInfo
)
public
const  Telemetry&
const
getTelemetry()
public
bool
hasController()
public
getController()
public
void
setController(
Controller* inController
)
public
public
std::shared_ptr<T>
inline
getScene()
public
void
inline
setScene(
Params... inParams
)
public
public
std::shared_ptr<T>
inline
getView()
public
void
inline
setView(
Params... inParams
)
public
public
bool
hasWindow()
public
getWindow()
public
bool
hasRenderer()
public
getRenderer()
public
void
setRenderer(
WindowBackend inBackend
)
private
void
initRenderer(
const  Renderer::Settings& inSettings
)
private
void
shutdownRenderer()
private
void
initWindow(
const  WindowSettings& inSettings
)
private
void
initBox()
private
void
initKerb()
private
void
render()
private
void
initScene()
private
void
shutdownScene()
private
void
tickScene()
private
void
buildSceneCommands(
std::shared_ptr<Scene> inScene
)
private
void
renderScene()
private
void
initView()
private
void
shutdownView()
private
void
tickView()
private
void
buildViewCommands(
std::shared_ptr<Grid::View> inView
)
private
void
renderView()

Membros

AccessoTipoModificadorNomeDescrição
private
m_telemetry
private
std::atomic<bool>
m_bIsRunning
private
m_controller
private
m_controllerObservable
private
std::shared_ptr<Scene>
m_scene
private
std::thread
m_sceneThread
private
m_sceneCommandBuffers
private
std::atomic<uint32_t>
m_sceneWriteIndex
private
std::atomic<uint32_t>
m_sceneReadIndex
private
m_sceneObservable
private
std::shared_ptr<Grid::View>
m_view
private
std::thread
m_viewThread
private
m_viewCommandBuffers
private
std::atomic<uint32_t>
m_viewWriteIndex
private
std::atomic<uint32_t>
m_viewReadIndex
private
m_viewObservable
private
std::unique_ptr<Window>
m_window
private
std::unique_ptr<Renderer::Instance>
m_renderer