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 26 April 2021 at 15:31:02 CEST