65 size_t offset()
const {
return _offset; }
68 size_t size()
const {
return _size; }
75 if(!_buffer)
return nullptr;
76 return static_cast<const uint8_t *
>(_buffer->
data()) + _offset;
84 if(!_buffer)
return nullptr;
85 return static_cast<uint8_t *
>(_buffer->
data()) + _offset;
89 bool isNull()
const {
return !_buffer; }
92 bool isValid()
const {
return _buffer !=
nullptr; }
Lightweight view into a region of a shared Buffer.
Definition bufferview.h:41
BufferView()=default
Default constructor. Creates an empty view with no buffer.
bool isNull() const
Returns true if no buffer is set.
Definition bufferview.h:89
const Buffer::Ptr & buffer() const
Returns the shared backing buffer.
Definition bufferview.h:62
size_t offset() const
Returns the byte offset into the buffer.
Definition bufferview.h:65
bool isValid() const
Returns true if a buffer is set.
Definition bufferview.h:92
uint8_t * data()
Returns a mutable pointer to this view's data.
Definition bufferview.h:83
size_t size() const
Returns the byte size of this view.
Definition bufferview.h:68
promeki::List< BufferView > List
List of BufferView values.
Definition bufferview.h:44
const uint8_t * data() const
Returns a const pointer to this view's data.
Definition bufferview.h:74
BufferView(Buffer::Ptr buf, size_t offset, size_t size)
Constructs a BufferView referencing a region of a shared buffer.
Definition bufferview.h:58
Dynamic array container wrapping std::vector.
Definition list.h:40
List()=default
Default constructor. Creates an empty list.
T * data() noexcept
Returns a pointer to the underlying contiguous storage.
Definition list.h:286
#define PROMEKI_NAMESPACE_BEGIN
Starts a promeki namespace block.
Definition namespace.h:14
#define PROMEKI_NAMESPACE_END
Ends a promeki namespace block.
Definition namespace.h:19