OpenMAMA
MamdaOrderImbalanceListener.h
Go to the documentation of this file.
1 /* $Id$
2  *
3  * OpenMAMA: The open middleware agnostic messaging API
4  * Copyright (C) 2011 NYSE Technologies, Inc.
5  *
6  * This library is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU Lesser General Public
8  * License as published by the Free Software Foundation; either
9  * version 2.1 of the License, or (at your option) any later version.
10  *
11  * This library is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14  * Lesser General Public License for more details.
15  *
16  * You should have received a copy of the GNU Lesser General Public
17  * License along with this library; if not, write to the Free Software
18  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
19  * 02110-1301 USA
20  */
21 
22 #ifndef MamdaOrderImbalanceListenerH
23 #define MamdaOrderImbalanceListenerH
24 
25 #include <mamda/MamdaConfig.h>
26 #include <mamda/MamdaMsgListener.h>
29 #include <mamda/MamdaFieldState.h>
30 
31 namespace Wombat
32 {
33 
34  class MamdaOrderImbalanceHandler;
35 
52  class MAMDAExpDLL MamdaOrderImbalanceListener
54  , public MamdaMsgListener
56  {
57  public:
59  virtual ~MamdaOrderImbalanceListener();
60 
64  void addHandler (MamdaOrderImbalanceHandler* handler);
65 
66  MamaPrice& getHighIndicationPrice () const;
67  MamdaFieldState getHighIndicationPriceFieldState () const;
68 
69  MamaPrice& getLowIndicationPrice () const;
70  MamdaFieldState getLowIndicationPriceFieldState () const;
71 
72  MamaPrice& getImbalancePrice () const;
73  MamdaFieldState getImbalancePriceFieldState () const;
74 
75  int64_t getBuyVolume () const;
76  MamdaFieldState getBuyVolumeFieldState () const;
77 
78  int64_t getSellVolume () const;
79  MamdaFieldState getSellVolumeFieldState () const;
80 
81  int64_t getMatchVolume () const;
82  MamdaFieldState getMatchVolumeFieldState () const;
83 
84  const char* getImbalanceState () const;
85  MamdaFieldState getImbalanceStateFieldState () const;
86 
87  MamaPrice& getMatchPrice () const;
88  MamdaFieldState getMatchPriceFieldState () const;
89 
90  MamaPrice& getFarClearingPrice () const;
91  MamdaFieldState getFarClearingPriceFieldState () const;
92 
93  MamaPrice& getNearClearingPrice () const;
94  MamdaFieldState getNearClearingPriceFieldState () const;
95 
96  char getNoClearingPrice () const;
97  MamdaFieldState getNoClearingPriceFieldState () const;
98 
99  char getPriceVarInd () const;
100  MamdaFieldState getPriceVarIndFieldState () const;
101 
102  char getCrossType () const;
103  MamdaFieldState getCrossTypeFieldState () const;
104 
105  MamaDateTime& getEventTime () const;
106  MamdaFieldState getEventTimeFieldState () const;
107 
108  mama_seqnum_t getEventSeqNum () const;
109  MamdaFieldState getEventSeqNumFieldState () const;
110 
111  MamaDateTime& getSrcTime () const;
112  MamdaFieldState getSrcTimeFieldState () const;
113 
114  MamaDateTime& getActivityTime () const;
115  MamdaFieldState getActivityTimeFieldState () const;
116 
117  mama_i32_t getMsgType () const;
118  MamdaFieldState getMsgTypeFieldState () const;
119 
120  const char* getIssueSymbol () const;
121  MamdaFieldState getIssueSymbolFieldState () const;
122 
123  const char* getPartId () const;
124  MamdaFieldState getPartIdFieldState () const;
125 
126  mama_seqnum_t getSeqNum () const;
127  MamdaFieldState getSeqNumFieldState () const;
128 
129  const char* getSecurityStatusOrig () const;
130  MamdaFieldState getSecurityStatusOrigFieldState () const;
131 
132  MamaDateTime& getSecurityStatusTime () const;
133  MamdaFieldState getSecurityStatusTimeFieldState () const;
134 
135  MamaDateTime& getAuctionTime () const;
136  MamdaFieldState getAuctionTimeFieldState () const;
137 
138  MamaDateTime& getLineTime () const;
139  MamdaFieldState getLineTimeFieldState () const;
140 
141  MamaDateTime& getSendTime () const;
142  MamdaFieldState getSendTimeFieldState () const;
143 
144  const char* getSymbol () const;
145  MamdaFieldState getSymbolFieldState () const;
146 
147  const MamaMsgQual& getMsgQual () const;
148  MamdaFieldState getMsgQualFieldState () const;
149 
150  void updateFieldStates();
151 
155  virtual void onMsg (MamdaSubscription* subscription,
156  const MamaMsg& msg,
157  short msgType);
158 
159  struct MamdaOrderImbalanceListenerImpl;
160  private:
161  MamdaOrderImbalanceListenerImpl& mImpl;
162 
163 
164  };//MamdaOrderImbalanceListenerH
165 
166 }
167 #endif
MamdaOrderImbalanceHandler is an interface for applications that want to have an easy way to handle o...
Definition: MamdaOrderImbalanceHandler.h:40
Definition: MamdaOrderImbalanceUpdate.h:36
MamdaOrderImbalanceUpdate is an interface that provides access to order imbalance related fields...
Definition: MamdaAuctionFields.h:29
Definition: MamdaOrderImbalanceRecap.h:35
A MamdaSubscription is used to register interest in a particular symbol and source.
Definition: MamdaSubscription.h:54
MamdaFieldState
An enumeration representing field state.
Definition: MamdaFieldState.h:37
MamdaMsgListener defines an interface for handling MAMA messages for a MamdaSubscription.
Definition: MamdaMsgListener.h:38
A MamdaOrderImbalanceListener is class that specializes in handling an imbalance order updates...
Definition: MamdaOrderImbalanceListener.h:52


© 2012 Linux Foundation