diff options
author | Niklas Söderlund <niklas.soderlund@ragnatech.se> | 2020-09-25 00:18:43 +0200 |
---|---|---|
committer | Niklas Söderlund <niklas.soderlund@ragnatech.se> | 2020-09-30 14:24:42 +0200 |
commit | 038e2fd66cd07354e2527e7e9aecd8a849f08799 (patch) | |
tree | e9d135aaeada84f88dc102656e0f5f830dda7b2d /src/libcamera/pipeline/rkisp1/rkisp1_path.h | |
parent | c2dfdecd056247808a7cb3175df0086cac78ccb2 (diff) |
libcamera: pipeline: rkisp1: Move start and stop of path to RkISP1Path
Move the start and stop of a path to RkISP1Path. This allows the
importing of buffers to be moved closer the path start/stop simplifying
the code. Also by adding a simple running tracker the error logic in
PipelineHandlerRkISP1 can be simplified as stop() can always be called.
This also removes all external users of RkISP1Path::video_ so it can be
made private.
Signed-off-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Diffstat (limited to 'src/libcamera/pipeline/rkisp1/rkisp1_path.h')
-rw-r--r-- | src/libcamera/pipeline/rkisp1/rkisp1_path.h | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/libcamera/pipeline/rkisp1/rkisp1_path.h b/src/libcamera/pipeline/rkisp1/rkisp1_path.h index 377772ca..e2eb1be9 100644 --- a/src/libcamera/pipeline/rkisp1/rkisp1_path.h +++ b/src/libcamera/pipeline/rkisp1/rkisp1_path.h @@ -45,22 +45,24 @@ public: return video_->exportBuffers(bufferCount, buffers); } + int start(); + void stop(); + int queueBuffer(FrameBuffer *buffer) { return video_->queueBuffer(buffer); } Signal<FrameBuffer *> &bufferReady() { return video_->bufferReady; } - /* \todo Make video private. */ - V4L2VideoDevice *video_; - private: static constexpr unsigned int RKISP1_BUFFER_COUNT = 4; const char *name_; + bool running_; const Span<const PixelFormat> formats_; const Size minResolution_; const Size maxResolution_; V4L2Subdevice *resizer_; + V4L2VideoDevice *video_; }; class RkISP1MainPath : public RkISP1Path |