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
68 inline bool initialize(
const Platform::OpenXR::Session& session,
const XrPassthroughLayerPurposeFB& xrPassthroughLayerPurposeFB = XR_PASSTHROUGH_LAYER_PURPOSE_RECONSTRUCTION_FB);
77 bool initialize(
const XrInstance& xrInstance,
const XrSession& xrSession,
const XrPassthroughLayerPurposeFB& xrPassthroughLayerPurposeFB = XR_PASSTHROUGH_LAYER_PURPOSE_RECONSTRUCTION_FB);
106 inline XrPassthroughLayerFB xrPassthroughLayerFB()
const;
112 inline Lock& lock()
const;
118 inline bool isValid()
const;
149 XrInstance xrInstance_ = XR_NULL_HANDLE;
152 XrSession xrSession_ = XR_NULL_HANDLE;
155 XrPassthroughFB xrPassthroughFB_ = XR_NULL_HANDLE;
158 XrPassthroughLayerFB xrPassthroughLayerFB_ = XR_NULL_HANDLE;
161 PFN_xrCreatePassthroughFB xrCreatePassthroughFB_ =
nullptr;
164 PFN_xrDestroyPassthroughFB xrDestroyPassthroughFB_ =
nullptr;
167 PFN_xrPassthroughStartFB xrPassthroughStartFB_ =
nullptr;
170 PFN_xrPassthroughPauseFB xrPassthroughPauseFB_ =
nullptr;
173 PFN_xrCreatePassthroughLayerFB xrCreatePassthroughLayerFB_ =
nullptr;
176 PFN_xrDestroyPassthroughLayerFB xrDestroyPassthroughLayerFB_ =
nullptr;
179 PFN_xrPassthroughLayerResumeFB xrPassthroughLayerResumeFB_ =
nullptr;
182 PFN_xrPassthroughLayerSetStyleFB xrPassthroughLayerSetStyleFB_ =
nullptr;
185 bool isStarted_ =
false;
193 *
this = std::move(passthrough);
198 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