OnixS C++ eSpeed ITCH Market Data Handler 1.7.3
API documentation
Loading...
Searching...
No Matches
OrderExecutedWithPriceMsg.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 OrderExecutedWithPriceMsg : public IncomingMessage
31 {
33 UInt64 timestamp() const
34 {
35 return ordinary<UInt64>(1);
36 }
37
40 UInt32 orderReferenceNumber() const
41 {
42 return ordinary<UInt32>(9);
43 }
44
47 UInt32 transactionId() const
48 {
49 return ordinary<UInt32>(13);
50 }
51
54 {
55 return ordinary<UInt32>(17);
56 }
57
61 {
62 return enumeration<Side>(21);
63 }
64
67 {
68 return ordinary<UInt32>(22);
69 }
70
74 {
75 return fixedStr<14>(26);
76 }
77
85
88 {
89 return ordinary<Int64>(41);
90 }
91
93 UInt32 tradeYield() const
94 {
95 return ordinary<UInt32>(49);
96 }
97
100
102 static void validateSize(MessageSize size)
103 {
104 if (ONIXS_ESPEED_ITCH_CHECK_EXPECT((size < messageSize_), false))
105 throwIncorrectSize("OrderExecutedWithPriceMsg", size, messageSize_);
106 }
107
111 : IncomingMessage(data, size)
112 {
113 }
114 };
115
117 ONIXS_ESPEED_ITCH_API void toStr(std::string&, const OrderExecutedWithPriceMsg&);
118
120 inline std::string toStr(const OrderExecutedWithPriceMsg& msg)
121 {
122 std::string str;
123 toStr(str, msg);
124 return str;
125 }
126
128 inline std::ostream& operator<<(std::ostream& stream, const OrderExecutedWithPriceMsg& msg)
129 {
130 stream << toStr(msg);
131 return stream;
132 }
133
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
Int64 Price8
Alias for Price type (8 bytes).
Definition Defines.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 OrderExecutedWithPriceMsg &)
Serializes object into string.
std::ostream & operator<<(std::ostream &stream, const OrderExecutedWithPriceMsg &msg)
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
OrderExecutedWithPriceMsg(const void *data, MessageSize size) ONIXS_ESPEED_ITCH_NOTHROW
Initializes instance over given memory block.
UInt64 timestamp() const
Timestamp.
UInt32 tradeYield() const
The yield at which the order execution occurred.
OrderBookId orderBookId() const
Unique Order book identifier.
static void validateSize(MessageSize size)
Check the given size.
Quantity executedQuantity() const
The quantity executed.
Price8 tradePrice() const
The price at which the order execution occurred.
Printable::Enum printable() const ONIXS_ESPEED_ITCH_NOTHROW
StrRef matchId() const ONIXS_ESPEED_ITCH_NOTHROW
The day unique Match Number of this execution.
static ONIXS_ESPEED_ITCH_CONST_OR_CONSTEXPR MessageSize messageSize_
Total message size.
Side::Enum side() const ONIXS_ESPEED_ITCH_NOTHROW
The type of order being traded.