libcamera: request: Add a ControlList

Provide a ControlList on request objects to facilitate setting controls.

Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Reviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
This commit is contained in:
Kieran Bingham 2019-06-20 14:01:38 +01:00 committed by Laurent Pinchart
parent 0adc13ff76
commit b69ea51c7c
2 changed files with 20 additions and 1 deletions

View file

@ -10,6 +10,7 @@
#include <map>
#include <unordered_set>
#include <libcamera/controls.h>
#include <libcamera/signal.h>
namespace libcamera {
@ -32,6 +33,7 @@ public:
Request(const Request &) = delete;
Request &operator=(const Request &) = delete;
ControlList &controls() { return controls_; }
const std::map<Stream *, Buffer *> &buffers() const { return bufferMap_; }
int setBuffers(const std::map<Stream *, Buffer *> &streamMap);
Buffer *findBuffer(Stream *stream) const;
@ -50,6 +52,7 @@ private:
bool completeBuffer(Buffer *buffer);
Camera *camera_;
ControlList controls_;
std::map<Stream *, Buffer *> bufferMap_;
std::unordered_set<Buffer *> pending_;