28 #include <boost/interprocess/mapped_region.hpp>
61 bool has()
const override {
62 throw std::runtime_error(
"RdbTransceiverShm: has not implemented yet");
65 std::vector<std::shared_ptr<RDB_MSG_t>>
receive()
override;
67 void send(
const RDB_MSG_t*,
size_t)
override {
68 throw std::runtime_error(
"RdbTransceiverShm: send not implemented");
71 void to_json(cloe::Json& j)
const override {
73 {
"connection_endpoint",
"shm://unknown-key"},
74 {
"num_errors", this->num_errors_},
75 {
"num_messages", this->num_messages_},
86 boost::interprocess::mapped_region
region_;
98 uint64_t num_errors_{0};
99 uint64_t num_messages_{0};
Definition: rdb_transceiver_shm.hpp:47
void send(const RDB_MSG_t *, size_t) override
Definition: rdb_transceiver_shm.hpp:67
RDB_SHM_BUFFER_INFO_t ** buffer_info_
Array of pointers to buffer information.
Definition: rdb_transceiver_shm.hpp:92
RdbTransceiverShm(key_t key, uint32_t release_mask)
Definition: rdb_transceiver_shm.cpp:44
bool has() const override
Definition: rdb_transceiver_shm.hpp:61
std::vector< std::shared_ptr< RDB_MSG_t > > receive() override
Definition: rdb_transceiver_shm.cpp:90
RDB_MSG_t ** rdb_msg_
Array of pointers to rdb messages.
Definition: rdb_transceiver_shm.hpp:95
uint32_t release_mask_
VTD uses this mask to notify client when data in buffer is ready.
Definition: rdb_transceiver_shm.hpp:83
boost::interprocess::mapped_region region_
Shared memory region.
Definition: rdb_transceiver_shm.hpp:86
RDB_SHM_HDR_t * rdb_shm_hdr_
Pointer to the shared memory management header.
Definition: rdb_transceiver_shm.hpp:89
Definition: rdb_transceiver.hpp:59