OnixS C++ CME MDP Premium Market Data Handler 5.9.0
API Documentation
Loading...
Searching...
No Matches
Handler.h
Go to the documentation of this file.
1// Copyright Onix Solutions Limited [OnixS]. All rights reserved.
2//
3// This software owned by Onix Solutions Limited [OnixS] and is
4// protected by copyright law and international copyright treaties.
5//
6// Access to and use of the software is governed by the terms of the applicable
7// OnixS Software Services Agreement (the Agreement) and Customer end user license
8// agreements granting a non-assignable, non-transferable and non-exclusive license
9// to use the software for it's own data processing purposes under the terms defined
10// in the Agreement.
11//
12// Except as otherwise granted within the terms of the Agreement, copying or
13// reproduction of any part of this source code or associated reference material
14// to any other location for further reproduction or redistribution, and any
15// amendments to this copyright notice, are expressly prohibited.
16//
17// Any reproduction or redistribution for sale or hiring of the Software not in
18// accordance with the terms of the Agreement is a violation of copyright law.
19//
20
21#pragma once
22
23#include <string>
24#include <memory>
25
28
30
31ONIXS_CMEMDH_LTWT_CLASS_DECL(HandlerSettings);
32ONIXS_CMEMDH_LTWT_CLASS_DECL(MemoryPoolSettings);
33ONIXS_CMEMDH_LTWT_CLASS_DECL(InstrumentSelection);
34
35#if !defined(ONIXS_CMEMDH_NO_DEPRECATED)
36
38ONIXS_CMEMDH_EXPORTED_STRUCT_DECL(ChannelFeedListener);
39
40ONIXS_CMEMDH_EXPORTED_STRUCT_DECL(MarketDataListener);
41ONIXS_CMEMDH_EXPORTED_STRUCT_DECL(SecurityListener);
42
45ONIXS_CMEMDH_EXPORTED_CLASS_DECL(TcpRecoveryService);
46
47ONIXS_CMEMDH_LTWT_CLASS_DECL(SessionSettings);
48
49#endif // ONIXS_CMEMDH_NO_DEPRECATED
50
52
56{
57public:
59 Handler(const std::string& = ONIXS_CMEMDH_COMPILER_INFO);
60
63 explicit Handler(const MemoryPoolSettings&, const std::string& = ONIXS_CMEMDH_COMPILER_INFO);
64
66 explicit Handler(const HandlerSettings&, const std::string& = ONIXS_CMEMDH_COMPILER_INFO);
67
70
73
75 const HandlerSettings& settings() const;
76
77#if !defined(ONIXS_CMEMDH_NO_DEPRECATED)
78
86
87#endif // ONIXS_CMEMDH_NO_DEPRECATED
88
98
102
103#if !defined(ONIXS_CMEMDH_NO_DEPRECATED)
104
124
144
164
184
196 void bindFeedEngine(NetFeedEngine& feedEngine);
197
210
223
224#endif // ONIXS_CMEMDH_NO_DEPRECATED
225
227 void start();
228
229#if !defined(ONIXS_CMEMDH_NO_DEPRECATED)
230
239 void start(const SessionSettings&);
240
241#endif // ONIXS_CMEMDH_NO_DEPRECATED
242
244 void stop();
245
247 std::string licenseExpirationDate() const;
248
249private:
251
252 // Data processing workhorse.
253 ChannelModel* model_;
254
255 // Coping is not allowed for the instances.
256
257 Handler(const Handler&);
258 Handler& operator=(const Handler&);
259};
260
#define ONIXS_CMEMDH_INTERNAL_CLASS_DECL(typeName)
Definition Bootstrap.h:37
#define ONIXS_CMEMDH_NAMESPACE_BEGIN
Definition Bootstrap.h:67
#define ONIXS_CMEMDH_LTWT_CLASS_DECL(name)
Definition Bootstrap.h:48
#define ONIXS_CMEMDH_EXPORTED_CLASS_DECL(typeName)
Definition Bootstrap.h:35
#define ONIXS_CMEMDH_NAMESPACE_END
Definition Bootstrap.h:68
#define ONIXS_CMEMDH_EXPORTED_STRUCT_DECL(typeName)
Definition Bootstrap.h:36
#define ONIXS_CMEMDH_COMPILER_INFO
#define ONIXS_CMEMDH_EXPORTED
Definition Compiler.h:171
Handler's configuration settings.
void bindFeedEngine(NetFeedEngine &feedEngine)
Binds Feed Engine to the Handler.
void bindTcpRecovery(TcpRecoveryService &tcpRecovery)
Binds TCP Recovery Service to the Handler.
Handler(const MemoryPoolSettings &, const std::string &="")
Initializes instance with the memory pool configured according to the given settings.
friend class PcapReplayHelper
Definition Handler.h:250
Handler(const std::string &="")
Initializes the instance with the default settings.
void start()
Starts market data processing.
Logger & logger()
Logger currently used by the Handler.
void registerSecurityListener(SecurityListener &listener)
Registers security events listener.
std::string licenseExpirationDate() const
Returns the license expiration date.
void start(const SessionSettings &)
Updates the session configuration according to the given settings and starts market data processing.
const HandlerSettings & settings() const
Immutable configuration of the given instance.
void stop()
Stops market data processing.
~Handler()
Finalizes the instance.
Handler(const HandlerSettings &, const std::string &="")
Initializes the instance according to the given settings.
void registerFeedListener(ChannelFeedListener &listener)
Registers feed event listener.
void registerMarketDataListener(MarketDataListener &listener)
Registers market data processing listener.
void clearInstrumentCache()
Erases instrument definitions cache if used.
void registerListener(HandlerListener &listener)
Registers Handler events listener.
void selectInstruments(const InstrumentSelection &)
Filters instruments whose market data is to be processed and events are to be fired by the Handler.
HandlerSettings & settings()
The configuration parameters of the given instance.
void bindLogger(Logger &logger)
Binds Logging Service to the Handler.
Represents selection of instruments whose market data is to be processed by the Handler.
Definition Filtering.h:32
Abstraction of logger.
Definition Logger.h:156
Abstraction for the Feed Engine machinery.
Definition FeedEngine.h:102
Basic set of parameters affecting behavior of the Handler when the market data processing is performe...
A listener for the feed-related events in the bounds of a single Handler instance.
Events raised by Handler while processing market data.
Callbacks invoked by Handler during market data processing to reflect various stages of processing.
Callbacks invoked by Handler to expose market data entities.