An abstract interface for reading MCAP data. More...
#include <reader.hpp>
Public Member Functions | |
virtual uint64_t | read (std::byte **output, uint64_t offset, uint64_t size)=0 |
This method is called by MCAP reader classes when they need to read a portion of the file. More... | |
virtual uint64_t | size () const =0 |
Returns the size of the file in bytes. More... | |
virtual | ~IReadable ()=default |
An abstract interface for reading MCAP data.
Definition at line 43 of file reader.hpp.
|
virtualdefault |
|
pure virtual |
This method is called by MCAP reader classes when they need to read a portion of the file.
output | A pointer to a pointer to the buffer to write to. This method is expected to either maintain an internal buffer, read data into it, and update this pointer to point at the internal buffer, or update this pointer to point directly at the source data if possible. The pointer and data must remain valid and unmodified until the next call to read(). |
offset | The offset in bytes from the beginning of the file to read. |
size | The number of bytes to read. |
output
to output + size
. If the read fails, this method should return 0. Implemented in mcap::LZ4Reader, mcap::ZStdReader, mcap::BufferReader, mcap::FileStreamReader, and mcap::FileReader.
|
pure virtual |
Returns the size of the file in bytes.
Implemented in mcap::LZ4Reader, mcap::ZStdReader, mcap::BufferReader, mcap::FileStreamReader, and mcap::FileReader.