iox::popo::ChunkQueuePusher🔗
The ChunkQueuePusher is the low layer building block to push SharedChunks in a chunk queue. Together with the ChunkDistributor and ChunkQueuePopper the ChunkQueuePusher builds the infrastructure to exchange memory chunks between different data producers and consumers that could be located in different processes. A ChunkQueuePusher is the part of the chunk queue that is knwon by the ChunkDistributor. More...
#include <chunk_queue_pusher.hpp>
Public Types🔗
Name | |
---|---|
using ChunkQueueDataType | MemberType_t |
Public Functions🔗
Name | |
---|---|
ChunkQueuePusher(cxx::not_null< MemberType_t *const > chunkQueueDataPtr) | |
ChunkQueuePusher(const ChunkQueuePusher & other) | |
ChunkQueuePusher & | operator=(const ChunkQueuePusher & ) |
ChunkQueuePusher(ChunkQueuePusher && rhs) =default | |
ChunkQueuePusher & | operator=(ChunkQueuePusher && rhs) =default |
~ChunkQueuePusher() =default | |
bool | push(mepoo::SharedChunk chunk) push a new chunk to the chunk queue |
void | lostAChunk() tell the queue that it lost a chunk (e.g. because push failed and there will be no retry) |
Protected Functions🔗
Name | |
---|---|
const MemberType_t * | getMembers() const |
MemberType_t * | getMembers() |
Detailed Description🔗
template <typename ChunkQueueDataType >
class iox::popo::ChunkQueuePusher;
The ChunkQueuePusher is the low layer building block to push SharedChunks in a chunk queue. Together with the ChunkDistributor and ChunkQueuePopper the ChunkQueuePusher builds the infrastructure to exchange memory chunks between different data producers and consumers that could be located in different processes. A ChunkQueuePusher is the part of the chunk queue that is knwon by the ChunkDistributor.
Public Types Documentation🔗
using MemberType_t🔗
using iox::popo::ChunkQueuePusher< ChunkQueueDataType >::MemberType_t = ChunkQueueDataType;
Public Functions Documentation🔗
function ChunkQueuePusher🔗
inline explicit ChunkQueuePusher(
cxx::not_null< MemberType_t *const > chunkQueueDataPtr
)
function ChunkQueuePusher🔗
ChunkQueuePusher(
const ChunkQueuePusher & other
)
function operator=🔗
ChunkQueuePusher & operator=(
const ChunkQueuePusher &
)
function ChunkQueuePusher🔗
ChunkQueuePusher(
ChunkQueuePusher && rhs
) =default
function operator=🔗
ChunkQueuePusher & operator=(
ChunkQueuePusher && rhs
) =default
function ~ChunkQueuePusher🔗
~ChunkQueuePusher() =default
function push🔗
inline bool push(
mepoo::SharedChunk chunk
)
push a new chunk to the chunk queue
Parameters:
- shared chunk object
Return: false if a queue overflow occurred, otherwise true
function lostAChunk🔗
inline void lostAChunk()
tell the queue that it lost a chunk (e.g. because push failed and there will be no retry)
Protected Functions Documentation🔗
function getMembers🔗
inline const MemberType_t * getMembers() const
function getMembers🔗
MemberType_t * getMembers()
Updated on 31 May 2022 at 15:29:16 CEST