From 1088d248e3bc0e21c7c8278110183954e16dcada Mon Sep 17 00:00:00 2001 From: Zach Fox Date: Thu, 15 Jun 2017 13:13:58 -0700 Subject: [PATCH] Howard's CR comments --- .../src/display-plugins/OpenGLDisplayPlugin.cpp | 1 + .../src/display-plugins/OpenGLDisplayPlugin.h | 1 + .../src/display-plugins/hmd/HmdDisplayPlugin.cpp | 16 ---------------- .../src/display-plugins/hmd/HmdDisplayPlugin.h | 2 +- libraries/plugins/src/plugins/DisplayPlugin.h | 1 + 5 files changed, 4 insertions(+), 17 deletions(-) diff --git a/libraries/display-plugins/src/display-plugins/OpenGLDisplayPlugin.cpp b/libraries/display-plugins/src/display-plugins/OpenGLDisplayPlugin.cpp index ba8842c2ec..92afa8ef22 100644 --- a/libraries/display-plugins/src/display-plugins/OpenGLDisplayPlugin.cpp +++ b/libraries/display-plugins/src/display-plugins/OpenGLDisplayPlugin.cpp @@ -706,6 +706,7 @@ bool OpenGLDisplayPlugin::setDisplayTexture(const QString& name) { // Note: it is the caller's responsibility to keep the network texture in cache. if (name.isEmpty()) { _displayTexture.reset(); + clearPreviewFlag(); return true; } auto textureCache = DependencyManager::get(); diff --git a/libraries/display-plugins/src/display-plugins/OpenGLDisplayPlugin.h b/libraries/display-plugins/src/display-plugins/OpenGLDisplayPlugin.h index cf874fb721..aa047b4538 100644 --- a/libraries/display-plugins/src/display-plugins/OpenGLDisplayPlugin.h +++ b/libraries/display-plugins/src/display-plugins/OpenGLDisplayPlugin.h @@ -58,6 +58,7 @@ public: } virtual bool setDisplayTexture(const QString& name) override; + virtual bool clearPreviewFlag() override { return false; }; QImage getScreenshot(float aspectRatio = 0.0f) const override; float presentRate() const override; diff --git a/libraries/display-plugins/src/display-plugins/hmd/HmdDisplayPlugin.cpp b/libraries/display-plugins/src/display-plugins/hmd/HmdDisplayPlugin.cpp index 260ac5fa4c..ea91890f33 100644 --- a/libraries/display-plugins/src/display-plugins/hmd/HmdDisplayPlugin.cpp +++ b/libraries/display-plugins/src/display-plugins/hmd/HmdDisplayPlugin.cpp @@ -743,19 +743,3 @@ HmdDisplayPlugin::~HmdDisplayPlugin() { float HmdDisplayPlugin::stutterRate() const { return _stutterRate.rate(); } - -bool HmdDisplayPlugin::setDisplayTexture(const QString& name) { - // Note: it is the caller's responsibility to keep the network texture in cache. - if (name.isEmpty()) { - _displayTexture.reset(); - _clearPreviewFlag = true; - return true; - } - auto textureCache = DependencyManager::get(); - auto displayNetworkTexture = textureCache->getTexture(name); - if (!displayNetworkTexture) { - return false; - } - _displayTexture = displayNetworkTexture->getGPUTexture(); - return !!_displayTexture; -} diff --git a/libraries/display-plugins/src/display-plugins/hmd/HmdDisplayPlugin.h b/libraries/display-plugins/src/display-plugins/hmd/HmdDisplayPlugin.h index 78b3889179..58ef109525 100644 --- a/libraries/display-plugins/src/display-plugins/hmd/HmdDisplayPlugin.h +++ b/libraries/display-plugins/src/display-plugins/hmd/HmdDisplayPlugin.h @@ -46,7 +46,7 @@ public: float stutterRate() const override; - virtual bool setDisplayTexture(const QString& name) override; + virtual bool clearPreviewFlag() override { _clearPreviewFlag = true; return true; }; protected: virtual void hmdPresent() = 0; diff --git a/libraries/plugins/src/plugins/DisplayPlugin.h b/libraries/plugins/src/plugins/DisplayPlugin.h index 7bfdbddbc5..bce6c0c33a 100644 --- a/libraries/plugins/src/plugins/DisplayPlugin.h +++ b/libraries/plugins/src/plugins/DisplayPlugin.h @@ -186,6 +186,7 @@ public: // Set the texture to display on the monitor and return true, if allowed. Empty string resets. virtual bool setDisplayTexture(const QString& name) { return false; } + virtual bool clearPreviewFlag() { return false; }; virtual float devicePixelRatio() { return 1.0f; } // Rate at which we render frames