-
Notifications
You must be signed in to change notification settings - Fork 215
/
DeviceDelegateWaveVR.h
49 lines (44 loc) · 1.81 KB
/
DeviceDelegateWaveVR.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#ifndef DEVICE_DELEGATE_WAVE_VR_DOT_H
#define DEVICE_DELEGATE_WAVE_VR_DOT_H
#include "vrb/Forward.h"
#include "vrb/MacroUtils.h"
#include "DeviceDelegate.h"
#include <memory>
namespace crow {
class DeviceDelegateWaveVR;
typedef std::shared_ptr<DeviceDelegateWaveVR> DeviceDelegateWaveVRPtr;
class DeviceDelegateWaveVR : public DeviceDelegate {
public:
static DeviceDelegateWaveVRPtr Create(vrb::RenderContextPtr& aContext);
// DeviceDelegate interface
void SetRenderMode(const device::RenderMode aMode) override;
device::RenderMode GetRenderMode() override;
void RegisterImmersiveDisplay(ImmersiveDisplayPtr aDisplay) override;
void SetImmersiveSize(const uint32_t aEyeWidth, const uint32_t aEyeHeight) override;
GestureDelegateConstPtr GetGestureDelegate() override;
vrb::CameraPtr GetCamera(const device::Eye aWhich) override;
const vrb::Matrix& GetHeadTransform() const override;
const vrb::Matrix& GetReorientTransform() const override;
void SetReorientTransform(const vrb::Matrix& aMatrix) override;
void SetClearColor(const vrb::Color& aColor) override;
void SetClipPlanes(const float aNear, const float aFar) override;
void SetControllerDelegate(ControllerDelegatePtr& aController) override;
void ReleaseControllerDelegate() override;
int32_t GetControllerModelCount() const override;
const std::string GetControllerModelName(const int32_t aModelIndex) const override;
void ProcessEvents() override;
void StartFrame() override;
void BindEye(const device::Eye aWhich) override;
void EndFrame(const bool aDiscard) override;
// DeviceDelegateWaveVR interface
bool IsRunning();
protected:
struct State;
DeviceDelegateWaveVR(State& aState);
virtual ~DeviceDelegateWaveVR();
private:
State& m;
VRB_NO_DEFAULTS(DeviceDelegateWaveVR)
};
} // namespace crow
#endif // DEVICE_DELEGATE_WAVE_VR_DOT_H