VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtVirtualRealityProvider.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2020 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
13 
14 #include <vrvUtil/DtQuat.h>
15 #include <matrix/vlVector.h>
16 
17 #include <osg/Matrixd>
18 #include <osg/Group>
19 
20 #include <string>
21 
22 namespace osg
23 {
24  class Texture2D;
25 }
26 
27 namespace makVrv
28 {
29  class DtDe;
30  class DtVirtualRealityPostProcessor;
31  class DtVirtualRealityDriver;
32  class DtSubmitOverlayCallback;
33  class DtSubmitViewCallback;
34  class DtTrackedCamera;
35  class DtMixedRealityMask;
36  class DtVariableRateShadingImageUpdater;
37  class DtVirtualRealityChannel;
38 
44  {
45  private:
48 
50  DtVirtualRealityProvider& operator=(const DtVirtualRealityProvider& other);
51 
52  public:
55 
57  virtual ~DtVirtualRealityProvider();
58 
60  virtual DtSubmitOverlayCallback* createOverlayCallback(osg::Texture2D* tex, DtDe& de, DtVirtualRealityDriver& driver) = 0;
61 
64 
66  virtual const std::string& providerName() = 0;
67 
69  virtual const std::string& deviceName() = 0;
70 
72  virtual bool initializeVR() = 0;
73 
75  virtual bool hasFocusViews() = 0;
76 
78  virtual bool useVrs() = 0;
79 
81  virtual DtVariableRateShadingImageUpdater* findVrsUpdater(DtVirtualRealityChannel* channel) = 0;
82 
84  virtual void getRecommendedRenderTargetSize(int& width, int& height, vrvVirtualReality::DtEye whichEye) = 0;
85 
87  virtual void getProjectionAngles(vrvVirtualReality::DtEye eye, double& left, double& right, double& bottom, double& top, double znear, double zfar) = 0;
88 
90  virtual osg::Matrixd getEyeToHeadTransform(vrvVirtualReality::DtEye eye) = 0;
91 
93  virtual void tick() = 0;
94 
96  virtual bool getHmdPose(DtVector& pos, DtQuat& ori) = 0;
97 
99  virtual bool getTrackedPose(DtVector& pos, DtQuat& ori, int index) = 0;
100 
102  virtual bool reset() = 0;
103 
105  virtual bool shutdown() = 0;
106 
108  virtual bool hasTrackedCamera() = 0;
109 
111  virtual DtTrackedCamera* findTrackedCamera() = 0;
112 
115  virtual DtMixedRealityMask* findMixedRealityMask() = 0;
116 
117  protected:
121 
122  };
123 }
Contains DLL export macros.
A Tracked camera is typically attached to the HMD and can provide position and orientation data in ad...
Definition: DtTrackedCamera.h:27
Base class for GPU updates of the variable rate shading image Draw a full screen quad using a shader ...
Definition: DtVariableRateShadingImageUpdater.h:26
A driver that manages virtual reality HMD and input devices.
Definition: DtVirtualRealityDriver.h:49
#define DT_DLL_VRVVR
Definition: vrvVirtualReality.h:19
DtEye
A virtual reality eye.
Definition: vrvVirtualReality.h:37
DtMixedRealityMask * myMixedRealityMask
Definition: DtVirtualRealityProvider.h:120
An abstract interface that provides VR System API services.
Definition: DtVirtualRealityProvider.h:43
Contains makVrv::DtQuat class.
DtTrackedCamera * myTrackedCamera
Definition: DtVirtualRealityProvider.h:119
A VRV channel that represents the eyes of the HMD A Virtual Reality channel can render in a few diffe...
Definition: DtVirtualRealityChannel.h:29
Object to handle rendering a mixed reality mask object into the scene.
Definition: DtMixedRealityMask.h:32
DtDe & myDe
Definition: DtVirtualRealityProvider.h:118
An OSG camera callback that will submit the channel to the underlying VR system as an overlay channel...
Definition: DtSubmitOverlayCallback.h:26
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
A utility Quaternion class.
Definition: DtQuat.h:22
A post processing effect responsible for submitting and mirroring the eye views to the VR subsystem...
Definition: DtVirtualRealityPostProcessor.h:34
An OSG camera callback that will submit the channel to the underlying VR system as an overlay channel...
Definition: DtSubmitViewCallback.h:29

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)