8 #ifndef META_OCEAN_PLATFORM_META_QUEST_OPENXR_PASSTHROUGH_H
9 #define META_OCEAN_PLATFORM_META_QUEST_OPENXR_PASSTHROUGH_H
35 class OCEAN_PLATFORM_META_QUEST_OPENXR_EXPORT
Passthrough final
107 bool wasRunning_ =
false;
139 inline bool initialize(
const Platform::OpenXR::Session& session,
const XrPassthroughLayerPurposeFB& xrPassthroughLayerPurposeFB = XR_PASSTHROUGH_LAYER_PURPOSE_RECONSTRUCTION_FB);
148 bool initialize(
const XrInstance& xrInstance,
const XrSession& xrSession,
const XrPassthroughLayerPurposeFB& xrPassthroughLayerPurposeFB = XR_PASSTHROUGH_LAYER_PURPOSE_RECONSTRUCTION_FB);
177 inline XrPassthroughLayerFB xrPassthroughLayerFB()
const;
183 inline Lock& lock()
const;
189 inline bool isValid()
const;
196 inline void pushState();
201 inline void popState();
232 XrInstance xrInstance_ = XR_NULL_HANDLE;
235 XrSession xrSession_ = XR_NULL_HANDLE;
238 XrPassthroughFB xrPassthroughFB_ = XR_NULL_HANDLE;
241 XrPassthroughLayerFB xrPassthroughLayerFB_ = XR_NULL_HANDLE;
244 PFN_xrCreatePassthroughFB xrCreatePassthroughFB_ =
nullptr;
247 PFN_xrDestroyPassthroughFB xrDestroyPassthroughFB_ =
nullptr;
250 PFN_xrPassthroughStartFB xrPassthroughStartFB_ =
nullptr;
253 PFN_xrPassthroughPauseFB xrPassthroughPauseFB_ =
nullptr;
256 PFN_xrCreatePassthroughLayerFB xrCreatePassthroughLayerFB_ =
nullptr;
259 PFN_xrDestroyPassthroughLayerFB xrDestroyPassthroughLayerFB_ =
nullptr;
262 PFN_xrPassthroughLayerResumeFB xrPassthroughLayerResumeFB_ =
nullptr;
265 PFN_xrPassthroughLayerSetStyleFB xrPassthroughLayerSetStyleFB_ =
nullptr;
268 bool isStarted_ =
false;
279 *
this = std::move(passthrough);
284 ocean_assert(session.
isValid());
This class implements a recursive lock object.
Definition: Lock.h:31
This class implements a scoped lock object for recursive lock objects.
Definition: Lock.h:135
The namespace covering the entire Ocean framework.
Definition: Accessor.h:15