[libcamera-devel] [PATCH v5 2/6] libcamera: camera_manager: Refactor pipelines creation into separate function

Umang Jain email at uajain.com
Tue Jun 16 21:45:34 CEST 2020


This commit introduces no functional changes.
Split pipelines creation code into a separate function,
so that the function can be re-used for upcoming hotplug
functionality in subsequent commits.

Also, fixup correct tag for \todo.

Signed-off-by: Umang Jain <email at uajain.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
---
 src/libcamera/camera_manager.cpp | 19 +++++++++++++------
 1 file changed, 13 insertions(+), 6 deletions(-)

diff --git a/src/libcamera/camera_manager.cpp b/src/libcamera/camera_manager.cpp
index dbdc78e..de6d5d8 100644
--- a/src/libcamera/camera_manager.cpp
+++ b/src/libcamera/camera_manager.cpp
@@ -55,6 +55,7 @@ protected:
 
 private:
 	int init();
+	void createPipelineHandlers();
 	void cleanup();
 
 	CameraManager *cm_;
@@ -123,12 +124,20 @@ int CameraManager::Private::init()
 	if (!enumerator_ || enumerator_->enumerate())
 		return -ENODEV;
 
+	createPipelineHandlers();
+
+	return 0;
+}
+
+void CameraManager::Private::createPipelineHandlers()
+{
 	/*
-	 * TODO: Try to read handlers and order from configuration
+	 * \todo Try to read handlers and order from configuration
 	 * file and only fallback on all handlers if there is no
 	 * configuration file.
 	 */
-	std::vector<PipelineHandlerFactory *> &factories = PipelineHandlerFactory::factories();
+	std::vector<PipelineHandlerFactory *> &factories =
+		PipelineHandlerFactory::factories();
 
 	for (PipelineHandlerFactory *factory : factories) {
 		/*
@@ -146,14 +155,12 @@ int CameraManager::Private::init()
 		}
 	}
 
-	/* TODO: register hot-plug callback here */
-
-	return 0;
+	/* \todo Register hot-plug callback here */
 }
 
 void CameraManager::Private::cleanup()
 {
-	/* TODO: unregister hot-plug callback here */
+	/* \todo Unregister hot-plug callback here */
 
 	/*
 	 * Release all references to cameras to ensure they all get destroyed
-- 
2.26.2



More information about the libcamera-devel mailing list