diff options
Diffstat (limited to 'LibOVR/Src/CAPI/CAPI_HMDRenderState.h')
-rw-r--r-- | LibOVR/Src/CAPI/CAPI_HMDRenderState.h | 55 |
1 files changed, 18 insertions, 37 deletions
diff --git a/LibOVR/Src/CAPI/CAPI_HMDRenderState.h b/LibOVR/Src/CAPI/CAPI_HMDRenderState.h index a4e8d21..68a141c 100644 --- a/LibOVR/Src/CAPI/CAPI_HMDRenderState.h +++ b/LibOVR/Src/CAPI/CAPI_HMDRenderState.h @@ -30,64 +30,45 @@ limitations under the License. #include "../OVR_CAPI.h" #include "../Kernel/OVR_Math.h" #include "../Util/Util_Render_Stereo.h" - +#include "../Service/Service_NetSessionCommon.h" namespace OVR { namespace CAPI { using namespace OVR::Util::Render; + //------------------------------------------------------------------------------------- // ***** HMDRenderState // Combines all of the rendering setup information about one HMD. - -class HMDRenderState : public NewOverrideBase +// This structure only ever exists inside HMDState, but this +// declaration is in a separate file to reduce #include dependencies. +// All actual lifetime and update control is done by the surrounding HMDState. +struct HMDRenderState { - // Quiet assignment compiler warning. - void operator = (const HMDRenderState&) { } -public: - - HMDRenderState(ovrHmd hmd, Profile* userProfile, const OVR::HMDInfo& hmdInfo); - virtual ~HMDRenderState(); - - - // *** Rendering Setup + // Utility query functions. + ovrHmdDesc GetDesc() const; + ovrSizei GetFOVTextureSize(int eye, ovrFovPort fov, float pixelsPerDisplayPixel) const; + ovrEyeRenderDesc CalcRenderDesc(ovrEyeType eyeType, const ovrFovPort& fov) const; - // Delegated access APIs - ovrHmdDesc GetDesc(); - ovrSizei GetFOVTextureSize(int eye, ovrFovPort fov, float pixelsPerDisplayPixel); + HMDInfo OurHMDInfo; - ovrEyeRenderDesc calcRenderDesc(ovrEyeType eyeType, const ovrFovPort& fov); - - void setupRenderDesc(ovrEyeRenderDesc eyeRenderDescOut[2], - const ovrFovPort eyeFovIn[2]); -public: - - // HMDInfo shouldn't change, as its string pointers are passed out. - ovrHmd HMD; - const OVR::HMDInfo& HMDInfo; - - //const char* pLastError; - - HmdRenderInfo RenderInfo; - DistortionRenderDesc Distortion[2]; - ovrEyeRenderDesc EyeRenderDesc[2]; + HmdRenderInfo RenderInfo; + DistortionRenderDesc Distortion[2]; + ovrEyeRenderDesc EyeRenderDesc[2]; // Clear color used for distortion - float ClearColor[4]; + float ClearColor[4]; // Pose at which last time the eye was rendered, as submitted by EndEyeRender. - ovrPosef EyeRenderPoses[2]; + ovrPosef EyeRenderPoses[2]; // Capabilities passed to Configure. - unsigned EnabledHmdCaps; - unsigned DistortionCaps; + unsigned EnabledHmdCaps; + unsigned DistortionCaps; }; }} // namespace OVR::CAPI - #endif // OVR_CAPI_HMDState_h - - |