OnixS C++ Eurex T7 Market and Reference Data (EMDI, MDI, RDI, EOBI) Handlers 18.2.0
API documentation
Loading...
Searching...
No Matches
EmdiHandlerManager.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
22#include <vector>
23
27
28namespace OnixS
29{
30 namespace Eurex
31 {
32 namespace MarketData
33 {
35 class FeedEngine;
36 class ErrorListener;
37 class WarningListener;
38 class DepthListener;
48 class TradeListener;
49
51 class ONIXS_EUREX_EMDI_API EmdiHandlerManager
52 {
53 public:
58 explicit EmdiHandlerManager (const EmdiHandlerSettings& settings,
59 const std::string& = ONIXS_EUREX_EMDI_COMPILER_INFO);
60
63
69
75
81
87
93
99
105
111
117
123
129
135
141
146 void start (const IInterfaceDescriptorProvider* provider, const MarketSegments& productNames, FeedEngine& feedEngine);
147
149 void replayPcap (const IInterfaceDescriptorProvider* provider, const MarketSegments& productNames, const ReplayOptions& options);
150
152 void stop ();
153
154 private:
155 EmdiHandlerManager (const EmdiHandlerManager&); //no implementation
156 EmdiHandlerManager& operator = (const EmdiHandlerManager&); //no implementation
157
158 void prepareHandlers(const IInterfaceDescriptorProvider* provider, const MarketSegments& productNames);
159
160 private:
161 struct Impl;
162 Impl* impl_;
163
164 ErrorListener* errorListener_;
165 WarningListener* warningListener_;
166 DepthListener* depthListener_;
167 TopOfBookImpliedListener* topOfBookImpliedListener_;
168 ProductStateChangeListener* productStateChangeListener_;
169 MassInstrumentStateChangeListener* massInstrumentStateChangeListener_;
170 InstrumentStateChangeListener* instrumentStateChangeListener_;
171 QuoteRequestListener* quoteRequestListener_;
172 CrossRequestListener* crossRequestListener_;
173 ComplexInstrumentUpdateListener* complexInstrumentUpdateListener_;
174 FlexibleInstrumentUpdateListener* flexibleInstrumentUpdateListener_;
175 OrderBookListener* orderBookListener_;
176 TradeListener* tradeListener_;
177 };
178
179 }
180 }
181}
#define ONIXS_EUREX_EMDI_COMPILER_INFO
Definition Compiler.h:35
EmdiHandlerManager & registerFlexibleInstrumentUpdateListener(FlexibleInstrumentUpdateListener *listener)
virtual ~EmdiHandlerManager()
Finalizes the Handler.
EmdiHandlerManager & registerComplexInstrumentUpdateListener(ComplexInstrumentUpdateListener *listener)
EmdiHandlerManager & registerCrossRequestListener(CrossRequestListener *listener)
EmdiHandlerManager & registerMassInstrumentStateChangeListener(MassInstrumentStateChangeListener *listener)
EmdiHandlerManager & registerInstrumentStateChangeListener(InstrumentStateChangeListener *listener)
EmdiHandlerManager & registerProductStateChangeListener(ProductStateChangeListener *listener)
void replayPcap(const IInterfaceDescriptorProvider *provider, const MarketSegments &productNames, const ReplayOptions &options)
Replay pcap files.
void start(const IInterfaceDescriptorProvider *provider, const MarketSegments &productNames, FeedEngine &feedEngine)
EmdiHandlerManager & registerOrderBookListener(OrderBookListener *listener)
EmdiHandlerManager & registerErrorListener(ErrorListener *listener)
EmdiHandlerManager(const EmdiHandlerSettings &settings, const std::string &=ONIXS_EUREX_EMDI_COMPILER_INFO)
EmdiHandlerManager & registerWarningListener(WarningListener *listener)
EmdiHandlerManager & registerDepthListener(DepthListener *listener)
EmdiHandlerManager & registerTradeListener(TradeListener *listener)
EmdiHandlerManager & registerTopOfBookImpliedListener(TopOfBookImpliedListener *listener)
EmdiHandlerManager & registerQuoteRequestListener(QuoteRequestListener *listener)
The Feed Engine machinery.
Definition FeedEngine.h:104
IInterfaceDescriptorProvider::MarketSegments MarketSegments
EMDI handler configuration settings.
Defines params which affect replay.
Definition Replay.h:83