OnixS C++ ICE Binary Order Entry Handler 1.0.0
API Documentation
Loading...
Searching...
No Matches
MessageBatchCombiner Class Reference

Public Member Functions

 MessageBatchCombiner ()=default
template<typename MessageTypeT, size_t MaxMessageSize = GetMaxMessageSize<typename HeldAdapter<MessageTypeT>::SbeType, DefaultMaxGroupItems>::Size, typename MessageInitializer = FieldsInitPolicy>
void add (MessageBatch< MessageTypeT, MaxMessageSize, MessageInitializer > &batch)
template<typename MessageTypeT, size_t MaxMessageSize = GetMaxMessageSize<typename HeldAdapter<MessageTypeT>::SbeType, DefaultMaxGroupItems>::Size, typename MessageInitializer = FieldsInitPolicy>
void add (MessageBatch< MessageTypeT, MaxMessageSize, MessageInitializer > &&batch)=delete
template<typename MessageTypeT, size_t MaxMessageSize = GetMaxMessageSize<typename HeldAdapter<MessageTypeT>::SbeType, DefaultMaxGroupItems>::Size, typename MessageInitializer = FieldsInitPolicy>
void add (MessageHolder< MessageTypeT, MaxMessageSize, MessageInitializer > &holder)
template<typename MessageTypeT, size_t MaxMessageSize = GetMaxMessageSize<typename HeldAdapter<MessageTypeT>::SbeType, DefaultMaxGroupItems>::Size, typename MessageInitializer = FieldsInitPolicy>
void add (MessageHolder< MessageTypeT, MaxMessageSize, MessageInitializer > &&holder)=delete
void clear ()
NetMessagesRange getRange (size_t index) noexcept
 MessageBatchCombiner (const MessageBatchCombiner &)=delete
MessageBatchCombineroperator= (const MessageBatchCombiner &)=delete

Friends

class OnixS::ICE::BOE::Session
class OnixS::ICE::BOE::Messaging::MessageBatchChecker

Detailed Description

Warning
The class does not copy combined messages and does not store them internally. Therefore, the lifetime of combined messages should be greater or equal to the lifetime of this class instance.

Definition at line 131 of file MessageBatch.h.

Constructor & Destructor Documentation

◆ MessageBatchCombiner() [1/2]

MessageBatchCombiner ( )
default

Creates an empty message batch combiner.

The add method should be used to fill the batch.

◆ MessageBatchCombiner() [2/2]

Member Function Documentation

◆ add() [1/4]

template<typename MessageTypeT, size_t MaxMessageSize = GetMaxMessageSize<typename HeldAdapter<MessageTypeT>::SbeType, DefaultMaxGroupItems>::Size, typename MessageInitializer = FieldsInitPolicy>
void add ( MessageBatch< MessageTypeT, MaxMessageSize, MessageInitializer > && batch)
delete

◆ add() [2/4]

template<typename MessageTypeT, size_t MaxMessageSize = GetMaxMessageSize<typename HeldAdapter<MessageTypeT>::SbeType, DefaultMaxGroupItems>::Size, typename MessageInitializer = FieldsInitPolicy>
void add ( MessageBatch< MessageTypeT, MaxMessageSize, MessageInitializer > & batch)
inline

Adds the message batch to the array of combined messages.

Updates headers of SBE messages to be ready for sending.

Definition at line 148 of file MessageBatch.h.

◆ add() [3/4]

template<typename MessageTypeT, size_t MaxMessageSize = GetMaxMessageSize<typename HeldAdapter<MessageTypeT>::SbeType, DefaultMaxGroupItems>::Size, typename MessageInitializer = FieldsInitPolicy>
void add ( MessageHolder< MessageTypeT, MaxMessageSize, MessageInitializer > && holder)
delete

◆ add() [4/4]

template<typename MessageTypeT, size_t MaxMessageSize = GetMaxMessageSize<typename HeldAdapter<MessageTypeT>::SbeType, DefaultMaxGroupItems>::Size, typename MessageInitializer = FieldsInitPolicy>
void add ( MessageHolder< MessageTypeT, MaxMessageSize, MessageInitializer > & holder)
inline

Adds the message to the array of combined messages.

Updates headers of the SBE message to be ready for sending.

Definition at line 167 of file MessageBatch.h.

◆ clear()

void clear ( )
inline

Removes all combined messages.

Definition at line 180 of file MessageBatch.h.

◆ getRange()

NetMessagesRange getRange ( size_t index)
inlinenoexcept

Provides a range of messages.

Definition at line 188 of file MessageBatch.h.

◆ operator=()

MessageBatchCombiner & operator= ( const MessageBatchCombiner & )
delete

◆ OnixS::ICE::BOE::Messaging::MessageBatchChecker

Definition at line 200 of file MessageBatch.h.

◆ OnixS::ICE::BOE::Session

friend class OnixS::ICE::BOE::Session
friend

Definition at line 199 of file MessageBatch.h.