Skyscraper 2.0
|
#include <OgreOpenXRState.h>
Public Member Functions | |
OpenXRState () | |
void | Initialize (const std::string &applicationName) |
void | InitializeSystem () |
const LUID | GetAdapterLUID () |
xr::SessionHandle & | GetSession () |
const xr::InstanceHandle & | GetInstanceHandle () |
const uint64_t | GetSystemId () |
void | GetSystemProperties (XrSystemProperties &systemProperties) |
std::tuple< DXGI_FORMAT, DXGI_FORMAT > | SelectSwapchainPixelFormats () |
void | initializeSession (D3D11Device &device) |
XrEnvironmentBlendMode * | GetEnvironmentBlendModes () |
xr::SpaceHandle & | getAppSpace () |
Static Public Attributes | |
static constexpr XrViewConfigurationType | primaryViewConfigType { XR_VIEW_CONFIGURATION_TYPE_PRIMARY_STEREO } |
Private Attributes | |
std::unique_ptr< OpenXRInstance > | m_xrInstance |
uint64_t | _systemId |
xr::SessionHandle | _sessionHandle |
std::vector< XrEnvironmentBlendMode > | environmentBlendModes |
xr::SpaceHandle | _appSpace |
XrReferenceSpaceType | _appSpaceType { XR_REFERENCE_SPACE_TYPE_LOCAL } |
Static Private Attributes | |
static constexpr XrFormFactor | _formFactor { XR_FORM_FACTOR_HEAD_MOUNTED_DISPLAY } |
A container for all the state that is required between Ogre and an OpenXR device, the instance, system, session etc.
Definition at line 39 of file OgreOpenXRState.h.
Ogre::OpenXRState::OpenXRState | ( | ) |
Definition at line 28 of file OgreOpenXRState.cpp.
const LUID Ogre::OpenXRState::GetAdapterLUID | ( | ) |
Definition at line 80 of file OgreOpenXRState.cpp.
References _systemId, CHECK_XRCMD, and m_xrInstance.
Referenced by initializeSession().
xr::SpaceHandle & Ogre::OpenXRState::getAppSpace | ( | ) |
Definition at line 179 of file OgreOpenXRState.cpp.
References _appSpace.
Referenced by Ogre::OpenXRViewProjection::UpdateXrViewInfo().
XrEnvironmentBlendMode * Ogre::OpenXRState::GetEnvironmentBlendModes | ( | ) |
Definition at line 174 of file OgreOpenXRState.cpp.
References environmentBlendModes.
const xr::InstanceHandle & Ogre::OpenXRState::GetInstanceHandle | ( | ) |
Definition at line 88 of file OgreOpenXRState.cpp.
References m_xrInstance.
Referenced by Ogre::OpenXRSwapchain::Initialize(), and Ogre::OpenXRViewProjection::Initialize().
xr::SessionHandle & Ogre::OpenXRState::GetSession | ( | ) |
Definition at line 169 of file OgreOpenXRState.cpp.
References _sessionHandle.
Referenced by Ogre::OpenXRSwapchain::Initialize(), initializeSession(), and Ogre::OpenXRViewProjection::UpdateXrViewInfo().
const uint64_t Ogre::OpenXRState::GetSystemId | ( | ) |
Definition at line 93 of file OgreOpenXRState.cpp.
References _systemId.
Referenced by Ogre::OpenXRSwapchain::Initialize(), and Ogre::OpenXRViewProjection::Initialize().
void Ogre::OpenXRState::GetSystemProperties | ( | XrSystemProperties & | systemProperties | ) |
Definition at line 98 of file OgreOpenXRState.cpp.
References _systemId, CHECK_XRCMD, and m_xrInstance.
Referenced by Ogre::OpenXRSwapchain::Initialize().
void Ogre::OpenXRState::Initialize | ( | const std::string & | applicationName | ) |
Definition at line 33 of file OgreOpenXRState.cpp.
References m_xrInstance.
void Ogre::OpenXRState::initializeSession | ( | D3D11Device & | device | ) |
Definition at line 103 of file OgreOpenXRState.cpp.
References _appSpace, _appSpaceType, _sessionHandle, _systemId, CHECK, CHECK_XRCMD, GetAdapterLUID(), GetSession(), xr::math::Pose::Identity(), m_xrInstance, and xr::UniqueXrHandle< HandleType >::Put().
void Ogre::OpenXRState::InitializeSystem | ( | ) |
Definition at line 37 of file OgreOpenXRState.cpp.
References _formFactor, _systemId, CHECK, CHECK_XRCMD, CHECK_XRRESULT, environmentBlendModes, m_xrInstance, and primaryViewConfigType.
std::tuple< DXGI_FORMAT, DXGI_FORMAT > Ogre::OpenXRState::SelectSwapchainPixelFormats | ( | ) |
Definition at line 124 of file OgreOpenXRState.cpp.
References _sessionHandle, CHECK, CHECK_XRCMD, xr::UniqueXrHandle< HandleType >::Get(), and THROW.
Referenced by Ogre::OpenXRSwapchain::Initialize().
|
private |
Definition at line 63 of file OgreOpenXRState.h.
Referenced by getAppSpace(), and initializeSession().
|
private |
Definition at line 64 of file OgreOpenXRState.h.
Referenced by initializeSession().
|
staticconstexprprivate |
Definition at line 61 of file OgreOpenXRState.h.
Referenced by InitializeSystem().
|
private |
Definition at line 58 of file OgreOpenXRState.h.
Referenced by GetSession(), initializeSession(), and SelectSwapchainPixelFormats().
|
private |
Definition at line 57 of file OgreOpenXRState.h.
Referenced by GetAdapterLUID(), GetSystemId(), GetSystemProperties(), initializeSession(), and InitializeSystem().
|
private |
Definition at line 59 of file OgreOpenXRState.h.
Referenced by GetEnvironmentBlendModes(), and InitializeSystem().
|
private |
Definition at line 56 of file OgreOpenXRState.h.
Referenced by GetAdapterLUID(), GetInstanceHandle(), GetSystemProperties(), Initialize(), initializeSession(), and InitializeSystem().
|
staticconstexpr |
Definition at line 51 of file OgreOpenXRState.h.
Referenced by Ogre::OpenXRSwapchain::Initialize(), Ogre::OpenXRViewProjection::Initialize(), InitializeSystem(), Ogre::OpenXRRenderWindow::ProcessOpenXREvents(), and Ogre::OpenXRViewProjection::UpdateXrViewInfo().