OnixS C++ eSpeed ITCH Market Data Handler 1.7.3
API documentation
Loading...
Searching...
No Matches
OrderBookDirectoryMsg.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
24
26
30 struct ONIXS_ESPEED_ITCH_API OrderBookDirectoryMsg : public IncomingMessage
31 {
33 UInt64 timestamp() const
34 {
35 return ordinary<UInt64>(1);
36 }
37
41 {
42 return ordinary<UInt32>(9);
43 }
44
46 StrRef symbol() const
48 {
49 return fixedStr<20>(13);
50 }
51
58
60 StrRef cusip() const
62 {
63 return fixedStr<9>(49);
64 }
65
67 UInt8 reserved1() const
68 {
69 return ordinaryRef<UInt8>(58);
70 }
71
78
85
92
95 UInt16 priceDecimals() const
96 {
97 return ordinary<UInt16>(62);
98 }
99
103 UInt16 yieldDecimals() const
104 {
105 return ordinary<UInt16>(64);
106 }
107
111 UInt16 couponDecimals() const
112 {
113 return ordinary<UInt16>(66);
114 }
115
118 UInt32 quantityMultiplier() const
119 {
120 return ordinary<UInt32>(68);
121 }
122
124 UInt16 reserved2() const
125 {
126 return ordinary<UInt16>(72);
127 }
128
130 UInt32 maturity() const
131 {
132 return ordinary<UInt32>(74);
133 }
134
136 UInt32 coupon() const
137 {
138 return ordinary<UInt32>(78);
139 }
140
142 UInt32 datedDate() const
143 {
144 return ordinary<UInt32>(82);
145 }
146
148 UInt32 issueDate() const
149 {
150 return ordinary<UInt32>(86);
151 }
152
154 UInt32 auctionDate() const
155 {
156 return ordinary<UInt32>(90);
157 }
158
160 UInt32 announcementDate() const
161 {
162 return ordinary<UInt32>(94);
163 }
164
166 UInt32 firstCouponDate() const
167 {
168 return ordinary<UInt32>(98);
169 }
170
172 UInt32 settlementDate() const
173 {
174 return ordinary<UInt32>(102);
175 }
176
178 UInt32 index() const
179 {
180 return ordinary<UInt32>(106);
181 }
182
184 UInt32 spreadRate() const
185 {
186 return ordinary<UInt32>(110);
187 }
188
195
199 {
200 return ordinary<UInt32>(116);
201 }
202
206 {
207 return ordinary<UInt32>(120);
208 }
209
216
218 UInt64 priceTickSize() const
219 {
220 return ordinary<UInt64>(126);
221 }
222
226 {
227 return fixedStr<12>(134);
228 }
229
232
234 static void validateSize(MessageSize size)
235 {
236 if (ONIXS_ESPEED_ITCH_CHECK_EXPECT((size < messageSize_), false))
237 throwIncorrectSize("OrderBookDirectoryMsg", size, messageSize_);
238 }
239
241 OrderBookDirectoryMsg(const void* data, MessageSize size)
243 : IncomingMessage(data, size)
244 {
245 }
246 };
247
249 ONIXS_ESPEED_ITCH_API void toStr(std::string&, const OrderBookDirectoryMsg&);
250
252 inline std::string toStr(const OrderBookDirectoryMsg& msg)
253 {
254 std::string str;
255 toStr(str, msg);
256 return str;
257 }
258
260 inline std::ostream& operator<<(std::ostream& stream, const OrderBookDirectoryMsg& msg)
261 {
262 stream << toStr(msg);
263 return stream;
264 }
265
ONIXS_ESPEED_ITCH_API void throwIncorrectSize(const std::string &messageName, MessageSize receivedSize, MessageSize expectedSize)
#define ONIXS_ESPEED_ITCH_NAMESPACE_BEGIN
Definition Bootstrap.h:27
#define ONIXS_ESPEED_ITCH_NAMESPACE_END
Definition Bootstrap.h:31
#define ONIXS_ESPEED_ITCH_CONST_OR_CONSTEXPR
Definition Compiler.h:46
#define ONIXS_ESPEED_ITCH_NOTHROW
Definition Compiler.h:27
#define ONIXS_ESPEED_ITCH_CHECK_EXPECT(exp, c)
Definition Compiler.h:52
UInt32 OrderBookId
Alias for Security Id type.
Definition Defines.h:43
UInt32 Quantity
Alias for Quantity type.
Definition Defines.h:46
ONIXS_ESPEED_ITCH_NAMESPACE_BEGIN typedef UInt16 MessageSize
Aliases message length type.
Definition Defines.h:34
ONIXS_ESPEED_ITCH_API void toStr(std::string &, const OrderBookDirectoryMsg &)
Serializes object into string.
std::ostream & operator<<(std::ostream &stream, const OrderBookDirectoryMsg &msg)
const FieldValue & ordinaryRef(BlockSize offset) const ONIXS_ESPEED_ITCH_NOTHROW
StrRef fixedStr(BlockSize offset) const ONIXS_ESPEED_ITCH_NOTHROW
FieldValue ordinary(BlockSize offset) const ONIXS_ESPEED_ITCH_NOTHROW
Enumeration::Enum enumeration(BlockSize offset) const ONIXS_ESPEED_ITCH_NOTHROW
IncomingMessage(const void *data, MessageSize size) ONIXS_ESPEED_ITCH_NOTHROW
Provides efficient way of accessing text-based FIX field values.
Definition String.h:41
UInt32 issueDate() const
Issue Date.
UInt32 firstCouponDate() const
First Coupon Date.
UInt64 timestamp() const
Timestamp.
TradingFeatures::Enum tradingFeatures() const ONIXS_ESPEED_ITCH_NOTHROW
Trading Features.
UInt32 settlementDate() const
Settlement Date.
UInt8 reserved1() const
Reserved.
UInt32 auctionDate() const
Auction Date.
OrderBookId orderBookId() const
UInt64 priceTickSize() const
The price tick for the instrument.
UInt32 datedDate() const
Dated Date.
OrderBookDirectoryMsg(const void *data, MessageSize size) ONIXS_ESPEED_ITCH_NOTHROW
Initializes instance over given memory block.
UInt32 announcementDate() const
Announcement Date.
StrRef reserved3() const ONIXS_ESPEED_ITCH_NOTHROW
Reserved.
static void validateSize(MessageSize size)
Check the given size.
UInt32 coupon() const
Coupon Rate.
UInt32 index() const
Index Reference Rate.
UInt32 spreadRate() const
Spread Rate.
UInt32 minimumQuantityIncrement() const
ProductSubType::Enum productSubType() const ONIXS_ESPEED_ITCH_NOTHROW
Product Subtype.
StrRef symbol() const ONIXS_ESPEED_ITCH_NOTHROW
UST security symbol in the NFI ATS (e.g. 10Y_UST)
ProductType::Enum productType() const ONIXS_ESPEED_ITCH_NOTHROW
Product type.
IssuedAsBenchmark::Enum issuedAsBenchmark() const ONIXS_ESPEED_ITCH_NOTHROW
Issued as Benchmark.
UInt32 maturity() const
Maturity date.
Quantity minimumEntryQuantity() const
StrRef securityDescription() const ONIXS_ESPEED_ITCH_NOTHROW
Instrument Description.
StrRef cusip() const ONIXS_ESPEED_ITCH_NOTHROW
CUSIP code identifying security.
static ONIXS_ESPEED_ITCH_CONST_OR_CONSTEXPR MessageSize messageSize_
Total message size.
PriceType::Enum priceType() const ONIXS_ESPEED_ITCH_NOTHROW
Price type.