8#include "ublk/ublk_cmd.h"
17namespace ex = condy::detail::ex;
29 const ublksrv_io_desc *
iod;
37 { t.handle_io(io_data) }
noexcept -> detail::ex::sender;
43 { t.init_queue(q_id) }
noexcept -> detail::ex::sender;
44 { t.destroy_queue(q_id) }
noexcept -> std::same_as<void>;
50concept ShmHandler =
requires(T &t, int32_t index,
void *base,
size_t size) {
51 { t.handle_reg_shm(index, base, size) }
noexcept -> detail::ex::sender;
52 { t.handle_unreg_shm(index) }
noexcept -> std::same_as<void>;
Concept of an async handler with handle_io(const IoData&).
Concept of a handler with per-queue init/destroy callbacks.
Concept of a handler notified of shared memory buffer registration.
The main namespace of the ublk-cpp library.
Context of a single I/O request delivered to a handler.
uint16_t tag
Tag of the request.
void * buf
Buffer for the request data.
const ublksrv_io_desc * iod
I/O descriptor of the request in shared memory.
uint16_t q_id
Queue ID of the request.