[PATCH spice-streaming-agent v2 1/2] mjpeg plugin: split off the declaration into a header

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



So that the plugin can later be included in a unit test.

Signed-off-by: Lukáš Hrázký <lhrazky@xxxxxxxxxx>
---
 src/mjpeg-fallback.cpp | 26 ++++++--------------------
 src/mjpeg-fallback.hpp | 34 ++++++++++++++++++++++++++++++++++
 2 files changed, 40 insertions(+), 20 deletions(-)
 create mode 100644 src/mjpeg-fallback.hpp

diff --git a/src/mjpeg-fallback.cpp b/src/mjpeg-fallback.cpp
index f41e68a..7c918a7 100644
--- a/src/mjpeg-fallback.cpp
+++ b/src/mjpeg-fallback.cpp
@@ -5,6 +5,8 @@
  */
 
 #include <config.h>
+#include "mjpeg-fallback.hpp"
+
 #include <cstring>
 #include <exception>
 #include <stdexcept>
@@ -13,9 +15,6 @@
 #include <syslog.h>
 #include <X11/Xlib.h>
 
-#include <spice-streaming-agent/plugin.hpp>
-#include <spice-streaming-agent/frame-capture.hpp>
-
 #include "static-plugin.hpp"
 #include "jpeg.hpp"
 
@@ -41,11 +40,6 @@ static inline uint64_t get_time()
 }
 
 namespace {
-struct MjpegSettings
-{
-    int fps;
-    int quality;
-};
 
 class MjpegFrameCapture final: public FrameCapture
 {
@@ -69,18 +63,6 @@ private:
     uint64_t last_time = 0;
 };
 
-class MjpegPlugin final: public Plugin
-{
-public:
-    FrameCapture *CreateCapture() override;
-    unsigned Rank() override;
-    void ParseOptions(const ConfigureOption *options);
-    SpiceVideoCodecType VideoCodecType() const {
-        return SPICE_VIDEO_CODEC_TYPE_MJPEG;
-    }
-private:
-    MjpegSettings settings = { 10, 80 };
-};
 }
 
 MjpegFrameCapture::MjpegFrameCapture(const MjpegSettings& settings):
@@ -205,6 +187,10 @@ void MjpegPlugin::ParseOptions(const ConfigureOption *options)
     }
 }
 
+SpiceVideoCodecType MjpegPlugin::VideoCodecType() const {
+    return SPICE_VIDEO_CODEC_TYPE_MJPEG;
+}
+
 static bool
 mjpeg_plugin_init(Agent* agent)
 {
diff --git a/src/mjpeg-fallback.hpp b/src/mjpeg-fallback.hpp
new file mode 100644
index 0000000..8044244
--- /dev/null
+++ b/src/mjpeg-fallback.hpp
@@ -0,0 +1,34 @@
+/* Plugin implementation for Mjpeg
+ *
+ * \copyright
+ * Copyright 2017 Red Hat Inc. All rights reserved.
+ */
+#ifndef SPICE_STREAMING_AGENT_MJPEG_FALLBACK_HPP
+#define SPICE_STREAMING_AGENT_MJPEG_FALLBACK_HPP
+
+#include <spice-streaming-agent/plugin.hpp>
+#include <spice-streaming-agent/frame-capture.hpp>
+
+
+namespace SpiceStreamingAgent {
+
+struct MjpegSettings
+{
+    int fps;
+    int quality;
+};
+
+class MjpegPlugin final: public Plugin
+{
+public:
+    FrameCapture *CreateCapture() override;
+    unsigned Rank() override;
+    void ParseOptions(const ConfigureOption *options);
+    SpiceVideoCodecType VideoCodecType() const;
+private:
+    MjpegSettings settings = { 10, 80 };
+};
+
+} // namespace SpiceStreamingAgent
+
+#endif // SPICE_STREAMING_AGENT_MJPEG_FALLBACK_HPP
-- 
2.16.1

_______________________________________________
Spice-devel mailing list
Spice-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/spice-devel




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]     [Monitors]