OnixS C++ CME MDP Premium Market Data Handler 5.11.1
Users' manual and API documentation
Loading...
Searching...
No Matches
BboThreshold Class Reference

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

Public Member Functions

 BboThreshold (const SettingGroup *group=nullptr)
 BboThreshold (const BboThreshold &other)
 ~BboThreshold ()=default
bool enabled () const noexcept
BboThreshold & enabled (bool value)
const Messaging::Decimal & threshold () const noexcept
BboThreshold & threshold (const Messaging::Decimal &value)
BboThreshold & operator= (const BboThreshold &other)

Protected Member Functions

const SettingGroup & group () const
void assignNoControl (const BboThreshold &other)

Friends

class MboBboTracking
class ImpliedBboTracking
class DirectBboTracking

Detailed Description

A threshold is inactive until enabled explicitly. When active, it is used by the corresponding BBO tracking object to decide whether a change in price, quantity, or number of orders is large enough to raise a BBO-specific update.

Definition at line 46 of file BookManagement.h.

Constructor & Destructor Documentation

◆ BboThreshold() [1/2]

BboThreshold ( const SettingGroup * group = nullptr)
inline

Initializes disabled tracking for a BBO attribute.

Parameters
groupOptional settings group used to validate and control assignments. When null, the setting is not associated with a group.

Definition at line 53 of file BookManagement.h.

◆ BboThreshold() [2/2]

BboThreshold ( const BboThreshold & other)
inline

Copies threshold settings from another instance.

Parameters
otherSource settings.
Note
Assignment-control state is not copied; only setting values are copied.

Definition at line 65 of file BookManagement.h.

◆ ~BboThreshold()

~BboThreshold ( )
default

Finalizes the threshold settings.

Member Function Documentation

◆ assignNoControl()

void assignNoControl ( const BboThreshold & other)
inlineprotected

Re-initializes the instance as a copy of the other one and bypassing assignment control.

Definition at line 163 of file BookManagement.h.

◆ enabled() [1/2]

bool enabled ( ) const
inlinenoexcept

Indicates whether this threshold is active.

Returns
True when changes in the tracked attribute are tested against this threshold.

Definition at line 80 of file BookManagement.h.

◆ enabled() [2/2]

BboThreshold & enabled ( bool value)
inline

Enables or disables this threshold.

Parameters
valueTrue to test the tracked attribute against this threshold.
Returns
Reference to this object.
Exceptions
`std::runtime_error`If the setting belongs to a handler that is processing market data or being configured from another source.

Definition at line 91 of file BookManagement.h.

◆ group()

const SettingGroup & group ( ) const
inlineprotected

Instance of a group which the given set of settings belongs to.

Definition at line 156 of file BookManagement.h.

◆ operator=()

BboThreshold & operator= ( const BboThreshold & other)
inline

Copies threshold settings from another instance.

Parameters
otherSource settings.
Returns
Reference to this object.
Note
Assignment-control state is not copied; only setting values are copied.
Exceptions
std::runtime_errorIf the setting belongs to a handler that is processing market data or being configured from another source.

Definition at line 136 of file BookManagement.h.

◆ threshold() [1/2]

const Messaging::Decimal & threshold ( ) const
inlinenoexcept

Returns the relative threshold for the tracked attribute.

Returns
Configured threshold value.

Definition at line 102 of file BookManagement.h.

◆ threshold() [2/2]

BboThreshold & threshold ( const Messaging::Decimal & value)
inline

Updates the relative threshold for the tracked attribute.

Parameters
valueNew non-negative threshold value.
Returns
Reference to this object.
Exceptions
std::runtime_errorIf value is negative.
std::runtime_errorIf the setting belongs to a handler that is processing market data or being configured from another source.

Definition at line 114 of file BookManagement.h.

◆ DirectBboTracking

friend class DirectBboTracking
friend

Lets grouping and value assignment control functioning.

Definition at line 151 of file BookManagement.h.

◆ ImpliedBboTracking

friend class ImpliedBboTracking
friend

Lets grouping and value assignment control functioning.

Definition at line 148 of file BookManagement.h.

◆ MboBboTracking

friend class MboBboTracking
friend

Lets grouping and value assignment control functioning.

Definition at line 145 of file BookManagement.h.