OnixS C++ Eurex T7 Market and Reference Data (EMDI, MDI, RDI, EOBI) Handlers 18.2.0
API documentation
Loading...
Searching...
No Matches
Message.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
22#include <ostream>
23#include <string>
24
28
29
30namespace OnixS
31{
32 class AccumulatingAllocator;
33
34 namespace FIX
35 {
36 namespace Core
37 {
38 namespace Messaging
39 {
40 class Message;
41 }
42 }
43 }
44
45 namespace Eurex
46 {
47 namespace MarketData
48 {
49
61 class
62 ONIXS_EUREX_EMDI_API
63 Message : public FieldSet
64 {
65 public:
69 Message (const Message& other);
70
77
80
84
88
91 bool operator == (const Message&) const;
92
95 bool operator != (const Message&) const;
96
102 std::string
103 toString (
104 char delimiter = 0x1,
107
110 std::string
115
122 void
124 std::string& str,
125 char delimiter = 0x1,
128
129
130
131 // Reassigns message as copy of other one.
132 Message& operator = (const Message&);
133
134 private:
135 friend class MessageOperator;
136
137 friend class ProductSnapshot;
138 friend class InstrumentSnapshot;
143
144 friend class DepthSnapshot;
145 friend class DepthIncremental;
146 friend class ProductStateChange;
149 friend class QuoteRequest;
150 friend class CrossRequest;
154
155 friend class OpenInterest;
156 friend class Settlement;
157 friend class ExchangeTrade;
158
159 friend class TopOfBookImplied;
160
161 Message (const void*);
162
163 private:
164 AccumulatingAllocator* allocator_;
165 FIX::Core::Messaging::Message* message_;
166
167 unsigned char impl_[6 * sizeof (size_t)];
168 unsigned char allocatorImpl_[4 * sizeof (size_t)];
169
170 void construct();
171 void destruct();
172 };
173
174 inline
175 std::string
177 char delimiter,
178 MessageStringingFlags flags) const
179 {
180 std::string str;
181
182 toString (str, delimiter, flags);
183
184 return str;
185 }
186
187 // Outputs message into standard stream.
188 ONIXS_EUREX_EMDI_API
189 std::ostream&
191 std::ostream& os,
192 const Message& message);
193 }
194 }
195}
friend class FlexibleInstrumentUpdate
Definition Message.h:152
FieldValueRef type() const
Returns the message type (MsgType(35) field value).
void toString(std::string &str, char delimiter=0x1, MessageStringingFlags flags=MessageStringingFlag::IncludeFieldTagNumber) const
friend class MassInstrumentStateChange
Definition Message.h:147
SequenceNumber seqNum() const
FieldValueRef senderCompId() const
std::string toString(char delimiter=0x1, MessageStringingFlags flags=MessageStringingFlag::IncludeFieldTagNumber) const
Definition Message.h:176
Message(const Message &other)
friend class ScaledSimpleInstrumentUpdate
Definition Message.h:153
friend class TradeAtReferencePriceStatus
Definition Message.h:142
friend class TotalReturnFuturesStatus
Definition Message.h:141
std::string toStringWithFieldNames() const
Definition Message.h:111
std::ostream & operator<<(std::ostream &os, const Message &message)
bool operator==(const FieldValueRef &ref, const std::string &str)
unsigned int SequenceNumber
Alias for sequence numbers.
bool operator!=(const FieldValueRef &ref, const std::string &str)
unsigned MessageStringingFlags
Collection of message stringing flags.
@ IncludeFieldName
Field names are included during serialization.
@ IncludeFieldTagNumber
Field tag numbers are included during serialization.