#include <ring_buffer.h>
Inherits ringbuffer::AbstractWriter.
◆ Writer() [1/2]
ringbuffer::Writer::Writer |
( |
const Reader & |
r | ) |
|
|
inline |
◆ Writer() [2/2]
ringbuffer::Writer::Writer |
( |
const Writer & |
that | ) |
|
|
inline |
◆ ~Writer()
virtual ringbuffer::Writer::~Writer |
( |
| ) |
|
|
inlinevirtual |
◆ finish()
virtual void ringbuffer::Writer::finish |
( |
const WriteMarker & |
marker | ) |
|
|
inlineoverridevirtual |
◆ get_max_message_size()
virtual size_t ringbuffer::Writer::get_max_message_size |
( |
| ) |
|
|
inlineoverridevirtual |
◆ prepare()
virtual std::optional< size_t > ringbuffer::Writer::prepare |
( |
Message |
m, |
|
|
size_t |
size, |
|
|
bool |
wait = true , |
|
|
size_t * |
identifier = nullptr |
|
) |
| |
|
inlineoverridevirtual |
Implementation requires 3 methods - prepare, finish, and write_bytes. For each message, prepare will be called with the total message size. It should return a WriteMarker for this reservation. That WriteMarker will be passed to write_bytes, which may be called repeatedly for each part of the message. write_bytes returns an opaque WriteMarker which will be passed to the next invocation of write_bytes, to track progress. Finally, finish will be called with the WriteMarker initially returned from prepare.
Implements ringbuffer::AbstractWriter.
◆ write_bytes()
virtual WriteMarker ringbuffer::Writer::write_bytes |
( |
const WriteMarker & |
marker, |
|
|
const uint8_t * |
bytes, |
|
|
size_t |
size |
|
) |
| |
|
inlineoverrideprotectedvirtual |
◆ bd
◆ rmax
const size_t ringbuffer::Writer::rmax |
|
protected |
The documentation for this class was generated from the following file: