libcamera: stream: Shorten access to the bufferPool

All interactions with the Stream's buffers currently go through the
BufferPool. In order to shorten accessing the buffers array, and eventually
restrict access to the Stream's internal buffer pool, provide operations to
access, create and destroy buffers.

It is still possible to access the pool for pipeline handlers to
populate it by exporting buffers from a video device to Stream's pool.

Signed-off-by: Jacopo Mondi <jacopo@jmondi.org>
Reviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>
This commit is contained in:
Jacopo Mondi 2019-06-28 10:03:02 +02:00 committed by Laurent Pinchart
parent 5085bc03bc
commit be3e3ebc92
5 changed files with 42 additions and 6 deletions

View file

@ -154,7 +154,7 @@ void Capture::requestComplete(Request *request, const std::map<Stream *, Buffer
for (auto it = buffers.begin(); it != buffers.end(); ++it) {
Stream *stream = it->first;
Buffer *buffer = it->second;
BufferMemory *mem = &stream->bufferPool().buffers()[buffer->index()];
BufferMemory *mem = &stream->buffers()[buffer->index()];
const std::string &name = streamName_[stream];
info << " " << name