OnixS C++ CME MDP Premium Market Data Handler 5.11.1
Users' manual and API documentation
Loading...
Searching...
No Matches
IncrementalRefreshBookCombinedEntry< Order, Price > Class Template Reference

#include <OnixS/CME/MDH/MessageSupplements.h>

Public Member Functions

 IncrementalRefreshBookCombinedEntry (const Order &order, const Price &price) noexcept
 IncrementalRefreshBookCombinedEntry (const IncrementalRefreshBookCombinedEntry &other) noexcept=default
IncrementalRefreshBookCombinedEntry & operator= (const IncrementalRefreshBookCombinedEntry &other) noexcept=default
SecurityId securityId () const noexcept
Messaging::EntryTypeBook::Enum entryType () const noexcept
Messaging::OrderUpdateAction::Enum updateAction () const noexcept
bool orderId (OrderId &id) const noexcept
bool orderPriority (OrderPriority &priority) const noexcept
bool entryPx (Messaging::Decimal &price) const noexcept
bool displayQty (DisplayQuantity &quantity) const noexcept

Detailed Description

template<class Order, class Price>
class OnixS::CME::MDH::IncrementalRefreshBookCombinedEntry< Order, Price >
Template Parameters
OrderNothrow copy-constructible, copy-assignable, and destructible order-entry type. It must provide orderUpdateAction(), returning Messaging::OrderUpdateAction::Enum; orderId(), returning OrderId; orderPriority(OrderPriority&), returning bool; and displayQty(DisplayQuantity&), returning bool. All four accessors must be noexcept.
PriceNothrow copy-constructible, copy-assignable, and destructible price-entry type. It must provide securityId(), returning SecurityId; entryType(), returning Messaging::EntryTypeBook::Enum; and entryPx(Messaging::Decimal&), returning bool. All three accessors must be noexcept.

The combined entry obtains order-specific fields from Order and the security, entry type, and price from Price. Both components are lightweight non-owning views stored by value.

Note
The components reference encoded message data. The combined entry remains valid only while that data remains valid, typically for the duration of the listener callback in which the entry is supplied.

Definition at line 52 of file MessageSupplements.h.

Constructor & Destructor Documentation

◆ IncrementalRefreshBookCombinedEntry() [1/2]

template<class Order, class Price>
IncrementalRefreshBookCombinedEntry ( const Order & order,
const Price & price )
inlinenoexcept

Constructs a combined entry from its order and price components.

Parameters
orderOrder component of the update.
pricePrice component of the update.

Definition at line 72 of file MessageSupplements.h.

◆ IncrementalRefreshBookCombinedEntry() [2/2]

template<class Order, class Price>
IncrementalRefreshBookCombinedEntry ( const IncrementalRefreshBookCombinedEntry< Order, Price > & other)
defaultnoexcept

Constructs a copy of another combined entry.

Parameters
otherCombined entry to copy.

Member Function Documentation

◆ displayQty()

template<class Order, class Price>
bool displayQty ( DisplayQuantity & quantity) const
inlinenoexcept

Gets the displayed quantity of the affected order.

Parameters
quantityReceives the displayed quantity supplied by the order component.
Returns
true if the displayed quantity is present; otherwise false.

Definition at line 142 of file MessageSupplements.h.

◆ entryPx()

template<class Order, class Price>
bool entryPx ( Messaging::Decimal & price) const
inlinenoexcept

Gets the price of the affected order.

Parameters
priceReceives the price supplied by the price component.
Returns
true if the price is present; otherwise false.

Definition at line 133 of file MessageSupplements.h.

◆ entryType()

template<class Order, class Price>
Messaging::EntryTypeBook::Enum entryType ( ) const
inlinenoexcept

Gets the market data entry type.

Returns
Entry type from the price component.

Definition at line 98 of file MessageSupplements.h.

◆ operator=()

template<class Order, class Price>
IncrementalRefreshBookCombinedEntry & operator= ( const IncrementalRefreshBookCombinedEntry< Order, Price > & other)
defaultnoexcept

Replaces this entry with a copy of another combined entry.

Parameters
otherCombined entry to copy.
Returns
Reference to this entry.

◆ orderId()

template<class Order, class Price>
bool orderId ( OrderId & id) const
inlinenoexcept

Gets the identifier of the affected order.

Parameters
idReceives the order identifier.
Returns
Always true; the order identifier is mandatory.

Definition at line 114 of file MessageSupplements.h.

◆ orderPriority()

template<class Order, class Price>
bool orderPriority ( OrderPriority & priority) const
inlinenoexcept

Gets the matching priority of the affected order.

Parameters
priorityReceives the order priority supplied by the order component.
Returns
true if the priority is present; otherwise false.

Definition at line 124 of file MessageSupplements.h.

◆ securityId()

template<class Order, class Price>
SecurityId securityId ( ) const
inlinenoexcept

Gets the identifier of the security whose MBO book is updated.

Returns
Security identifier from the price component.

Definition at line 90 of file MessageSupplements.h.

◆ updateAction()

template<class Order, class Price>
Messaging::OrderUpdateAction::Enum updateAction ( ) const
inlinenoexcept

Gets the action to apply to the MBO book.

Returns
Update action from the order component.

Definition at line 106 of file MessageSupplements.h.