This file is indexed.

/usr/include/mamda/MamdaQuoteUpdate.h is in libmamda-dev 2.2.2.1-11ubuntu1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
/* $Id$
 *
 * OpenMAMA: The open middleware agnostic messaging API
 * Copyright (C) 2011 NYSE Technologies, Inc.
 *
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Lesser General Public
 * License as published by the Free Software Foundation; either
 * version 2.1 of the License, or (at your option) any later version.
 *
 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public
 * License along with this library; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
 * 02110-1301 USA
 */

#ifndef MamdaQuoteUpdateH
#define MamdaQuoteUpdateH

#include <mamda/MamdaConfig.h>
#include <mamda/MamdaBasicEvent.h>
#include <mamda/MamdaFieldState.h>

namespace Wombat
{

    /**
     * MamdaQuoteUpdate is an interface that provides access to fields
     * related to quote updates.
     */
    class MAMDAExpDLL MamdaQuoteUpdate : public MamdaBasicEvent
    {
    public:

        /**
         * Get the quote bid price.
         *
         * @return Bid price.  The highest price that the representative
         * party/group is willing to pay to buy the security.  For most
         * feeds, this size is represented in round lots.
         */
        virtual const MamaPrice&  getBidPrice() const = 0;
        
        /**
         * Get the quote bid size.
         *
         * @return Total share size available for the current bid price.
         * Note: many feeds provide this size in terms of round lots.
         */
        virtual mama_quantity_t  getBidSize() const = 0;

        /**
         * Get the quote bid depth.
         *
         * @return The total size available at the current best bid price.
         * Only supported by some exchanges.  The total size may differ
         * from the "best" size in that the total may be aggregated from
         * multiple sources.
         */
        virtual mama_quantity_t  getBidDepth() const = 0;

        /**
         * Get the quote participant identifier.
         *
         * @return The identifier of the market participant (e.g. exchange
         * or market maker) contributing the bid price field.
         */
        virtual const char*  getBidPartId() const = 0;

        /**
         * Get the quote ask price.
         *
         * @return Ask price.  The lowest price that the representative
         * party/group is willing to take to sell the security.  For most
         * feeds, this size is represented in round lots.
         */
        virtual const MamaPrice&  getAskPrice() const = 0;

        /**
         * Get the quote ask size.
         *
         * @return Total share size available for the current ask price.
         * Note: many feeds provide this size in terms of round lots.
         */
        virtual mama_quantity_t  getAskSize() const = 0;

        /**
         * Get the quote ask depth.
         *
         * @return The total size available at the current best ask price.
         * Only supported by some exchanges.  The total size may differ
         * from the "best" size in that the total may be aggregated from
         * multiple sources.
         */
        virtual mama_quantity_t  getAskDepth() const = 0;

        /**
         * Get the quote ask participant identifier.
         *
         * @return The identifier of the market participant (e.g. exchange
         * or market maker) contributing the ask price field.
         */
        virtual const char*  getAskPartId() const = 0;

        /**
         * Get the quote mid price.
         *
         * @return The mid price of the current quote.  Usually, this is
         * the average of the bid and ask prices, but some exchanges
         * provide this field explicitly (e.g. LSE).
         */
        virtual const MamaPrice&  getQuoteMidPrice  () const = 0;

        /**
         * Get the quote qualifier. 
         *
         * @return A normalized set of qualifiers for the last quote for
         * the security. This field may contain multiple string values,
         * separated by the colon(:) character.  
         *
         * @see MamdaQuoteRecap#getQuoteQualStr()
         */
        virtual const char*  getQuoteQualStr() const = 0;

        /**
         * Get the native feed quote qualifier.
         * @return Native quote qualifier (a.k.a. "quote condition").
         * Feed-specific quote qualifier code(s).  This field is provided
         * primarily for completeness and/or troubleshooting.  
         * @see getQuoteQual.
         */
        virtual const char*  getQuoteQualNative() const = 0;

         /**
         * NASDAQ Bid Tick Indicator for Short Sale Rule Compliance.
         * National Bid Tick Indicator based on changes to the bid price of the
         * National Best Bid or Offer (National BBO).
         *
         * <table width="100%" border="1">
         *   <tr><td><b>Value</b></td><td><b>Meaning</b></td></tr>
         *   <tr>
         *     <td>U</td>
         *     <td>Up Tick. The current Best Bid Price price is higher than the
         *     previous Best Bid Price for the given NNM security.</td>
         *   </tr>
         *   <tr>
         *     <td>D</td>
         *     <td>Down Tick.  The current Best Bid Price price is lower than the
         *     previous Best Bid Price for the given NNM security.</td>
         *   </tr>
         *   <tr>
         *     <td>N</td>
         *     <td>No Tick. The NASD Short Sale Rule does not apply to issue (i.e.
         *     NASDAQ SmallCap listed security).</td>
         *   </tr>
         *   <tr>
         *     <td>Z</td>
         *     <td>Unset - default value within the API</td>
         *   </tr>
         * </table>
         *
         * @return The tick bid indicator.
         */
        virtual char getShortSaleBidTick () const = 0;
        
        /**
         * Get the quote ask time.
         *
         * @return The quote ask time.
         */
        virtual const MamaDateTime&  getAskTime() const = 0;
        
        /**
         * Get the quote bid time.
         *
         * @return The quote bid time.
         */
        virtual const MamaDateTime&  getBidTime() const = 0;
        
        /**
         * Get the quote date.
         *
         * @return The quote date.
         */
        virtual const MamaDateTime&  getQuoteDate() const = 0;
        
        /**
         * Get the quote ask indicator.
         *
         * @return The quote ask indicator.
         */
        virtual const char*  getAskIndicator() const = 0;
        
        /**
         * Get the quote bid indicator.
         *
         * @return The quote bid indicator.
         */
        virtual const char*  getBidIndicator() const = 0;
        
        /**
         * Get the quote ask update count.
         *
         * @return The quote ask update count.
         */
        virtual mama_u32_t  getAskUpdateCount() const = 0;
        
        /**
         * Get the quote bid update count.
         *
         * @return The quote bid update count.
         */
        virtual mama_u32_t  getBidUpdateCount() const = 0;
        
        /**
         * Get the quote ask yield.
         *
         * @return The quote ask yield.
         */
        virtual double  getAskYield() const = 0;
        
        /**
         * Get the quote bid yield.
         *
         * @return The quote bid yield.
         */
        virtual double  getBidYield() const = 0;

        /**
         * Get the ask sizes list.
         *
         * @return The ask sizes list.
         */
        virtual const char*  getAskSizesList() const = 0;

        /**
         * Get the bid sizes list.
         *
         * @return The bid sizes list.
         */
        virtual const char*  getBidSizesList() const = 0;

        /**
         * get the ShortSaleCircuitBreaker
         * @return ShortSaleCircuitBreaker 
         * <ul>
         *   <li>return values:</li>
         *   <li>Blank: Short Sale Restriction Not in Effect.</li>
         *   <li>A: Short Sale Restriction Activiated.</li>
         *   <li>C: Short Sale Restriction Continued.</li>
         *   <li>D: Sale Restriction Deactivated.</li>
         *   <li>E: Sale Restriction in Effect.</li>
         * </ul>    
         */
        virtual char  getShortSaleCircuitBreaker() const = 0;
        
        
        /* FieldState Accessors ******/
        
         /**
         * Get the quote bid price fieldState
         *
         * @return MamdaFieldState.  An enumeration representing field state.
          */
        virtual MamdaFieldState  getBidPriceFieldState() const = 0;
        
        /**
         * Get the quote bid size fieldState
         *
         * @return MamdaFieldState.  An enumeration representing field state.
         */
        virtual MamdaFieldState  getBidSizeFieldState() const = 0;

        /**
         * Get the quote bid depth fieldState
         *
         * @return MamdaFieldState.  An enumeration representing field state.
         */
        virtual MamdaFieldState  getBidDepthFieldState() const = 0;

        /**
         * Get the quote participant identifier fieldState
         *
         * @return MamdaFieldState.  An enumeration representing field state.
         */
        virtual MamdaFieldState  getBidPartIdFieldState() const = 0;

        /**
         * Get the quote ask price fieldState
         *
         * @return MamdaFieldState.  An enumeration representing field state.
         */
        virtual MamdaFieldState  getAskPriceFieldState() const = 0;

        /**
         * Get the quote ask size fieldState
         *
         * @return MamdaFieldState.  An enumeration representing field state.
         */
        virtual MamdaFieldState  getAskSizeFieldState() const = 0;

        /**
         * Get the quote ask depth fieldState
         *
         * @return MamdaFieldState.  An enumeration representing field state.
         */
        virtual MamdaFieldState  getAskDepthFieldState() const = 0;

        /**
         * Get the quote ask participant identifier fieldState
         *
         * @return MamdaFieldState.  An enumeration representing field state.
         */
        virtual MamdaFieldState  getAskPartIdFieldState() const = 0;

        /**
         * Get the quote mid price fieldState
         *
         * @return MamdaFieldState.  An enumeration representing field state.
         */
        virtual MamdaFieldState  getQuoteMidPriceFieldState() const = 0;

        /**
         * Get the quote qualifier fieldState
         *
         * @return MamdaFieldState.  An enumeration representing field state.
         */
        virtual MamdaFieldState  getQuoteQualStrFieldState() const = 0;

        /**
         * Get the native feed quote qualifier fieldState
         *
         * @return MamdaFieldState.  An enumeration representing field state.
         */
        virtual MamdaFieldState  getQuoteQualNativeFieldState() const = 0;
        
        /**
         * Get the short sale bid tick fieldState
         *
         * @return MamdaFieldState.  An enumeration representing field state.
         */
        virtual MamdaFieldState  getShortSaleBidTickFieldState() const = 0;
        
        /**
         * Get the quote ask time fieldState
         *
         * @return MamdaFieldState.  An enumeration representing field state.
         */
        virtual MamdaFieldState  getAskTimeFieldState() const = 0;
        
        /**
         * Get the quote bid time fieldState
         *
         * @return MamdaFieldState.  An enumeration representing field state.
         */
        virtual MamdaFieldState  getBidTimeFieldState() const = 0;
        
        /**
         * Get the quote date fieldState
         *
         * @return MamdaFieldState.  An enumeration representing field state.
         */
        virtual MamdaFieldState  getQuoteDateFieldState() const = 0;
        
        /**
         * Get the quote ask indicator fieldState
         *
         * @return MamdaFieldState.  An enumeration representing field state.
         */
        virtual MamdaFieldState  getAskIndicatorFieldState() const = 0;
        
        /**
         * Get the quote bid indicator fieldState
         *
         * @return MamdaFieldState.  An enumeration representing field state.
         */
        virtual MamdaFieldState  getBidIndicatorFieldState() const = 0;
        
        /**
         * Get the quote ask update count fieldState
         *
         * @return MamdaFieldState.  An enumeration representing field state.
         */
        virtual MamdaFieldState  getAskUpdateCountFieldState() const = 0;
        
        /**
         * Get the quote bid update count fieldState
         *
         * @return MamdaFieldState.  An enumeration representing field state.
         */
        virtual MamdaFieldState  getBidUpdateCountFieldState() const = 0;
        
        /**
         * Get the quote ask yield fieldState
         *
         * @return MamdaFieldState.  An enumeration representing field state.
         */
        virtual MamdaFieldState  getAskYieldFieldState() const = 0;
        
        /**
         * Get the quote bid yield fieldState
         *
         * @return MamdaFieldState.  An enumeration representing field state.
         */
        virtual MamdaFieldState  getBidYieldFieldState() const = 0;     
        
        /**
         * Get the ask sizes list fieldState
         *
         * @return MamdaFieldState.  An enumeration representing field state.
         */
        virtual MamdaFieldState  getAskSizesListFieldState() const = 0;

        /**
         * Get the bid sizes list fieldState
         *
         * @return MamdaFieldState.  An enumeration representing field state.
         */
        virtual MamdaFieldState  getBidSizesListFieldState() const = 0;
        
        /**
         * @return The ShortSaleCircuitBreaker Field State.
         * An enumeration representing field state.
         */
        virtual MamdaFieldState  getShortSaleCircuitBreakerFieldState() const = 0;
        
        virtual ~MamdaQuoteUpdate() {};
    };

} // namespace

#endif // MamdaQuoteUpdateH