summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKieran Bingham <kieran.bingham@ideasonboard.com>2021-02-08 14:30:31 +0000
committerKieran Bingham <kieran.bingham@ideasonboard.com>2021-02-12 11:56:00 +0000
commit1473add188f7a11fb8f5e17d21659a3b30a7063f (patch)
tree03bee283e848608983b5dc32905bac85067847a3
parentdb55e09b42f87d9a7fde32afc4e0eee90b4c7690 (diff)
libcamera: Move extensible to class
The Extensible concept is a generic Class helper. To prepare for further class helper additions, move the specific extensible implementation and header to a more generic class header and source. Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
-rw-r--r--include/libcamera/camera.h2
-rw-r--r--include/libcamera/camera_manager.h2
-rw-r--r--include/libcamera/class.h (renamed from include/libcamera/extensible.h)8
-rw-r--r--include/libcamera/meson.build2
-rw-r--r--src/libcamera/class.cpp (renamed from src/libcamera/extensible.cpp)11
-rw-r--r--src/libcamera/meson.build2
6 files changed, 15 insertions, 12 deletions
diff --git a/include/libcamera/camera.h b/include/libcamera/camera.h
index f94f8599..cff9f46e 100644
--- a/include/libcamera/camera.h
+++ b/include/libcamera/camera.h
@@ -12,8 +12,8 @@
#include <stdint.h>
#include <string>
+#include <libcamera/class.h>
#include <libcamera/controls.h>
-#include <libcamera/extensible.h>
#include <libcamera/object.h>
#include <libcamera/request.h>
#include <libcamera/signal.h>
diff --git a/include/libcamera/camera_manager.h b/include/libcamera/camera_manager.h
index 8c8830e7..7b8e533f 100644
--- a/include/libcamera/camera_manager.h
+++ b/include/libcamera/camera_manager.h
@@ -12,7 +12,7 @@
#include <sys/types.h>
#include <vector>
-#include <libcamera/extensible.h>
+#include <libcamera/class.h>
#include <libcamera/object.h>
#include <libcamera/signal.h>
diff --git a/include/libcamera/extensible.h b/include/libcamera/class.h
index 3f25a47c..cb278e58 100644
--- a/include/libcamera/extensible.h
+++ b/include/libcamera/class.h
@@ -2,10 +2,10 @@
/*
* Copyright (C) 2020, Google Inc.
*
- * extensible.h - Utilities to create extensible public classes with stable ABIs
+ * class.h - Utilities and helpers for classes
*/
-#ifndef __LIBCAMERA_EXTENSIBLE_H__
-#define __LIBCAMERA_EXTENSIBLE_H__
+#ifndef __LIBCAMERA_CLASS_H__
+#define __LIBCAMERA_CLASS_H__
#include <memory>
@@ -84,4 +84,4 @@ private:
} /* namespace libcamera */
-#endif /* __LIBCAMERA_EXTENSIBLE_H__ */
+#endif /* __LIBCAMERA_CLASS_H__ */
diff --git a/include/libcamera/meson.build b/include/libcamera/meson.build
index eb787d44..c7b8ee8e 100644
--- a/include/libcamera/meson.build
+++ b/include/libcamera/meson.build
@@ -5,9 +5,9 @@ libcamera_public_headers = files([
'buffer.h',
'camera.h',
'camera_manager.h',
+ 'class.h',
'compiler.h',
'controls.h',
- 'extensible.h',
'file_descriptor.h',
'framebuffer_allocator.h',
'geometry.h',
diff --git a/src/libcamera/extensible.cpp b/src/libcamera/class.cpp
index 1dcb0bf1..ce230be9 100644
--- a/src/libcamera/extensible.cpp
+++ b/src/libcamera/class.cpp
@@ -2,14 +2,17 @@
/*
* Copyright (C) 2020, Google Inc.
*
- * extensible.cpp - Utilities to create extensible public classes with stable ABIs
+ * class.cpp - Utilities and helpers for classes
*/
-#include <libcamera/extensible.h>
+#include <libcamera/class.h>
/**
- * \file extensible.h
- * \brief Utilities to create extensible public classes with stable ABIs
+ * \file class.h
+ * \brief Utilities to help constructing class interfaces
+ *
+ * The extensible class can be inherited to create public classes with stable
+ * ABIs.
*/
namespace libcamera {
diff --git a/src/libcamera/meson.build b/src/libcamera/meson.build
index ebce19d9..939f1189 100644
--- a/src/libcamera/meson.build
+++ b/src/libcamera/meson.build
@@ -9,6 +9,7 @@ libcamera_sources = files([
'camera_controls.cpp',
'camera_manager.cpp',
'camera_sensor.cpp',
+ 'class.cpp',
'controls.cpp',
'control_serializer.cpp',
'control_validator.cpp',
@@ -18,7 +19,6 @@ libcamera_sources = files([
'event_dispatcher.cpp',
'event_dispatcher_poll.cpp',
'event_notifier.cpp',
- 'extensible.cpp',
'file.cpp',
'file_descriptor.cpp',
'formats.cpp',