summaryrefslogtreecommitdiff
path: root/src/libcamera/include/byte_stream_buffer.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/libcamera/include/byte_stream_buffer.h')
-rw-r--r--src/libcamera/include/byte_stream_buffer.h89
1 files changed, 0 insertions, 89 deletions
diff --git a/src/libcamera/include/byte_stream_buffer.h b/src/libcamera/include/byte_stream_buffer.h
deleted file mode 100644
index b3aaa8b9..00000000
--- a/src/libcamera/include/byte_stream_buffer.h
+++ /dev/null
@@ -1,89 +0,0 @@
-/* SPDX-License-Identifier: LGPL-2.1-or-later */
-/*
- * Copyright (C) 2019, Google Inc.
- *
- * byte_stream_buffer.h - Byte stream buffer
- */
-#ifndef __LIBCAMERA_BYTE_STREAM_BUFFER_H__
-#define __LIBCAMERA_BYTE_STREAM_BUFFER_H__
-
-#include <stddef.h>
-#include <stdint.h>
-#include <type_traits>
-
-#include <libcamera/span.h>
-
-namespace libcamera {
-
-class ByteStreamBuffer
-{
-public:
- ByteStreamBuffer(const uint8_t *base, size_t size);
- ByteStreamBuffer(uint8_t *base, size_t size);
- ByteStreamBuffer(ByteStreamBuffer &&other);
- ByteStreamBuffer &operator=(ByteStreamBuffer &&other);
-
- const uint8_t *base() const { return base_; }
- uint32_t offset() const { return (write_ ? write_ : read_) - base_; }
- size_t size() const { return size_; }
- bool overflow() const { return overflow_; }
-
- ByteStreamBuffer carveOut(size_t size);
- int skip(size_t size);
-
- template<typename T>
- int read(T *t)
- {
- return read(reinterpret_cast<uint8_t *>(t), sizeof(*t));
- }
-
- template<typename T>
- int read(const Span<T> &data)
- {
- return read(reinterpret_cast<uint8_t *>(data.data()),
- data.size_bytes());
- }
-
- template<typename T>
- const std::remove_reference_t<T> *read(size_t count = 1)
- {
- using return_type = const std::remove_reference_t<T> *;
- return reinterpret_cast<return_type>(read(sizeof(T), count));
- }
-
- template<typename T>
- int write(const T *t)
- {
- return write(reinterpret_cast<const uint8_t *>(t), sizeof(*t));
- }
-
- template<typename T>
- int write(const Span<T> &data)
- {
- return write(reinterpret_cast<const uint8_t *>(data.data()),
- data.size_bytes());
- }
-
-private:
- ByteStreamBuffer(const ByteStreamBuffer &other) = delete;
- ByteStreamBuffer &operator=(const ByteStreamBuffer &other) = delete;
-
- void setOverflow();
-
- int read(uint8_t *data, size_t size);
- const uint8_t *read(size_t size, size_t count);
- int write(const uint8_t *data, size_t size);
-
- ByteStreamBuffer *parent_;
-
- const uint8_t *base_;
- size_t size_;
- bool overflow_;
-
- const uint8_t *read_;
- uint8_t *write_;
-};
-
-} /* namespace libcamera */
-
-#endif /* __LIBCAMERA_BYTE_STREAM_BUFFER_H__ */