summaryrefslogtreecommitdiff
path: root/include/libcamera/request.h
diff options
context:
space:
mode:
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>2019-09-28 02:45:49 +0300
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2019-10-05 20:02:51 +0300
commitecf1c2e57b357f1b843796fd9ac4c77da940a26a (patch)
treec955705f0641f26b9e53749f40756509cb7e2d16 /include/libcamera/request.h
parentf671d84ceb491fdb07ad39d1fe20950fd6482e4f (diff)
libcamera: controls: Use ControlValidator to validate ControlList
Replace the manual validation of controls against a Camera with usage of the new ControlValidator interface. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>
Diffstat (limited to 'include/libcamera/request.h')
-rw-r--r--include/libcamera/request.h7
1 files changed, 4 insertions, 3 deletions
diff --git a/include/libcamera/request.h b/include/libcamera/request.h
index 9edf1ced..e3db5243 100644
--- a/include/libcamera/request.h
+++ b/include/libcamera/request.h
@@ -19,9 +19,9 @@ namespace libcamera {
class Buffer;
class Camera;
+class CameraControlValidator;
class Stream;
-
class Request
{
public:
@@ -36,7 +36,7 @@ public:
Request &operator=(const Request &) = delete;
~Request();
- ControlList &controls() { return controls_; }
+ ControlList &controls() { return *controls_; }
const std::map<Stream *, Buffer *> &buffers() const { return bufferMap_; }
int addBuffer(std::unique_ptr<Buffer> buffer);
Buffer *findBuffer(Stream *stream) const;
@@ -56,7 +56,8 @@ private:
bool completeBuffer(Buffer *buffer);
Camera *camera_;
- ControlList controls_;
+ CameraControlValidator *validator_;
+ ControlList *controls_;
std::map<Stream *, Buffer *> bufferMap_;
std::unordered_set<Buffer *> pending_;