OnixS C++ Cboe CFE Multicast PITCH Market Data Handler  1.12.1
API documentation
MessageListener.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 
25 
26 
27 namespace OnixS {
28 namespace CboeCFE {
29 namespace MarketData {
30 namespace Pitch {
31 
32  struct TimeMsg;
33  struct UnitClearMsg;
34  struct TimeReferenceMsg;
35  struct FuturesInstrumentDefinitionMsg;
36  struct PriceLimitsMsg;
37  struct AddOrderLongMsg;
38  struct AddOrderShortMsg;
39  struct OrderExecutedMsg;
40  struct ReduceSizeLongMsg;
41  struct ReduceSizeShortMsg;
42  struct ModifyOrderLongMsg;
43  struct ModifyOrderShortMsg;
44  struct DeleteOrderMsg;
45  struct TradeLongMsg;
46  struct TradeShortMsg;
47  struct TransactionBeginMsg;
48  struct TransactionEndMsg;
49  struct TradeBreakMsg;
50  struct SettlementMsg;
51  struct OpenInterestMsg;
52  struct EndOfDaySummaryMsg;
53  struct TradingStatusMsg;
54  struct EndOfSessionMsg;
55  struct FuturesVarianceSymbolMappingMsg;
56 
57  /// Pitch message listener
59  {
60  public:
61  /// Is invoked when Gap happens
62  virtual void onGap(UInt32 /*expectedSeqNum*/, UInt32 /*receivedSeqNum*/) {};
63 
64  /// Fires when Time is received.
65  virtual void onTime(const TimeMsg&, const DataSource&) {}
66 
67  /// Fires when UnitClear is received.
68  virtual void onUnitClear(const UnitClearMsg&, const DataSource&) {}
69 
70  /// Fires when TimeReference is received.
71  virtual void onTimeReference(const TimeReferenceMsg&, const DataSource&) {}
72 
73  /// Fires when FuturesInstrumentDefinition is received.
75 
76  /// Fires when PriceLimits is received.
77  virtual void onPriceLimits(const PriceLimitsMsg&, const DataSource&) {}
78 
79  /// Fires when AddOrderLong is received.
80  virtual void onAddOrderLong(const AddOrderLongMsg&, const DataSource&) {}
81 
82  /// Fires when AddOrderShort is received.
83  virtual void onAddOrderShort(const AddOrderShortMsg&, const DataSource&) {}
84 
85  /// Fires when OrderExecuted is received.
86  virtual void onOrderExecuted(const OrderExecutedMsg&, const DataSource&) {}
87 
88  /// Fires when ReduceSizeLong is received.
89  virtual void onReduceSizeLong(const ReduceSizeLongMsg&, const DataSource&) {}
90 
91  /// Fires when ReduceSizeShort is received.
92  virtual void onReduceSizeShort(const ReduceSizeShortMsg&, const DataSource&) {}
93 
94  /// Fires when ModifyOrderLong is received.
95  virtual void onModifyOrderLong(const ModifyOrderLongMsg&, const DataSource&) {}
96 
97  /// Fires when ModifyOrderShort is received.
98  virtual void onModifyOrderShort(const ModifyOrderShortMsg&, const DataSource&) {}
99 
100  /// Fires when DeleteOrder is received.
101  virtual void onDeleteOrder(const DeleteOrderMsg&, const DataSource&) {}
102 
103  /// Fires when TradeLong is received.
104  virtual void onTradeLong(const TradeLongMsg&, const DataSource&) {}
105 
106  /// Fires when TradeShort is received.
107  virtual void onTradeShort(const TradeShortMsg&, const DataSource&) {}
108 
109  /// Fires when TransactionBegin is received.
110  virtual void onTransactionBegin(const TransactionBeginMsg&, const DataSource&) {}
111 
112  /// Fires when TransactionEnd is received.
113  virtual void onTransactionEnd(const TransactionEndMsg&, const DataSource&) {}
114 
115  /// Fires when TradeBreak is received.
116  virtual void onTradeBreak(const TradeBreakMsg&, const DataSource&) {}
117 
118  /// Fires when Settlement is received.
119  virtual void onSettlement(const SettlementMsg&, const DataSource&) {}
120 
121  /// Fires when OpenInterest is received.
122  virtual void onOpenInterest(const OpenInterestMsg&, const DataSource&) {}
123 
124  /// Fires when EndOfDaySummary is received.
125  virtual void onEndOfDaySummary(const EndOfDaySummaryMsg&, const DataSource&) {}
126 
127  /// Fires when TradingStatus is received.
128  virtual void onTradingStatus(const TradingStatusMsg&, const DataSource&) {}
129 
130  /// Fires when EndOfSession is received.
131  virtual void onEndOfSession(const EndOfSessionMsg&, const DataSource&) {}
132 
133  /// Fires when FuturesVarianceSymbolMapping is received.
135 
136  protected:
137  virtual ~MessageListener() {};
138  };
139 }
140 }
141 }
142 }
virtual void onTimeReference(const TimeReferenceMsg &, const DataSource &)
Fires when TimeReference is received.
Reduce Size messages are sent when a visible order on the CFE book is partially reduced.
virtual void onTradeShort(const TradeShortMsg &, const DataSource &)
Fires when TradeShort is received.
virtual void onDeleteOrder(const DeleteOrderMsg &, const DataSource &)
Fires when DeleteOrder is received.
virtual void onAddOrderShort(const AddOrderShortMsg &, const DataSource &)
Fires when AddOrderShort is received.
virtual void onOpenInterest(const OpenInterestMsg &, const DataSource &)
Fires when OpenInterest is received.
Add Order message represents a newly accepted visible order on the CFE book.
Definition: AddOrderLong.h:36
virtual void onFuturesInstrumentDefinition(const FuturesInstrumentDefinitionMsg &, const DataSource &)
Fires when FuturesInstrumentDefinition is received.
virtual void onAddOrderLong(const AddOrderLongMsg &, const DataSource &)
Fires when AddOrderLong is received.
virtual void onTradingStatus(const TradingStatusMsg &, const DataSource &)
Fires when TradingStatus is received.
The Trade message provides information about executions that occur off of the CFE book (such as ECRP ...
Definition: TradeLong.h:36
virtual void onTransactionBegin(const TransactionBeginMsg &, const DataSource &)
Fires when TransactionBegin is received.
The Unit Clear message instructs feed recipients to clear all orders for the CFE book in the unit spe...
Definition: UnitClear.h:36
virtual void onFuturesVarianceSymbolMapping(const FuturesVarianceSymbolMappingMsg &, const DataSource &)
Fires when FuturesVarianceSymbolMapping is received.
The Price Limits message is sent out at the start of the session for products subject to Price Limits...
Definition: PriceLimits.h:36
virtual void onTradeLong(const TradeLongMsg &, const DataSource &)
Fires when TradeLong is received.
virtual void onUnitClear(const UnitClearMsg &, const DataSource &)
Fires when UnitClear is received.
virtual void onSettlement(const SettlementMsg &, const DataSource &)
Fires when Settlement is received.
The Transaction Begin message indicates any subsequent messages, up to the accompanying Transaction E...
virtual void onTradeBreak(const TradeBreakMsg &, const DataSource &)
Fires when TradeBreak is received.
Settlement messages are normally sent once per day per instrument after settlement prices have been c...
Definition: Settlement.h:36
virtual void onTransactionEnd(const TransactionEndMsg &, const DataSource &)
Fires when TransactionEnd is received.
virtual void onModifyOrderLong(const ModifyOrderLongMsg &, const DataSource &)
Fires when ModifyOrderLong is received.
virtual void onEndOfSession(const EndOfSessionMsg &, const DataSource &)
Fires when EndOfSession is received.
Add Order message represents a newly accepted visible order on the CFE book.
Definition: AddOrderShort.h:36
virtual void onReduceSizeShort(const ReduceSizeShortMsg &, const DataSource &)
Fires when ReduceSizeShort is received.
virtual void onReduceSizeLong(const ReduceSizeLongMsg &, const DataSource &)
Fires when ReduceSizeLong is received.
The Open Interest message is sent to communicate a symbol's open interest, usually for the prior trad...
Definition: OpenInterest.h:36
The Time Reference message is used to provide a midnight reference point for recipients of the feed...
Definition: TimeReference.h:36
The Trading Status message is used to indicate the current trading status of a Futures contract...
Definition: TradingStatus.h:36
The Trade message provides information about executions that occur off of the CFE book (such as ECRP ...
Definition: TradeShort.h:36
Order Executed messages are sent when an order on the CFE book is executed in whole or in part...
Definition: OrderExecuted.h:36
The Modify Order message is sent whenever an open order is visibly modified.
The End of Session message is sent for each unit when the unit shuts down.
Definition: EndOfSession.h:36
The Transaction End message indicates that a transaction indicated by a previous Transaction Begin me...
virtual void onOrderExecuted(const OrderExecutedMsg &, const DataSource &)
Fires when OrderExecuted is received.
virtual void onPriceLimits(const PriceLimitsMsg &, const DataSource &)
Fires when PriceLimits is received.
virtual void onEndOfDaySummary(const EndOfDaySummaryMsg &, const DataSource &)
Fires when EndOfDaySummary is received.
virtual void onModifyOrderShort(const ModifyOrderShortMsg &, const DataSource &)
Fires when ModifyOrderShort is received.
The Delete Order message is sent whenever an open order is completely canceled.
Definition: DeleteOrder.h:36
Time message is sent whenever the source time for a unit passes over a second boundary.
Definition: Time.h:36
virtual void onGap(UInt32, UInt32)
Is invoked when Gap happens.
The End of Day Summary is sent out right before the close of a symbol.
The Modify Order message is sent whenever an open order is visibly modified.
virtual void onTime(const TimeMsg &, const DataSource &)
Fires when Time is received.
Reduce Size messages are sent when a visible order on the CFE book is partially reduced.
The Trade Break message is sent whenever an execution on CFE is broken.
Definition: TradeBreak.h:36