OnixS BME SENAF Handler C++ library  2.2.1
API documentation
CombinedBidAskInvolved.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
5  * copyright law and international copyright treaties.
6  *
7  * Access to and use of the software is governed by the terms of the applicable
8  * ONIXS Software Services Agreement (the Agreement) and Customer end user
9  * license agreements granting a non-assignable, non-transferable and
10  * non-exclusive license to use the software for it's own data processing
11  * purposes under the terms defined in the Agreement.
12  *
13  * Except as otherwise granted within the terms of the Agreement, copying or
14  * reproduction of any part of this source code or associated reference material
15  * to any other location for further reproduction or redistribution, and any
16  * amendments to this copyright notice, are expressly prohibited.
17  *
18  * Any reproduction or redistribution for sale or hiring of the Software not in
19  * accordance with the terms of the Agreement is a violation of copyright law.
20  */
21 
22 #pragma once
23 
25 #include <OnixS/Senaf/MarketData/Export.h>
27 
28 #include <iosfwd>
29 #include <string>
30 
31 namespace OnixS { namespace Senaf { namespace MarketData {
32 
33 /// Combined Bid / Ask Publication Message. Involved.
34 struct ONIXS_BME_SENAF_EXPORT CombinedBidAskInvolved
35 {
36  /// Message code.
37  enum
38  {
39  code = 15
40  };
41 
42  /// Default constructor.
44 
45  /// Message Number.
46  unsigned int messageNumber;
47 
48  /// Market.
49  unsigned char market;
50 
51  /// Publication Time.
53 
54  /// Investment Decision.
55  unsigned int investmentDecision;
56 
57  /// Execution.
58  unsigned int execution;
59 
60  /// Liquidity Provision Activity.
62 
63  /// Instrument Type.
65 
66  /// Reference.
67  unsigned short reference;
68 
69  /// Bid Level.
70  unsigned char bidLevel;
71 
72  /// Bid Side.
74 
75  /// Bid Position.
76  unsigned char bidPosition;
77 
78  /// Bid Volume.
79  unsigned int bidVolume;
80 
81  /// Bid Price.
82  int bidPrice;
83 
84  /// Bid Yield/Rate.
85  int bidYield;
86 
87  /// Ask Level.
88  unsigned char askLevel;
89 
90  /// Ask Side.
92 
93  /// Ask Position.
94  unsigned char askPosition;
95 
96  /// Ask Volume.
97  unsigned int askVolume;
98 
99  /// Ask Price.
100  int askPrice;
101 
102  /// Ask Yield/Rate.
103  int askYield;
104 
105  /// Bid Position Number.
106  unsigned int bidPositionNumber;
107 
108  /// Ask Position Number.
109  unsigned int askPositionNumber;
110 
111  /// Member.
112  unsigned char member;
113 
114  /// Broker.
115  unsigned char broker;
116 
117  /// User.
118  unsigned char user;
119 
120  /// Label.
121  unsigned int label;
122 
123  /// Original Request Number.
124  unsigned int originalRequestNumber;
125 
126  /// Returns string representation.
127  std::string toString() const;
128 
129 private:
130  friend class MessageDeserializer;
131  CombinedBidAskInvolved(const char* data, size_t dataSize);
132  void deserialize(const char* data, size_t dataSize);
133  void reset();
134 };
135 
136 /// Make it printable using C++ I/O streams.
137 ONIXS_BME_SENAF_EXPORT std::ostream& operator<<(std::ostream&, const CombinedBidAskInvolved&);
138 
139 }}} // namespace OnixS::Senaf::MarketData
unsigned int originalRequestNumber
Original Request Number.
Combined Bid / Ask Publication Message. Involved.
std::ostream & operator<<(std::ostream &, const Error &)
Make it printable to formatted C++ I/O streams.
unsigned char liquidityProvisionActivity
Liquidity Provision Activity.
InstrumentType::Enum instrumentType
Instrument Type.
unsigned int investmentDecision
Investment Decision.