summaryrefslogtreecommitdiff
path: root/test/gstreamer/gstreamer_test.h
diff options
context:
space:
mode:
authorVedant Paranjape <vedantparanjape160201@gmail.com>2021-09-08 13:24:42 +0530
committerPaul Elder <paul.elder@ideasonboard.com>2021-09-08 17:40:53 +0900
commit39c2d5dc95e46b8c1659b721521e4e438ab7d8a3 (patch)
tree55a422523a840363e0dcf24071238e09a95c9a59 /test/gstreamer/gstreamer_test.h
parenta25710428e1a6ef9fff3d70e3f50c01a88cde9f2 (diff)
test: gstreamer: Factor out code into a base class
A lot of code used in the single stream test is boiler plate and common across every gstreamer test. Factor out this code into a base class called GstreamerTest. Also update the gstreamer_single_stream_test to use the GstreamerTest base class. Signed-off-by: Vedant Paranjape <vedantparanjape160201@gmail.com> Reviewed-by: Nicolas Dufresne <nicolas.dufresne@collabora.com> Reviewed-by: Paul Elder <paul.elder@ideasonboard.com> Signed-off-by: Paul Elder <paul.elder@ideasonboard.com>
Diffstat (limited to 'test/gstreamer/gstreamer_test.h')
-rw-r--r--test/gstreamer/gstreamer_test.h39
1 files changed, 39 insertions, 0 deletions
diff --git a/test/gstreamer/gstreamer_test.h b/test/gstreamer/gstreamer_test.h
new file mode 100644
index 00000000..9c50e288
--- /dev/null
+++ b/test/gstreamer/gstreamer_test.h
@@ -0,0 +1,39 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+/*
+ * Copyright (C) 2021, Vedant Paranjape
+ *
+ * gstreamer_test.cpp - GStreamer test base class
+ */
+
+#ifndef __LIBCAMERA_GSTREAMER_TEST_H__
+#define __LIBCAMERA_GSTREAMER_TEST_H__
+
+#include <iostream>
+#include <unistd.h>
+
+#include <libcamera/base/utils.h>
+
+#include "libcamera/internal/source_paths.h"
+
+#include <gst/gst.h>
+
+using namespace std;
+
+class GstreamerTest
+{
+public:
+ GstreamerTest();
+ virtual ~GstreamerTest();
+
+protected:
+ virtual int createPipeline();
+ int startPipeline();
+ int processEvent();
+ void printError(GstMessage *msg);
+
+ GstElement *pipeline_;
+ GstElement *libcameraSrc_;
+ int status_;
+};
+
+#endif /* __LIBCAMERA_GSTREAMER_TEST_H__ */