OnixS ICE iMpact Multicast Price Feed Handler C++ library  8.16.1
API documentation
HandlerSettings Struct Reference

#include <HandlerSettings.h>

Public Member Functions

 HandlerSettings ()
std::string toString () const

Public Attributes

std::string licenseString
std::string licenseDirectory
std::string logDirectory
std::string logFileNamePrefix
LogLevel logLevel
AdvancedLogOptionSet advancedLogOptions
std::string connectivityConfiguration
std::string networkInterface
time_t heartbeatInterval
size_t sequenceGapMargin
size_t gapTimeoutInMilliseconds
SnapshotRecoveryOptions snapshotRecoveryOptions
LogList logs
float logPlayerSpeedMultiplier
unsigned logPlayerSpeedAuxDelay
bool trackTopOfTheBookOnly
bool receiveProductDefinitionsOnly
size_t maxMulticastMessageBlockSize
std::string productDefinitionCacheDirectory
RegexSet errorResponseWarningPatterns
bool useHistoricalReplay

Detailed Description

Definition at line 87 of file HandlerSettings.h.

Constructor & Destructor Documentation

Initializes instance with default values for control parameters.

Member Function Documentation

std::string toString ( ) const

Returns string representation.

Member Data Documentation

AdvancedLogOptionSet advancedLogOptions

Additional options to control which data is to be logged. Ignored if logging is disabled.

The default value is AdvancedLogOptions::Default.

Definition at line 132 of file HandlerSettings.h.

std::string connectivityConfiguration

Defines path to connectivity configuration which defines multicast groups, types of markets which belong to the groups and connection info for multicast feeds for the groups.

Definition at line 139 of file HandlerSettings.h.

RegexSet errorResponseWarningPatterns

A set of regular expressions which will be used to check if Error Response should be treated as error or warning.

By default, includes the following regular expressions:

"No .*markets for market type .*"

Definition at line 258 of file HandlerSettings.h.

size_t gapTimeoutInMilliseconds

Specifies maximal time interval in milliseconds to wait network packet with next expected sequence number.

Default value is 10000.

Definition at line 177 of file HandlerSettings.h.

time_t heartbeatInterval

Specifies maximal time interval in seconds between two network packets. If no data is received during specified time frame, warning is reported.

The default value is 36000.

Definition at line 161 of file HandlerSettings.h.

LogReplayInputStream* inputStream

User defined input stream for log replay logs will be ignored.

Definition at line 190 of file HandlerSettings.h.

std::string licenseDirectory

Path to the license directory.

Default value is "./" (the current directory).
A home directory also used to search a license.

Definition at line 103 of file HandlerSettings.h.

std::string licenseString

Content of the license file as a string.

Default value is empty string.
The Handler checks this license first.

Definition at line 95 of file HandlerSettings.h.

std::string logDirectory

Log files are stored in this directory.

Default value is "./" (the current directory).

Definition at line 110 of file HandlerSettings.h.

std::string logFileNamePrefix

Template of log file name without extension.

Default value is "IceImpactMulticastPriceFeedHandlerCpp".

Definition at line 117 of file HandlerSettings.h.

LogLevel logLevel

Log verbosity.

Default value is LogLevels::Info.

Definition at line 124 of file HandlerSettings.h.

unsigned logPlayerSpeedAuxDelay

Log player speed auxiliary delay.

This is an \( k \) in the formula \( mT+k \) to calculate delays between packets, where \( T \) is original delay. Default value is 0.

Definition at line 207 of file HandlerSettings.h.

float logPlayerSpeedMultiplier

Log player speed multiplier.

This is an \( m \) in the formula \( mT+k \) to calculate delays between packets, where \( T \) is original delay. Values less than 1 means reduced speed, greater than 1 means increased speed. Default value is 0.0 which means a normal speed.

Definition at line 199 of file HandlerSettings.h.

LogList logs

List of logs to be replated.

Must be stored in 'oldest to recent' order.

Definition at line 187 of file HandlerSettings.h.

size_t maxMulticastMessageBlockSize

Max multicast message block size.

This option determines the size in bytes of a buffer that is used as a storage for the incoming mulsticast message block.

By default, the size set at 1400 bytes.

Definition at line 235 of file HandlerSettings.h.

std::string networkInterface

Specifies one or more network interfaces to use while joining the multicast group; use semi-colon delimited list if more than one.

On Linux the network interface is specified by its name, on Windows - by IP address.
If the value is empty or absent then the default networking interface is used.

Definition at line 152 of file HandlerSettings.h.

std::string productDefinitionCacheDirectory

Path to the product definition cache directory.

If a value is set and it is a valid path to a directory, the product definition cache will be created and used on the daily basis. If the value is not set, the cache will not be created an product definitions will be downloaded by establishing a TCP connection to ICE server.

Default value is empty string (cache is disabled).

Definition at line 248 of file HandlerSettings.h.

bool receiveProductDefinitionsOnly

Receive product definitions only.

This flag should be set to true when only product definitions are needed.

Default value is false.

Definition at line 225 of file HandlerSettings.h.

size_t sequenceGapMargin

Specifies maximal sequence gap margin between first and last received network packets in internal queue.

Default value is 10000.

Definition at line 169 of file HandlerSettings.h.

SnapshotRecoveryOptions snapshotRecoveryOptions

Specifies snapshot recovery options.

Definition at line 180 of file HandlerSettings.h.

bool trackTopOfTheBookOnly

Track top of the book only.

This flag should be set to true when only top of the book updates are needed.

Default value is false.

Definition at line 216 of file HandlerSettings.h.

bool useHistoricalReplay

Use Historical Replay recovery.

In case of message gap, the Handler will try to fill it with Historical Replay Request over TCP connection to get missing messages with corresponding sequence numbers.

Default value is false.

Definition at line 269 of file HandlerSettings.h.

The documentation for this struct was generated from the following file: