From 8a1f0321dc031a34e5fd19bfeefd8e95f9a6b683 Mon Sep 17 00:00:00 2001 From: Jacopo Mondi Date: Mon, 13 Jan 2020 13:40:46 +0100 Subject: libcamera: byte_stream_buffer: Add Span<> support Add support to write and read a Span<> to and from the ByteStreamBuffer class. Signed-off-by: Jacopo Mondi Signed-off-by: Laurent Pinchart Reviewed-by: Kieran Bingham --- src/libcamera/byte_stream_buffer.cpp | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'src/libcamera/byte_stream_buffer.cpp') diff --git a/src/libcamera/byte_stream_buffer.cpp b/src/libcamera/byte_stream_buffer.cpp index cd1d8a36..17e710c4 100644 --- a/src/libcamera/byte_stream_buffer.cpp +++ b/src/libcamera/byte_stream_buffer.cpp @@ -232,6 +232,15 @@ int ByteStreamBuffer::skip(size_t size) * \retval -ENOSPC no more space is available in the managed memory buffer */ +/** + * \fn template int ByteStreamBuffer::read(const Span &data) + * \brief Read data from the managed memory buffer into Span \a data + * \param[out] data Span representing the destination memory + * \return 0 on success, a negative error code otherwise + * \retval -EACCES attempting to read from a write buffer + * \retval -ENOSPC no more space is available in the managed memory buffer + */ + /** * \fn template int ByteStreamBuffer::write(const T *t) * \brief Write \a t to the managed memory buffer @@ -241,6 +250,15 @@ int ByteStreamBuffer::skip(size_t size) * \retval -ENOSPC no more space is available in the managed memory buffer */ +/** + * \fn template int ByteStreamBuffer::write(const Span &data) + * \brief Write \a data to the managed memory buffer + * \param[in] data The data to write to memory + * \return 0 on success, a negative error code otherwise + * \retval -EACCES attempting to write to a read buffer + * \retval -ENOSPC no more space is available in the managed memory buffer + */ + int ByteStreamBuffer::read(uint8_t *data, size_t size) { if (!read_) -- cgit v1.2.1