summaryrefslogtreecommitdiffstats
path: root/LibOVR/Src/CAPI/CAPI_HMDRenderState.h
diff options
context:
space:
mode:
authorBrad Davis <[email protected]>2014-07-24 16:47:31 -0700
committerBrad Davis <[email protected]>2014-07-24 16:47:31 -0700
commit0f49ce8fc6aa54224e4c0d6fda8c4527ad39cce1 (patch)
treeda07ebc6a7f75185bda857dd5f1c34710b416a93 /LibOVR/Src/CAPI/CAPI_HMDRenderState.h
parentca79271759ff7eecd22ec5c4db438370fe51d687 (diff)
0.4 Win-Beta0.4.0
Diffstat (limited to 'LibOVR/Src/CAPI/CAPI_HMDRenderState.h')
-rw-r--r--LibOVR/Src/CAPI/CAPI_HMDRenderState.h55
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
-
-