OnixS C++ Eurex T7 Market and Reference Data (EMDI, MDI, RDI, EOBI) Handlers 18.2.0
API documentation
Loading...
Searching...
No Matches
MdiHandler.h
Go to the documentation of this file.
1/*
2* Copyright Onix Solutions Limited [OnixS]. All rights reserved.
3*
4* This software owned by Onix Solutions Limited [OnixS] and is protected by copyright law
5* and international copyright treaties.
6*
7* Access to and use of the software is governed by the terms of the applicable ONIXS Software
8* Services Agreement (the Agreement) and Customer end user license agreements granting
9* a non-assignable, non-transferable and non-exclusive license to use the software
10* for it's own data processing purposes under the terms defined in the Agreement.
11*
12* Except as otherwise granted within the terms of the Agreement, copying or reproduction of any part
13* of this source code or associated reference material to any other location for further reproduction
14* or redistribution, and any amendments to this copyright notice, are expressly prohibited.
15*
16* Any reproduction or redistribution for sale or hiring of the Software not in accordance with
17* the terms of the Agreement is a violation of copyright law.
18*/
19
20#pragma once
21
26
27namespace OnixS
28{
29 namespace Eurex
30 {
31 namespace MarketData
32 {
34
35 struct ReplayOptions;
36 struct MdiHandlerSettings;
37
42 class InterfaceDescriptorProvider;
48 class TradeListener;
49 class WarningListener;
50 class DepthListener;
52 class ErrorListener;
55
56
58 class ONIXS_EUREX_EMDI_API MdiHandler
59 {
60 public:
65 explicit
67 const std::string& = ONIXS_EUREX_EMDI_COMPILER_INFO);
68
70 virtual ~MdiHandler();
71
77
83
89
95
101
107
113
119
125
131
137
143
149
155
156
162
168
173
178
181
186
189
196
201 void start ();
202
204 void start (const ReplayOptions& options, bool* stopRequest = ONIXS_EUREX_EMDI_NULLPTR);
205
207 void stop ();
208
210 void replayPcap (const ReplayOptions& options);
211
214
216 MdiHandler& log (LogLevel::Enum logLevel, const char* logMessage, size_t length);
217
219 MdiHandler& log (LogLevel::Enum logLevel, const char* logMessage);
220
222 MdiHandler& log (LogLevel::Enum logLevel, const std::string& str);
223
225 std::string licenseExpirationDate () const;
226
228 static const char* version ();
229
230 private:
231 MdiHandler (const MdiHandler&); //no implementation
232 MdiHandler& operator = (const MdiHandler&); //no implementation
233
234 private:
235 friend struct OnixS::Eurex::MarketData::Implementation::PcapReplayHelper;
236 struct Impl;
237 Impl* impl_;
238 };
239
242 ONIXS_EUREX_EMDI_API
243 void replayPcap (const std::vector<MdiHandler*>& handlers, const ReplayOptions& options, bool* stopRequest = ONIXS_EUREX_EMDI_NULLPTR);
244 }
245 }
246}
#define ONIXS_EUREX_EMDI_API_DECL(typeKind, typeName)
Definition ABI.h:27
#define ONIXS_EUREX_EMDI_COMPILER_INFO
Definition Compiler.h:35
#define ONIXS_EUREX_EMDI_NULLPTR
Definition Compiler.h:143
The Feed Engine machinery.
Definition FeedEngine.h:104
MdiHandler & registerHandlerStateListener(HandlerStateListener *listener)
MdiHandler & registerScaledSimpleInstrumentUpdateListener(ScaledSimpleInstrumentUpdateListener *listener)
MdiHandler & registerFlexibleInstrumentUpdateListener(FlexibleInstrumentUpdateListener *listener)
MdiHandler & registerErrorListener(ErrorListener *listener)
MdiHandler & registerDepthListener(DepthListener *listener)
void start(const ReplayOptions &options, bool *stopRequest=ONIXS_EUREX_EMDI_NULLPTR)
Starts replaying previously logged data.
MdiHandler & log(LogLevel::Enum logLevel, const char *logMessage, size_t length)
Logs the given user-level message to the handler log.
MdiHandler & registerTradeListener(TradeListener *listener)
MdiHandler & registerCrossRequestListener(CrossRequestListener *listener)
MdiHandler & removeAllMarketSegmentIdFilters()
Remove all filters.
MdiHandler & bindFeedEngine(FeedEngine &feedEngine)
MdiHandler & registerTopOfBookImpliedListener(TopOfBookImpliedListener *listener)
MdiHandler & registerCachedDepthIncrementalListener(CachedDepthIncrementalListener *listener)
MdiHandler & setMarketSegmentId2Depth(const MarketSegmentId2Depth &map)
MdiHandler & setMarketSegmentIdFilters(const MarketSegmentIdFilters &filters)
MdiHandler & removeAllSecurityIdFilters()
Remove all filters.
MdiHandler & registerOrderBookListener(OrderBookListener *listener)
std::string licenseExpirationDate() const
Returns the license expiration date.
MdiHandler & log(LogLevel::Enum logLevel, const char *logMessage)
Logs the given user-level message to the handler log.
MdiHandler & log(LogLevel::Enum logLevel, const std::string &str)
Logs the given user-level message to the handler log.
static const char * version()
Returns Handler's version.
MdiHandler & registerInstrumentStateChangeListener(InstrumentStateChangeListener *listener)
MdiHandler & registerProductStateChangeListener(ProductStateChangeListener *listener)
MdiHandler & registerComplexInstrumentUpdateListener(ComplexInstrumentUpdateListener *listener)
virtual ~MdiHandler()
Finalizes the Handler.
MdiHandler & registerQuoteRequestListener(QuoteRequestListener *listener)
MdiHandler & setSecurityIdFilters(const SecurityIdFilters &filters)
HandlerState::Enum state() const
Returns handler state.
MdiHandler & registerWarningListener(WarningListener *listener)
MdiHandler(const MdiHandlerSettings &settings, const std::string &=ONIXS_EUREX_EMDI_COMPILER_INFO)
MdiHandler & registerMassInstrumentStateChangeListener(MassInstrumentStateChangeListener *listener)
void replayPcap(const ReplayOptions &options)
Replay pcap files.
void replayPcap(const std::vector< EmdiHandler * > &handlers, const ReplayOptions &options, bool *stopRequest=ONIXS_EUREX_EMDI_NULLPTR)
MarketDepthTraits::MarketSegmentId2Depth MarketSegmentId2Depth
FilteringTraits::SecurityIdFilters SecurityIdFilters
FilteringTraits::MarketSegmentIdFilters MarketSegmentIdFilters
Enum
Defines the state that the handler is in.
MDI handler configuration settings.
Defines params which affect replay.
Definition Replay.h:83