libcamera: camera_manager: Make the class a singleton

There can only be a single camera manager instance in the application.
Creating it as a singleton helps avoiding mistakes. It also allows the
camera manager to be used as a storage of global data, such as the
future event dispatcher.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>
Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>
This commit is contained in:
Laurent Pinchart 2019-01-05 12:58:20 +02:00
parent f3829b5745
commit 8b0de29c41
3 changed files with 22 additions and 8 deletions

View file

@ -19,10 +19,7 @@ class ListTest : public Test
protected:
int init()
{
cm = new CameraManager();
if (!cm)
return -ENOMEM;
cm = CameraManager::instance();
cm->start();
return 0;
@ -43,8 +40,6 @@ protected:
void cleanup()
{
cm->stop();
delete cm;
}
private: