VR-Engage  2.2
Loading...
Searching...
No Matches
initializationState.h
Go to the documentation of this file.
1/******************************************************************************
2** Copyright (c) 2025 MAK Technologies
3** All rights reserved.
4******************************************************************************/
5
6//! \file initializationState.h
7//! \brief Defines the initialization state for the VR-Engage application
8//!
9//! This file contains the DtInitializationState class which serves as the entry
10//! point to the application state system. It is the first state to be executed
11//! when the application starts, responsible for initializing resources and
12//! transitioning to the appropriate next state.
13
14#pragma once
15
17
19
20namespace makVre
21{
22//! \brief Initial application state for VR-Engage
23//!
24//! DtInitializationState is the first state executed when the VR-Engage application
25//! starts. It handles the initialization of critical components, system resources,
26//! and configuration settings before transitioning to the appropriate operational
27//! state, typically a connection or selection state.
28//!
29//! This state should perform minimal user-visible operations, focusing primarily
30//! on behind-the-scenes setup work to prepare the application environment.
32{
33public:
34 //! \brief Constructor
35 //! \param app Reference to the player station application
36 //!
37 //! Creates a new initialization state associated with the given application.
38 //! This is typically created by the application during startup.
40
41 //! \brief Virtual destructor
42 //!
43 //! Ensures proper cleanup of initialization state resources.
44 virtual ~DtInitializationState() override;
45
46 //! \brief Called when the state is entered
47 //!
48 //! Initializes application resources, subsystems, and configuration settings.
49 //! This is the main initialization function that executes when the application
50 //! starts, setting up everything needed for operation before transitioning
51 //! to the next appropriate state.
52 virtual void onEnter() override;
53
54 //! \brief Called when the state is exited
55 //!
56 //! Performs cleanup of any temporary resources used during initialization.
57 //! This is called when the application transitions from the initialization
58 //! state to the next operational state.
59 virtual void onExit() override;
60
61 //! \brief Updates the state each frame
62 //! \param dt Time in seconds since the last update
63 //!
64 //! Handles per-frame processing during initialization, which may include
65 //! monitoring initialization progress, continuing asynchronous operations,
66 //! and determining when to transition to the next state.
67 virtual void tick(double dt) override;
68};
69
70} // namespace makVre
virtual void tick(double dt) override
Updates the state each frame.
virtual void onExit() override
Called when the state is exited.
virtual ~DtInitializationState() override
Virtual destructor.
DtInitializationState(DtPlayerStationApp &app)
Constructor.
virtual void onEnter() override
Called when the state is entered.
Top-level class representing the VR-Engage application.
Definition playerStationApp.h:163
DtPlayerStationApp & app() const
Gets a reference to the player station application.
DtPlayerStationState(DtPlayerStationApp &app, std::string stateType)
Constructor.
Defines export macros for the VR-Engage Player Station library.
#define PLAYERSTATION_DLL
Definition export.h:24
Include export definitions for this library.
Definition glsVreMessageUtil.h:49
Defines base classes for the VR-Engage state management system.