OnixS C++ B3 Binary UMDF Market Data Handler 1.11.1
Users' manual and API documentation
Loading...
Searching...
No Matches
Typification.h
Go to the documentation of this file.
1// Copyright Onix Solutions Limited [OnixS]. All rights reserved.
2//
3// This software owned by Onix Solutions Limited [OnixS] and is
4// protected by copyright law and international copyright treaties.
5//
6// Access to and use of the software is governed by the terms of the applicable
7// OnixS Software Services Agreement (the Agreement) and Customer end user license
8// agreements granting a non-assignable, non-transferable and non-exclusive license
9// to use the software for it's own data processing purposes under the terms defined
10// in the Agreement.
11//
12// Except as otherwise granted within the terms of the Agreement, copying or
13// reproduction of any part of this source code or associated reference material
14// to any other location for further reproduction or redistribution, and any
15// amendments to this copyright notice, are expressly prohibited.
16//
17// Any reproduction or redistribution for sale or hiring of the Software not in
18// accordance with the terms of the Agreement is a violation of copyright law.
19//
20
21#pragma once
22
24
26
28template
29 <
30 class Message
31 >
32inline
35Message
37 const SbeMessage message)
38{
39 return Message(message);
40}
41
48template
49<
50 class Processor
51>
52inline
54bool
56 const SbeMessage binary,
57 Processor&& processor)
58{
59 switch (binary.templateId())
60 {
62 {
63 processor(
64 typify
66 (binary));
67
68 return true;
69 }
70
72 {
73 processor(
74 typify
76 (binary));
77
78 return true;
79 }
80
82 {
83 processor(
84 typify
86 (binary));
87
88 return true;
89 }
90
92 {
93 processor(
94 typify
96 (binary));
97
98 return true;
99 }
100
102 {
103 processor(
104 typify
106 (binary));
107
108 return true;
109 }
110
112 {
113 processor(
114 typify
116 (binary));
117
118 return true;
119 }
120
122 {
123 processor(
124 typify
126 (binary));
127
128 return true;
129 }
130
132 {
133 processor(
134 typify
135 <News_5>
136 (binary));
137
138 return true;
139 }
140
142 {
143 processor(
144 typify
146 (binary));
147
148 return true;
149 }
150
152 {
153 processor(
154 typify
156 (binary));
157
158 return true;
159 }
160
162 {
163 processor(
164 typify
166 (binary));
167
168 return true;
169 }
170
172 {
173 processor(
174 typify
176 (binary));
177
178 return true;
179 }
180
182 {
183 processor(
184 typify
186 (binary));
187
188 return true;
189 }
190
192 {
193 processor(
194 typify
196 (binary));
197
198 return true;
199 }
200
202 {
203 processor(
204 typify
206 (binary));
207
208 return true;
209 }
210
212 {
213 processor(
214 typify
216 (binary));
217
218 return true;
219 }
220
222 {
223 processor(
224 typify
226 (binary));
227
228 return true;
229 }
230
232 {
233 processor(
234 typify
236 (binary));
237
238 return true;
239 }
240
242 {
243 processor(
244 typify
246 (binary));
247
248 return true;
249 }
250
252 {
253 processor(
254 typify
256 (binary));
257
258 return true;
259 }
260
262 {
263 processor(
264 typify
266 (binary));
267
268 return true;
269 }
270
272 {
273 processor(
274 typify
276 (binary));
277
278 return true;
279 }
280
282 {
283 processor(
284 typify
286 (binary));
287
288 return true;
289 }
290
292 {
293 processor(
294 typify
295 <Trade_53>
296 (binary));
297
298 return true;
299 }
300
302 {
303 processor(
304 typify
306 (binary));
307
308 return true;
309 }
310
312 {
313 processor(
314 typify
316 (binary));
317
318 return true;
319 }
320
322 {
323 processor(
324 typify
326 (binary));
327
328 return true;
329 }
330
332 {
333 processor(
334 typify
336 (binary));
337
338 return true;
339 }
340
342 {
343 processor(
344 typify
346 (binary));
347
348 return true;
349 }
350
351 default:
352 return false;
353 }
354}
355
#define ONIXS_B3_UMDF_MD_MESSAGING_NAMESPACE_END
Definition ABI.h:158
#define ONIXS_B3_UMDF_MD_MESSAGING_NAMESPACE_BEGIN
Definition ABI.h:153
#define ONIXS_B3_UMDF_MD_NODISCARD
Definition Compiler.h:131
#define ONIXS_B3_UMDF_MD_PURE
Definition Compiler.h:134
MessageTemplateId templateId() const noexcept
Message typify(const SbeMessage message)
Casts SBE-encoded message to a given type.
bool processTypified(const SbeMessage binary, Processor &&processor)
Casts a given binary message according to template/type information and processes the cast messages b...
Carries auction imbalance information, indicating the remaining quantity and to which side (buyer or ...
Definition Messages.h:3748
Channel Reset (remove all instruments, empty all books and statistics).
Definition Messages.h:596
Summary information about closing trading sessions per market data stream.
Definition Messages.h:3460
Disseminates the deletion of a new order.
Definition Messages.h:6595
Market Data Incremental Refresh - Empty Book.
Definition Messages.h:369
Relays execution summary statistics information on one instrument.
Definition Messages.h:8082
Relays execution summary information on one instrument.
Definition Messages.h:7793
Relays trade information on one Forward instrument.
Definition Messages.h:7438
The highest price traded for the security in the trading session.
Definition Messages.h:4579
The latest price traded for the security in the trading session.
Definition Messages.h:5091
The lowest price traded for the security in the trading session.
Definition Messages.h:4835
Conveys market information of B3 market surveillance notifications and news produced by agencies.
Definition Messages.h:2556
Total number of contracts in a commodity or options market that are still open.
Definition Messages.h:5754
Carries the summary information about opening trading session events per market data stream.
Definition Messages.h:2901
Disseminates the creation or modification of a new order.
Definition Messages.h:6281
Used to reset the incremental stream or indicate the loop on instrument definition or snapshot recove...
Definition Messages.h:41
Sent in incremental, snapshot and instrument list feeds in periods of no activity.
Definition Messages.h:204
Settlement price or the previous day’s adjusted closing price.
Definition Messages.h:5445
Header for the snapshot of a single instrument.
Definition Messages.h:6012
Partial list of orders for the snapshot of a single instrument.
Definition Messages.h:8670
The theoretical opening price is also sent on this block and is calculated and updated based on the o...
Definition Messages.h:3184
Relays trade bust (trade reversal) information on one instrument.
Definition Messages.h:8380
Relays trade information on one instrument.
Definition Messages.h:7107