10 #include "OculusBaseDisplayPlugin.h"
12 class OculusDisplayPlugin :
public OculusBaseDisplayPlugin {
13 using Parent = OculusBaseDisplayPlugin;
15 OculusDisplayPlugin();
16 ~OculusDisplayPlugin();
17 const QString getName()
const override {
return NAME; }
21 QString getPreferredAudioInDevice()
const override;
22 QString getPreferredAudioOutDevice()
const override;
23 float getTargetFrameRate()
const override;
25 virtual QJsonObject getHardwareStats()
const;
28 QThread::Priority getPresentPriority()
override {
return QThread::TimeCriticalPriority; }
30 bool internalActivate()
override;
31 void hmdPresent()
override;
32 bool isHmdMounted()
const override;
33 void customizeContext()
override;
34 void uncustomizeContext()
override;
35 void cycleDebugOutput()
override;
38 static const char* NAME;
39 ovrTextureSwapChain _textureSwapChain;
40 gpu::FramebufferPointer _outputFramebuffer;
41 bool _customized {
false };
43 std::atomic_bool _aswActive;
44 std::atomic_int _compositorDroppedFrames;
45 std::atomic_int _appDroppedFrames;
46 std::atomic_int _longSubmits;
47 std::atomic_int _longRenders;
48 std::atomic_int _longFrames;