|
Condy v1.7.0
C++ Asynchronous System Call Layer for Linux
|
Buffer table for io_uring. More...
#include <ring_settings.hpp>
Public Member Functions | |
| int | init (size_t capacity) noexcept |
| Initialize the buffer table with the given capacity. | |
| int | init (const iovec *vecs, unsigned nr_vecs) |
| Initialize the buffer table with the given array of iovec structures. | |
| int | destroy () noexcept |
| Destroy the buffer table. | |
| int | update (unsigned index_base, const iovec *vecs, unsigned nr_vecs) noexcept |
| Update the buffer table starting from the given index. | |
| int | clone_buffers (BufferTable &src, unsigned int dst_off=0, unsigned int src_off=0, unsigned int nr=0) noexcept |
| Clone buffers from another BufferTable into this one. | |
Buffer table for io_uring.
This class makes an abstraction over the io_uring buffer registration interface.
Definition at line 86 of file ring_settings.hpp.
|
inlinenoexcept |
Clone buffers from another BufferTable into this one.
| src | The source BufferTable to clone from |
| dst_off | The starting offset in the destination buffer table |
| src_off | The starting offset in the source buffer table |
| nr | The number of buffers to clone |
Definition at line 143 of file ring_settings.hpp.
|
inlinenoexcept |
Destroy the buffer table.
Definition at line 117 of file ring_settings.hpp.
|
inline |
Initialize the buffer table with the given array of iovec structures.
| vecs | Pointer to the array of iovec structures representing buffers |
| nr_vecs | Number of buffers in the array |
Definition at line 109 of file ring_settings.hpp.
|
inlinenoexcept |
Initialize the buffer table with the given capacity.
| capacity | The number of buffers to allocate in the table |
Definition at line 98 of file ring_settings.hpp.
|
inlinenoexcept |
Update the buffer table starting from the given index.
| index_base | The starting index to update |
| vecs | Pointer to the array of iovec structures representing buffers |
| nr_vecs | Number of buffers to update |
Definition at line 127 of file ring_settings.hpp.