summaryrefslogtreecommitdiff
path: root/src/libcamera/byte_stream_buffer.cpp
diff options
context:
space:
mode:
authorJacopo Mondi <jacopo@jmondi.org>2020-01-13 13:40:46 +0100
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2020-03-06 18:10:43 +0200
commit8a1f0321dc031a34e5fd19bfeefd8e95f9a6b683 (patch)
tree7af8e75093e7261d8b6d6ff9d9a2a14bc918e55e /src/libcamera/byte_stream_buffer.cpp
parent34fc1f38bd3cfb85c9888301bcafdbca2f71b6d2 (diff)
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 <jacopo@jmondi.org> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Diffstat (limited to 'src/libcamera/byte_stream_buffer.cpp')
-rw-r--r--src/libcamera/byte_stream_buffer.cpp18
1 files changed, 18 insertions, 0 deletions
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
@@ -233,6 +233,15 @@ int ByteStreamBuffer::skip(size_t size)
*/
/**
+ * \fn template<typename T> int ByteStreamBuffer::read(const Span<T> &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<typename T> int ByteStreamBuffer::write(const T *t)
* \brief Write \a t to the managed memory buffer
* \param[in] t The data to write to memory
@@ -241,6 +250,15 @@ int ByteStreamBuffer::skip(size_t size)
* \retval -ENOSPC no more space is available in the managed memory buffer
*/
+/**
+ * \fn template<typename T> int ByteStreamBuffer::write(const Span<T> &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_)