From e3761e9e46504c7ed29c8a268ddac8c22989a2bc Mon Sep 17 00:00:00 2001
From: philippegorley <philippe.gorley@savoirfairelinux.com>
Date: Wed, 14 Jun 2017 13:38:12 -0400
Subject: [PATCH] video: add hardware decoding setting to lrc

Change-Id: I4d2659e6798b9ea461d1e214b89da20e0c26f878
---
 src/qtwrapper/videomanager_wrap.h | 10 ++++++++++
 src/video/configurationproxy.cpp  | 13 +++++++++++++
 src/video/configurationproxy.h    |  3 +++
 3 files changed, 26 insertions(+)

diff --git a/src/qtwrapper/videomanager_wrap.h b/src/qtwrapper/videomanager_wrap.h
index aac29ad3..b0528a79 100644
--- a/src/qtwrapper/videomanager_wrap.h
+++ b/src/qtwrapper/videomanager_wrap.h
@@ -210,6 +210,16 @@ public Q_SLOTS: // METHODS
 #endif
     }
 
+    bool getDecodingAccelerated()
+    {
+        return DRing::getDecodingAccelerated();
+    }
+
+    void setDecodingAccelerated(bool state)
+    {
+        DRing::setDecodingAccelerated(state);
+    }
+
 Q_SIGNALS: // SIGNALS
     void deviceEvent();
     void startedDecoding(const QString &id, const QString &shmPath, int width, int height, bool isMixer);
diff --git a/src/video/configurationproxy.cpp b/src/video/configurationproxy.cpp
index c6ac3db0..7d21c76e 100644
--- a/src/video/configurationproxy.cpp
+++ b/src/video/configurationproxy.cpp
@@ -28,6 +28,7 @@
 #include <video/channel.h>
 #include <video/resolution.h>
 #include <video/rate.h>
+#include <dbus/videomanager.h>
 
 namespace ConfigurationProxyPrivate {
    static QIdentityProxyModel* m_spDeviceModel    = nullptr;
@@ -291,3 +292,15 @@ QItemSelectionModel& Video::ConfigurationProxy::rateSelectionModel()
    }
    return *ConfigurationProxyPrivate::m_spRateSelectionModel;
 }
+
+bool Video::ConfigurationProxy::getDecodingAccelerated()
+{
+    VideoManagerInterface& interface = VideoManager::instance();
+    return interface.getDecodingAccelerated();
+}
+
+void Video::ConfigurationProxy::setDecodingAccelerated(bool state)
+{
+    VideoManagerInterface& interface = VideoManager::instance();
+    interface.setDecodingAccelerated(state);
+}
diff --git a/src/video/configurationproxy.h b/src/video/configurationproxy.h
index e1685bff..517201ac 100644
--- a/src/video/configurationproxy.h
+++ b/src/video/configurationproxy.h
@@ -41,6 +41,9 @@ public:
    static QItemSelectionModel& channelSelectionModel   ();
    static QItemSelectionModel& resolutionSelectionModel();
    static QItemSelectionModel& rateSelectionModel      ();
+
+   static bool getDecodingAccelerated();
+   static void setDecodingAccelerated(bool state);
 };
 
 } //namespace Video
-- 
GitLab