libcamera: Use stream roles directly instead of StreamUsage

In order to prepare for an API overhall of the camera configuration
generation, remove the StreamUsage class and replace its uses by stream
roles. The size hints can't be specified anymore, and will be replaced
with an API on the StreamConfiguration to negotiate configuration
parameters with cameras.

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-05-23 00:27:13 +03:00
parent 2ca2d65870
commit a40023e6cc
16 changed files with 69 additions and 173 deletions
+3 -3
View File
@@ -14,6 +14,8 @@
#include <string>
#include <vector>
#include <libcamera/stream.h>
namespace libcamera {
class Buffer;
@@ -26,8 +28,6 @@ class DeviceMatch;
class MediaDevice;
class PipelineHandler;
class Request;
class Stream;
class StreamUsage;
class CameraData
{
@@ -61,7 +61,7 @@ public:
void unlock();
virtual CameraConfiguration
generateConfiguration(Camera *camera, const std::vector<StreamUsage> &usages) = 0;
generateConfiguration(Camera *camera, const StreamRoles &roles) = 0;
virtual int configure(Camera *camera, const CameraConfiguration &config) = 0;
virtual int allocateBuffers(Camera *camera,