OnixS C++ ICE Binary Order Entry Handler 1.0.0
API Documentation
Loading...
Searching...
No Matches
Messages.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
23#include <cassert>
24#include <stdexcept>
25
26#include <OnixS/ICE/BOE/ABI.h>
29
31
33struct
36{
39
42
44 enum { TemplateId = 1 };
45
47 LogonRequest() = default;
48
58
70
72 LogonRequest(void* data, EncodedLength length, NoInit)
73 : SbeMessage(data, length)
74 {
75 checkCompatibility();
76 }
77
79 explicit
80 LogonRequest(const SbeMessage& message)
81 : SbeMessage(message)
82 {
83 assert(message.valid());
84
85 checkCompatibility();
86 }
87
90 LogonRequest(void* data, EncodedLength length, NoInit, NoCheck) noexcept
91 : SbeMessage(data, length, NoCheck())
92 {
93 assert(schemaId() == Schema::Id);
95 assert(TemplateId == templateId());
96 }
97
100 auto userId() const noexcept
101 {
102 constexpr BlockLength offset = 0;
103 constexpr BlockLength length = 20;
104
105 return fixedStr<length>(offset);
106 }
107
109 ThisType& userId(StrRef value) noexcept
110 {
111 constexpr BlockLength offset = 0;
112 constexpr BlockLength length = 20;
113
114 setFixedStr<length>(offset, value);
115 return *this;
116 }
117
120 auto clientId() const noexcept
121 {
122 constexpr BlockLength offset = 20;
123
124 return ordinary<Int32>(offset);
125 }
126
128 ThisType& clientId(Int32 value) noexcept
129 {
130 constexpr BlockLength offset = 20;
131
132 setOrdinary(offset, value);
133 return *this;
134 }
135
138 auto heartBeatInterval() const noexcept
139 {
140 constexpr BlockLength offset = 24;
141
142 return ordinary<NullUint16NULL>(offset, optional);
143 }
144
147 {
148 constexpr BlockLength offset = 24;
149
150 setOrdinary(offset, value);
151 return *this;
152 }
153
155 {
156 constexpr BlockLength offset = 24;
157
158 setOrdinary(offset, NullUint16NULL());
159 return *this;
160 }
161
164 auto applicationName() const noexcept
165 {
166 constexpr BlockLength offset = 26;
167 constexpr BlockLength length = 30;
168
169 return fixedStr<length>(offset);
170 }
171
174 {
175 constexpr BlockLength offset = 26;
176 constexpr BlockLength length = 30;
177
178 setFixedStr<length>(offset, value);
179 return *this;
180 }
181
184 auto applicationVersion() const noexcept
185 {
186 constexpr BlockLength offset = 56;
187 constexpr BlockLength length = 50;
188
189 return fixedStr<length>(offset);
190 }
191
194 {
195 constexpr BlockLength offset = 56;
196 constexpr BlockLength length = 50;
197
198 setFixedStr<length>(offset, value);
199 return *this;
200 }
201
204 auto applicationVendor() const noexcept
205 {
206 constexpr BlockLength offset = 106;
207 constexpr BlockLength length = 30;
208
209 return fixedStr<length>(offset);
210 }
211
214 {
215 constexpr BlockLength offset = 106;
216 constexpr BlockLength length = 30;
217
218 setFixedStr<length>(offset, value);
219 return *this;
220 }
221
224 auto rawData() const noexcept
225 {
226 constexpr BlockLength offset = 136;
227 constexpr BlockLength length = 50;
228
229 return fixedStr<length>(offset);
230 }
231
233 ThisType& rawData(StrRef value) noexcept
234 {
235 constexpr BlockLength offset = 136;
236 constexpr BlockLength length = 50;
237
238 setFixedStr<length>(offset, value);
239 return *this;
240 }
241
245 auto ipSessionToken() const noexcept
246 {
247 constexpr BlockLength offset = 186;
248 constexpr BlockLength length = 50;
249
250 return fixedStr<length>(offset, optional);
251 }
252
256 {
257 constexpr BlockLength offset = 186;
258 constexpr BlockLength length = 50;
259
260 setFixedStr<length>(offset, value);
261 return *this;
262 }
263
265 {
266 constexpr BlockLength offset = 186;
267 constexpr BlockLength length = 50;
268
269 setFixedStr<length>(offset, StrRef());
270 return *this;
271 }
272
274 constexpr
276 {
277 return
278 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
279 236;
280 }
281
283 constexpr
285 {
286 return
287 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
289 }
290
293 constexpr
295 {
296 return
297 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
298 0;
299 }
300
303 constexpr
305 {
306 return
307 static_cast<UInt64>(MessageHeaderBuilder::Size) +
309 }
310
313 {
314 return *this;
315 }
316
318 ThisType& reset() noexcept
319 {
322
324 return *this;
325 }
326
329 constexpr
330 static StrRef className() noexcept
331 {
332 return constructStrRef("LogonRequest");
333 }
334
337 constexpr
338 static StrRef fixType() noexcept
339 {
340 return constructStrRef("A");
341 }
342
345 std::string toString() const;
346
349 const void* tail() const noexcept
350 {
351 return
354 binary(),
355 static_cast<ptrdiff_t>(SbeMessage::blockLength()) +
357 }
358
362 {
363 return
365 }
366
367private:
368 void checkLength(
369 EncodedLength length, SchemaVersion version) const
370 {
371 const EncodedLength minimalRequiredLength =
372 minimalBlockLength(version) +
374 getMinimalVariableFieldsSize(version);
375
377 *this, length, minimalRequiredLength);
378 }
379
380 void checkCompatibility() const
381 {
382 assert(TemplateId == templateId());
383
384 checkSchema<Schema>(schemaId(), version());
385 checkLength(bufferSize(), version());
386 }
387};
388
390struct
393{
396
399
401 enum { TemplateId = 101 };
402
404 LogonReport() = default;
405
408 : SbeMessage(data, length, version)
409 {
411 checkLength(length, version);
413 reset();
414 }
415
427
429 LogonReport(void* data, EncodedLength length, NoInit)
430 : SbeMessage(data, length)
431 {
432 checkCompatibility();
433 }
434
436 explicit
437 LogonReport(const SbeMessage& message)
438 : SbeMessage(message)
439 {
440 assert(message.valid());
441
442 checkCompatibility();
443 }
444
447 LogonReport(void* data, EncodedLength length, NoInit, NoCheck) noexcept
448 : SbeMessage(data, length, NoCheck())
449 {
450 assert(schemaId() == Schema::Id);
451 assert(version() >= Schema::MinimalVersion);
452 assert(TemplateId == templateId());
453 }
454
457 auto userId() const noexcept
458 {
459 constexpr BlockLength offset = 0;
460 constexpr BlockLength length = 20;
461
462 return fixedStr<length>(offset);
463 }
464
466 ThisType& userId(StrRef value) noexcept
467 {
468 constexpr BlockLength offset = 0;
469 constexpr BlockLength length = 20;
470
471 setFixedStr<length>(offset, value);
472 return *this;
473 }
474
477 auto heartBeatInterval() const noexcept
478 {
479 constexpr BlockLength offset = 20;
480
481 return ordinary<NullUint16NULL>(offset, optional);
482 }
483
486 {
487 constexpr BlockLength offset = 20;
488
489 setOrdinary(offset, value);
490 return *this;
491 }
492
494 {
495 constexpr BlockLength offset = 20;
496
497 setOrdinary(offset, NullUint16NULL());
498 return *this;
499 }
500
503 auto severityLevel() const noexcept
504 {
505 constexpr BlockLength offset = 22;
506
508 }
509
512 {
513 constexpr BlockLength offset = 22;
514
516 return *this;
517 }
518
520 {
521 constexpr BlockLength offset = 22;
522
523 setOrdinary(offset, NullUint8NULL());
524 return *this;
525 }
526
529 auto exchangeCode() const noexcept
530 {
531 constexpr BlockLength offset = 23;
532
533 return ordinary<NullInt32NULL>(offset, optional);
534 }
535
538 {
539 constexpr BlockLength offset = 23;
540
541 setOrdinary(offset, value);
542 return *this;
543 }
544
546 {
547 constexpr BlockLength offset = 23;
548
549 setOrdinary(offset, NullInt32NULL());
550 return *this;
551 }
552
555 auto text() const noexcept
556 {
557 constexpr BlockLength offset = 27;
558 constexpr BlockLength length = 100;
559
560 return fixedStr<length>(offset, optional);
561 }
562
564 ThisType& text(StrRef value) noexcept
565 {
566 constexpr BlockLength offset = 27;
567 constexpr BlockLength length = 100;
568
569 setFixedStr<length>(offset, value);
570 return *this;
571 }
572
574 {
575 constexpr BlockLength offset = 27;
576 constexpr BlockLength length = 100;
577
578 setFixedStr<length>(offset, StrRef());
579 return *this;
580 }
581
583 constexpr
585 {
586 return
587 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
588 127;
589 }
590
592 constexpr
594 {
595 return
596 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
598 }
599
602 constexpr
604 {
605 return
606 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
607 0;
608 }
609
612 constexpr
614 {
615 return
616 static_cast<UInt64>(MessageHeaderBuilder::Size) +
618 }
619
622 {
623 return *this;
624 }
625
627 ThisType& reset() noexcept
628 {
632 text(nullOpt);
633
635 return *this;
636 }
637
640 constexpr
641 static StrRef className() noexcept
642 {
643 return constructStrRef("LogonReport");
644 }
645
648 constexpr
649 static StrRef fixType() noexcept
650 {
651 return constructStrRef("LogonReport");
652 }
653
656 std::string toString() const;
657
660 const void* tail() const noexcept
661 {
662 return
665 binary(),
666 static_cast<ptrdiff_t>(SbeMessage::blockLength()) +
668 }
669
673 {
674 return
676 }
677
678private:
679 void checkLength(
680 EncodedLength length, SchemaVersion version) const
681 {
682 const EncodedLength minimalRequiredLength =
683 minimalBlockLength(version) +
685 getMinimalVariableFieldsSize(version);
686
688 *this, length, minimalRequiredLength);
689 }
690
691 void checkCompatibility() const
692 {
693 assert(TemplateId == templateId());
694
695 checkSchema<Schema>(schemaId(), version());
696 checkLength(bufferSize(), version());
697 }
698};
699
701struct
704{
707
710
712 enum { TemplateId = 13 };
713
715 LogoutRequest() = default;
716
726
738
740 LogoutRequest(void* data, EncodedLength length, NoInit)
741 : SbeMessage(data, length)
742 {
743 checkCompatibility();
744 }
745
747 explicit
748 LogoutRequest(const SbeMessage& message)
749 : SbeMessage(message)
750 {
751 assert(message.valid());
752
753 checkCompatibility();
754 }
755
758 LogoutRequest(void* data, EncodedLength length, NoInit, NoCheck) noexcept
759 : SbeMessage(data, length, NoCheck())
760 {
761 assert(schemaId() == Schema::Id);
762 assert(version() >= Schema::MinimalVersion);
763 assert(TemplateId == templateId());
764 }
765
768 auto userId() const noexcept
769 {
770 constexpr BlockLength offset = 0;
771 constexpr BlockLength length = 20;
772
773 return fixedStr<length>(offset);
774 }
775
777 ThisType& userId(StrRef value) noexcept
778 {
779 constexpr BlockLength offset = 0;
780 constexpr BlockLength length = 20;
781
782 setFixedStr<length>(offset, value);
783 return *this;
784 }
785
787 constexpr
789 {
790 return
791 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
792 20;
793 }
794
796 constexpr
798 {
799 return
800 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
802 }
803
806 constexpr
808 {
809 return
810 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
811 0;
812 }
813
816 constexpr
818 {
819 return
820 static_cast<UInt64>(MessageHeaderBuilder::Size) +
822 }
823
826 {
827 return *this;
828 }
829
831 ThisType& reset() noexcept
832 {
834 return *this;
835 }
836
839 constexpr
840 static StrRef className() noexcept
841 {
842 return constructStrRef("LogoutRequest");
843 }
844
847 constexpr
848 static StrRef fixType() noexcept
849 {
850 return constructStrRef("5");
851 }
852
855 std::string toString() const;
856
859 const void* tail() const noexcept
860 {
861 return
864 binary(),
865 static_cast<ptrdiff_t>(SbeMessage::blockLength()) +
867 }
868
872 {
873 return
875 }
876
877private:
878 void checkLength(
879 EncodedLength length, SchemaVersion version) const
880 {
881 const EncodedLength minimalRequiredLength =
882 minimalBlockLength(version) +
884 getMinimalVariableFieldsSize(version);
885
887 *this, length, minimalRequiredLength);
888 }
889
890 void checkCompatibility() const
891 {
892 assert(TemplateId == templateId());
893
894 checkSchema<Schema>(schemaId(), version());
895 checkLength(bufferSize(), version());
896 }
897};
898
900struct
903{
906
909
911 enum { TemplateId = 113 };
912
914 LogoutReport() = default;
915
918 : SbeMessage(data, length, version)
919 {
921 checkLength(length, version);
923 reset();
924 }
925
937
939 LogoutReport(void* data, EncodedLength length, NoInit)
940 : SbeMessage(data, length)
941 {
942 checkCompatibility();
943 }
944
946 explicit
947 LogoutReport(const SbeMessage& message)
948 : SbeMessage(message)
949 {
950 assert(message.valid());
951
952 checkCompatibility();
953 }
954
957 LogoutReport(void* data, EncodedLength length, NoInit, NoCheck) noexcept
958 : SbeMessage(data, length, NoCheck())
959 {
960 assert(schemaId() == Schema::Id);
961 assert(version() >= Schema::MinimalVersion);
962 assert(TemplateId == templateId());
963 }
964
967 auto userId() const noexcept
968 {
969 constexpr BlockLength offset = 0;
970 constexpr BlockLength length = 20;
971
972 return fixedStr<length>(offset);
973 }
974
976 ThisType& userId(StrRef value) noexcept
977 {
978 constexpr BlockLength offset = 0;
979 constexpr BlockLength length = 20;
980
981 setFixedStr<length>(offset, value);
982 return *this;
983 }
984
987 auto exchangeCode() const noexcept
988 {
989 constexpr BlockLength offset = 20;
990
991 return ordinary<NullInt32NULL>(offset, optional);
992 }
993
996 {
997 constexpr BlockLength offset = 20;
998
999 setOrdinary(offset, value);
1000 return *this;
1001 }
1002
1004 {
1005 constexpr BlockLength offset = 20;
1006
1007 setOrdinary(offset, NullInt32NULL());
1008 return *this;
1009 }
1010
1013 auto text() const noexcept
1014 {
1015 constexpr BlockLength offset = 24;
1016 constexpr BlockLength length = 100;
1017
1018 return fixedStr<length>(offset, optional);
1019 }
1020
1022 ThisType& text(StrRef value) noexcept
1023 {
1024 constexpr BlockLength offset = 24;
1025 constexpr BlockLength length = 100;
1026
1027 setFixedStr<length>(offset, value);
1028 return *this;
1029 }
1030
1032 {
1033 constexpr BlockLength offset = 24;
1034 constexpr BlockLength length = 100;
1035
1036 setFixedStr<length>(offset, StrRef());
1037 return *this;
1038 }
1039
1041 constexpr
1043 {
1044 return
1045 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
1046 124;
1047 }
1048
1050 constexpr
1052 {
1053 return
1054 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
1056 }
1057
1060 constexpr
1062 {
1063 return
1064 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
1065 0;
1066 }
1067
1070 constexpr
1072 {
1073 return
1074 static_cast<UInt64>(MessageHeaderBuilder::Size) +
1076 }
1077
1080 {
1081 return *this;
1082 }
1083
1085 ThisType& reset() noexcept
1086 {
1088 text(nullOpt);
1089
1091 return *this;
1092 }
1093
1096 constexpr
1097 static StrRef className() noexcept
1098 {
1099 return constructStrRef("LogoutReport");
1100 }
1101
1104 constexpr
1105 static StrRef fixType() noexcept
1106 {
1107 return constructStrRef("5");
1108 }
1109
1112 std::string toString() const;
1113
1116 const void* tail() const noexcept
1117 {
1118 return
1121 binary(),
1122 static_cast<ptrdiff_t>(SbeMessage::blockLength()) +
1124 }
1125
1129 {
1130 return
1132 }
1133
1134private:
1135 void checkLength(
1136 EncodedLength length, SchemaVersion version) const
1137 {
1138 const EncodedLength minimalRequiredLength =
1139 minimalBlockLength(version) +
1141 getMinimalVariableFieldsSize(version);
1142
1144 *this, length, minimalRequiredLength);
1145 }
1146
1147 void checkCompatibility() const
1148 {
1149 assert(TemplateId == templateId());
1150
1151 checkSchema<Schema>(schemaId(), version());
1152 checkLength(bufferSize(), version());
1153 }
1154};
1155
1157struct
1159: SbeMessage
1160{
1163
1166
1168 enum { TemplateId = 51 };
1169
1171 HeartBeat() = default;
1172
1175 : SbeMessage(data, length, version)
1176 {
1178 checkLength(length, version);
1180 reset();
1181 }
1182
1194
1196 HeartBeat(void* data, EncodedLength length, NoInit)
1197 : SbeMessage(data, length)
1198 {
1199 checkCompatibility();
1200 }
1201
1203 explicit
1204 HeartBeat(const SbeMessage& message)
1205 : SbeMessage(message)
1206 {
1207 assert(message.valid());
1208
1209 checkCompatibility();
1210 }
1211
1214 HeartBeat(void* data, EncodedLength length, NoInit, NoCheck) noexcept
1215 : SbeMessage(data, length, NoCheck())
1216 {
1217 assert(schemaId() == Schema::Id);
1218 assert(version() >= Schema::MinimalVersion);
1219 assert(TemplateId == templateId());
1220 }
1221
1223 constexpr
1225 {
1226 return
1227 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
1228 0;
1229 }
1230
1232 constexpr
1234 {
1235 return
1236 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
1238 }
1239
1242 constexpr
1244 {
1245 return
1246 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
1247 0;
1248 }
1249
1252 constexpr
1254 {
1255 return
1256 static_cast<UInt64>(MessageHeaderBuilder::Size) +
1258 }
1259
1262 {
1263 return *this;
1264 }
1265
1267 ThisType& reset() noexcept
1268 {
1270 return *this;
1271 }
1272
1275 constexpr
1276 static StrRef className() noexcept
1277 {
1278 return constructStrRef("HeartBeat");
1279 }
1280
1283 constexpr
1284 static StrRef fixType() noexcept
1285 {
1286 return constructStrRef("0");
1287 }
1288
1291 std::string toString() const;
1292
1295 const void* tail() const noexcept
1296 {
1297 return
1300 binary(),
1301 static_cast<ptrdiff_t>(SbeMessage::blockLength()) +
1303 }
1304
1308 {
1309 return
1311 }
1312
1313private:
1314 void checkLength(
1315 EncodedLength length, SchemaVersion version) const
1316 {
1317 const EncodedLength minimalRequiredLength =
1318 minimalBlockLength(version) +
1320 getMinimalVariableFieldsSize(version);
1321
1323 *this, length, minimalRequiredLength);
1324 }
1325
1326 void checkCompatibility() const
1327 {
1328 assert(TemplateId == templateId());
1329
1330 checkSchema<Schema>(schemaId(), version());
1331 checkLength(bufferSize(), version());
1332 }
1333};
1334
1336struct
1337Error
1338: SbeMessage
1339{
1342
1345
1347 enum { TemplateId = 114 };
1348
1350 Error() = default;
1351
1354 : SbeMessage(data, length, version)
1355 {
1357 checkLength(length, version);
1359 reset();
1360 }
1361
1373
1375 Error(void* data, EncodedLength length, NoInit)
1376 : SbeMessage(data, length)
1377 {
1378 checkCompatibility();
1379 }
1380
1382 explicit
1383 Error(const SbeMessage& message)
1384 : SbeMessage(message)
1385 {
1386 assert(message.valid());
1387
1388 checkCompatibility();
1389 }
1390
1393 Error(void* data, EncodedLength length, NoInit, NoCheck) noexcept
1394 : SbeMessage(data, length, NoCheck())
1395 {
1396 assert(schemaId() == Schema::Id);
1397 assert(version() >= Schema::MinimalVersion);
1398 assert(TemplateId == templateId());
1399 }
1400
1403 auto refSequenceId() const noexcept
1404 {
1405 constexpr BlockLength offset = 0;
1406
1407 return ordinary<UInt32>(offset);
1408 }
1409
1412 {
1413 constexpr BlockLength offset = 0;
1414
1415 setOrdinary(offset, value);
1416 return *this;
1417 }
1418
1421 auto severityLevel() const noexcept
1422 {
1423 constexpr BlockLength offset = 4;
1424
1426 }
1427
1430 {
1431 constexpr BlockLength offset = 4;
1432
1433 setEnumeration<SeverityLevelEnum>(offset, value);
1434 return *this;
1435 }
1436
1438 {
1439 constexpr BlockLength offset = 4;
1440
1441 setOrdinary(offset, NullUint8NULL());
1442 return *this;
1443 }
1444
1447 auto supportedSchemaVersion() const noexcept
1448 {
1449 constexpr BlockLength offset = 5;
1450 constexpr BlockLength length = 20;
1451
1452 return fixedStr<length>(offset);
1453 }
1454
1457 {
1458 constexpr BlockLength offset = 5;
1459 constexpr BlockLength length = 20;
1460
1461 setFixedStr<length>(offset, value);
1462 return *this;
1463 }
1464
1467 auto exchangeCode() const noexcept
1468 {
1469 constexpr BlockLength offset = 25;
1470
1471 return ordinary<NullInt32NULL>(offset, optional);
1472 }
1473
1476 {
1477 constexpr BlockLength offset = 25;
1478
1479 setOrdinary(offset, value);
1480 return *this;
1481 }
1482
1484 {
1485 constexpr BlockLength offset = 25;
1486
1487 setOrdinary(offset, NullInt32NULL());
1488 return *this;
1489 }
1490
1493 auto text() const noexcept
1494 {
1495 constexpr BlockLength offset = 29;
1496 constexpr BlockLength length = 100;
1497
1498 return fixedStr<length>(offset, optional);
1499 }
1500
1502 ThisType& text(StrRef value) noexcept
1503 {
1504 constexpr BlockLength offset = 29;
1505 constexpr BlockLength length = 100;
1506
1507 setFixedStr<length>(offset, value);
1508 return *this;
1509 }
1510
1512 {
1513 constexpr BlockLength offset = 29;
1514 constexpr BlockLength length = 100;
1515
1516 setFixedStr<length>(offset, StrRef());
1517 return *this;
1518 }
1519
1521 constexpr
1523 {
1524 return
1525 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
1526 129;
1527 }
1528
1530 constexpr
1532 {
1533 return
1534 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
1536 }
1537
1540 constexpr
1542 {
1543 return
1544 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
1545 0;
1546 }
1547
1550 constexpr
1552 {
1553 return
1554 static_cast<UInt64>(MessageHeaderBuilder::Size) +
1556 }
1557
1560 {
1561 return *this;
1562 }
1563
1565 ThisType& reset() noexcept
1566 {
1569 text(nullOpt);
1570
1572 return *this;
1573 }
1574
1577 constexpr
1578 static StrRef className() noexcept
1579 {
1580 return constructStrRef("Error");
1581 }
1582
1585 constexpr
1586 static StrRef fixType() noexcept
1587 {
1588 return constructStrRef("Error");
1589 }
1590
1593 std::string toString() const;
1594
1597 const void* tail() const noexcept
1598 {
1599 return
1602 binary(),
1603 static_cast<ptrdiff_t>(SbeMessage::blockLength()) +
1605 }
1606
1610 {
1611 return
1613 }
1614
1615private:
1616 void checkLength(
1617 EncodedLength length, SchemaVersion version) const
1618 {
1619 const EncodedLength minimalRequiredLength =
1620 minimalBlockLength(version) +
1622 getMinimalVariableFieldsSize(version);
1623
1625 *this, length, minimalRequiredLength);
1626 }
1627
1628 void checkCompatibility() const
1629 {
1630 assert(TemplateId == templateId());
1631
1632 checkSchema<Schema>(schemaId(), version());
1633 checkLength(bufferSize(), version());
1634 }
1635};
1636
1638struct
1639News
1640: SbeMessage
1641{
1644
1647
1649 enum { TemplateId = 116 };
1650
1652 News() = default;
1653
1656 : SbeMessage(data, length, version)
1657 {
1659 checkLength(length, version);
1661 reset();
1662 }
1663
1675
1677 News(void* data, EncodedLength length, NoInit)
1678 : SbeMessage(data, length)
1679 {
1680 checkCompatibility();
1681 }
1682
1684 explicit
1685 News(const SbeMessage& message)
1686 : SbeMessage(message)
1687 {
1688 assert(message.valid());
1689
1690 checkCompatibility();
1691 }
1692
1695 News(void* data, EncodedLength length, NoInit, NoCheck) noexcept
1696 : SbeMessage(data, length, NoCheck())
1697 {
1698 assert(schemaId() == Schema::Id);
1699 assert(version() >= Schema::MinimalVersion);
1700 assert(TemplateId == templateId());
1701 }
1702
1705 auto userId() const noexcept
1706 {
1707 constexpr BlockLength offset = 0;
1708 constexpr BlockLength length = 20;
1709
1710 return fixedStr<length>(offset);
1711 }
1712
1714 ThisType& userId(StrRef value) noexcept
1715 {
1716 constexpr BlockLength offset = 0;
1717 constexpr BlockLength length = 20;
1718
1719 setFixedStr<length>(offset, value);
1720 return *this;
1721 }
1722
1725 auto exchangeCode() const noexcept
1726 {
1727 constexpr BlockLength offset = 20;
1728
1729 return ordinary<NullInt32NULL>(offset, optional);
1730 }
1731
1734 {
1735 constexpr BlockLength offset = 20;
1736
1737 setOrdinary(offset, value);
1738 return *this;
1739 }
1740
1742 {
1743 constexpr BlockLength offset = 20;
1744
1745 setOrdinary(offset, NullInt32NULL());
1746 return *this;
1747 }
1748
1750 StrRef text() const noexcept
1751 {
1752 return getVariableLengthField(textAccess(), *this);
1753 }
1754
1756 {
1758 textAccess(),
1759 value,
1760 *this);
1761
1762 return *this;
1763 }
1764
1766 constexpr
1768 {
1769 return
1770 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
1771 24;
1772 }
1773
1775 constexpr
1777 {
1778 return
1779 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
1781 }
1782
1785 constexpr
1787 {
1788 return
1789 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
1790 static_cast<MessageSize>(VarString16::Size);
1791 }
1792
1795 constexpr
1797 {
1798 return
1800 }
1801
1804 {
1805 text(nullOpt);
1806 return *this;
1807 }
1808
1810 ThisType& reset() noexcept
1811 {
1813
1815 return *this;
1816 }
1817
1820 constexpr
1821 static StrRef className() noexcept
1822 {
1823 return constructStrRef("News");
1824 }
1825
1828 constexpr
1829 static StrRef fixType() noexcept
1830 {
1831 return constructStrRef("News");
1832 }
1833
1836 std::string toString() const;
1837
1840 const void* tail() const noexcept
1841 {
1842 return
1844 (text().end()));
1845 }
1846
1850 {
1851 return
1853 }
1854
1855private:
1856 void checkLength(
1857 EncodedLength length, SchemaVersion version) const
1858 {
1859 const EncodedLength minimalRequiredLength =
1860 minimalBlockLength(version) +
1862 getMinimalVariableFieldsSize(version);
1863
1865 *this, length, minimalRequiredLength);
1866 }
1867
1869 void checkVarLenFields() const
1870 {
1871 variableLengthFields().
1872 checkTail<VarString16>();
1873 }
1874
1875 void checkCompatibility() const
1876 {
1877 assert(TemplateId == templateId());
1878
1879 checkSchema<Schema>(schemaId(), version());
1880 checkLength(bufferSize(), version());
1881 checkVarLenFields();
1882 }
1883
1885 struct textAccess
1886 {
1887 VarString16& operator()(const News& obj) const noexcept
1888 {
1889 return obj.
1890 variableLengthFields().
1891 head<VarString16>();
1892 }
1893 };
1894
1897 ThisType& text(NullOpt) noexcept
1898 {
1899 setVariableLengthFieldToNull(textAccess(), *this);
1900
1901 return *this;
1902 }
1903};
1904
1906struct
1908: SbeMessage
1909{
1912
1915
1917 enum { TemplateId = 112 };
1918
1921 struct
1923 <
1925 >
1926 {
1928 typedef
1930 <
1932 >
1934
1937
1941 : Base(data, numericCast<Base::BlockLength>(length), version)
1942 {
1944 assert(length >= minimalBlockLength(version));
1945 }
1946
1949 {
1950 return *this;
1951 }
1952
1954 ThisType& reset() noexcept
1955 {
1957
1959 return *this;
1960 }
1961
1964 auto blockDetailsBlockType() const noexcept
1965 {
1966 constexpr BlockLength offset = 0;
1967
1968 return enumeration<BlockTypeEnum>(offset);
1969 }
1970
1973 {
1974 constexpr BlockLength offset = 0;
1975
1976 setEnumeration<BlockTypeEnum>(offset, value);
1977 return *this;
1978 }
1979
1982 auto blockDetailsTradeType() const noexcept
1983 {
1984 constexpr BlockLength offset = 1;
1985 constexpr BlockLength length = 3;
1986
1987 return fixedStr<length>(offset, optional);
1988 }
1989
1992 {
1993 constexpr BlockLength offset = 1;
1994 constexpr BlockLength length = 3;
1995
1996 setFixedStr<length>(offset, value);
1997 return *this;
1998 }
1999
2001 {
2002 constexpr BlockLength offset = 1;
2003 constexpr BlockLength length = 3;
2004
2005 setFixedStr<length>(offset, StrRef());
2006 return *this;
2007 }
2008
2011 auto blockDetailsMinQty() const noexcept
2012 {
2013 constexpr BlockLength offset = 4;
2014
2015 return ordinary<Decimal9>(offset);
2016 }
2017
2020 {
2021 constexpr BlockLength offset = 4;
2022
2023 setOrdinary(offset, value);
2024 return *this;
2025 }
2026
2029 constexpr
2031 {
2032 return
2033 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
2035 }
2036
2039 constexpr
2041 {
2042 return
2043 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
2044 12;
2045 }
2046
2049 constexpr
2050 static StrRef className() noexcept
2051 {
2052 return constructStrRef("SecurityDefinitionReport_Strategy.BlockDetailsEntry");
2053 }
2054 };
2055
2057 typedef
2060
2063 struct
2065 <
2067 >
2068 {
2070 typedef
2072 <
2074 >
2076
2079
2083 : Base(data, numericCast<Base::BlockLength>(length), version)
2084 {
2086 assert(length >= minimalBlockLength(version));
2087 }
2088
2091 {
2092 return *this;
2093 }
2094
2096 ThisType& reset() noexcept
2097 {
2100
2102 return *this;
2103 }
2104
2108 auto securityAltId() const noexcept
2109 {
2110 constexpr BlockLength offset = 0;
2111 constexpr BlockLength length = 30;
2112
2113 return fixedStr<length>(offset, optional);
2114 }
2115
2119 {
2120 constexpr BlockLength offset = 0;
2121 constexpr BlockLength length = 30;
2122
2123 setFixedStr<length>(offset, value);
2124 return *this;
2125 }
2126
2128 {
2129 constexpr BlockLength offset = 0;
2130 constexpr BlockLength length = 30;
2131
2132 setFixedStr<length>(offset, StrRef());
2133 return *this;
2134 }
2135
2138 auto securityAltIdSource() const noexcept
2139 {
2140 constexpr BlockLength offset = 30;
2141 constexpr BlockLength length = 3;
2142
2143 return fixedStr<length>(offset, optional);
2144 }
2145
2148 {
2149 constexpr BlockLength offset = 30;
2150 constexpr BlockLength length = 3;
2151
2152 setFixedStr<length>(offset, value);
2153 return *this;
2154 }
2155
2157 {
2158 constexpr BlockLength offset = 30;
2159 constexpr BlockLength length = 3;
2160
2161 setFixedStr<length>(offset, StrRef());
2162 return *this;
2163 }
2164
2167 constexpr
2169 {
2170 return
2171 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
2173 }
2174
2177 constexpr
2179 {
2180 return
2181 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
2182 33;
2183 }
2184
2187 constexpr
2188 static StrRef className() noexcept
2189 {
2190 return constructStrRef("SecurityDefinitionReport_Strategy.SecurityAltIDEntry");
2191 }
2192 };
2193
2195 typedef
2198
2201 struct
2203 <
2205 >
2206 {
2208 typedef
2210 <
2212 >
2214
2217
2221 : Base(data, numericCast<Base::BlockLength>(length), version)
2222 {
2224 assert(length >= minimalBlockLength(version));
2225 }
2226
2229 {
2230 return *this;
2231 }
2232
2234 ThisType& reset() noexcept
2235 {
2239
2241 return *this;
2242 }
2243
2246 auto legSymbol() const noexcept
2247 {
2248 constexpr BlockLength offset = 0;
2249
2250 return ordinary<Int32>(offset);
2251 }
2252
2254 ThisType& legSymbol(Int32 value) noexcept
2255 {
2256 constexpr BlockLength offset = 0;
2257
2258 setOrdinary(offset, value);
2259 return *this;
2260 }
2261
2264 auto legSecurityType() const noexcept
2265 {
2266 constexpr BlockLength offset = 4;
2267
2268 return enumeration<SecurityTypeEnum>(offset);
2269 }
2270
2273 {
2274 constexpr BlockLength offset = 4;
2275
2276 setEnumeration<SecurityTypeEnum>(offset, value);
2277 return *this;
2278 }
2279
2282 auto legSecuritySubType() const noexcept
2283 {
2284 constexpr BlockLength offset = 5;
2285
2286 return ordinary<NullInt16NULL>(offset, optional);
2287 }
2288
2291 {
2292 constexpr BlockLength offset = 5;
2293
2294 setOrdinary(offset, value);
2295 return *this;
2296 }
2297
2299 {
2300 constexpr BlockLength offset = 5;
2301
2302 setOrdinary(offset, NullInt16NULL());
2303 return *this;
2304 }
2305
2308 auto legSide() const noexcept
2309 {
2310 constexpr BlockLength offset = 7;
2311
2312 return enumeration<SideEnum>(offset);
2313 }
2314
2316 ThisType& legSide(SideEnum value) noexcept
2317 {
2318 constexpr BlockLength offset = 7;
2319
2320 setEnumeration<SideEnum>(offset, value);
2321 return *this;
2322 }
2323
2326 auto legPrice() const noexcept
2327 {
2328 constexpr BlockLength offset = 8;
2329
2330 return ordinary<NullDecimal9>(offset, optional);
2331 }
2332
2334 ThisType& legPrice(Decimal9 value) noexcept
2335 {
2336 constexpr BlockLength offset = 8;
2337
2338 setOrdinary(offset, value);
2339 return *this;
2340 }
2341
2343 {
2344 constexpr BlockLength offset = 8;
2345
2346 setOrdinary(offset, NullDecimal9());
2347 return *this;
2348 }
2349
2352 auto legOptionDelta() const noexcept
2353 {
2354 constexpr BlockLength offset = 16;
2355
2356 return ordinary<NullInt32NULL>(offset, optional);
2357 }
2358
2361 {
2362 constexpr BlockLength offset = 16;
2363
2364 setOrdinary(offset, value);
2365 return *this;
2366 }
2367
2369 {
2370 constexpr BlockLength offset = 16;
2371
2372 setOrdinary(offset, NullInt32NULL());
2373 return *this;
2374 }
2375
2378 auto legRatioQtyDenominator() const noexcept
2379 {
2380 constexpr BlockLength offset = 20;
2381
2382 return ordinary<Int16>(offset);
2383 }
2384
2387 {
2388 constexpr BlockLength offset = 20;
2389
2390 setOrdinary(offset, value);
2391 return *this;
2392 }
2393
2396 auto legRatioQtyNumerator() const noexcept
2397 {
2398 constexpr BlockLength offset = 22;
2399
2400 return ordinary<Int16>(offset);
2401 }
2402
2405 {
2406 constexpr BlockLength offset = 22;
2407
2408 setOrdinary(offset, value);
2409 return *this;
2410 }
2411
2414 auto legRatioPriceDenominator() const noexcept
2415 {
2416 constexpr BlockLength offset = 24;
2417
2418 return ordinary<Int16>(offset);
2419 }
2420
2423 {
2424 constexpr BlockLength offset = 24;
2425
2426 setOrdinary(offset, value);
2427 return *this;
2428 }
2429
2432 auto legRatioPriceNumerator() const noexcept
2433 {
2434 constexpr BlockLength offset = 26;
2435
2436 return ordinary<Int16>(offset);
2437 }
2438
2441 {
2442 constexpr BlockLength offset = 26;
2443
2444 setOrdinary(offset, value);
2445 return *this;
2446 }
2447
2450 constexpr
2452 {
2453 return
2454 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
2456 }
2457
2460 constexpr
2462 {
2463 return
2464 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
2465 28;
2466 }
2467
2470 constexpr
2471 static StrRef className() noexcept
2472 {
2473 return constructStrRef("SecurityDefinitionReport_Strategy.LegsEntry");
2474 }
2475 };
2476
2478 typedef
2481
2484
2494
2506
2509 : SbeMessage(data, length)
2510 {
2511 checkCompatibility();
2512 }
2513
2515 explicit
2517 : SbeMessage(message)
2518 {
2519 assert(message.valid());
2520
2521 checkCompatibility();
2522 }
2523
2527 : SbeMessage(data, length, NoCheck())
2528 {
2529 assert(schemaId() == Schema::Id);
2530 assert(version() >= Schema::MinimalVersion);
2531 assert(TemplateId == templateId());
2532 }
2533
2536 auto securityReqId() const noexcept
2537 {
2538 constexpr BlockLength offset = 0;
2539
2540 return ordinary<Int32>(offset);
2541 }
2542
2545 {
2546 constexpr BlockLength offset = 0;
2547
2548 setOrdinary(offset, value);
2549 return *this;
2550 }
2551
2554 auto securityResponseType() const noexcept
2555 {
2556 constexpr BlockLength offset = 4;
2557
2559 }
2560
2563 {
2564 constexpr BlockLength offset = 4;
2565
2567 return *this;
2568 }
2569
2572 auto securityResponseId() const noexcept
2573 {
2574 constexpr BlockLength offset = 5;
2575
2576 return ordinary<Int32>(offset);
2577 }
2578
2581 {
2582 constexpr BlockLength offset = 5;
2583
2584 setOrdinary(offset, value);
2585 return *this;
2586 }
2587
2590 auto marketTypeId() const noexcept
2591 {
2592 constexpr BlockLength offset = 9;
2593
2594 return ordinary<Int32>(offset);
2595 }
2596
2598 ThisType& marketTypeId(Int32 value) noexcept
2599 {
2600 constexpr BlockLength offset = 9;
2601
2602 setOrdinary(offset, value);
2603 return *this;
2604 }
2605
2608 auto rpts() const noexcept
2609 {
2610 constexpr BlockLength offset = 13;
2611
2612 return ordinary<Int32>(offset);
2613 }
2614
2616 ThisType& rpts(Int32 value) noexcept
2617 {
2618 constexpr BlockLength offset = 13;
2619
2620 setOrdinary(offset, value);
2621 return *this;
2622 }
2623
2626 auto listSeqNo() const noexcept
2627 {
2628 constexpr BlockLength offset = 17;
2629
2630 return ordinary<Int32>(offset);
2631 }
2632
2634 ThisType& listSeqNo(Int32 value) noexcept
2635 {
2636 constexpr BlockLength offset = 17;
2637
2638 setOrdinary(offset, value);
2639 return *this;
2640 }
2641
2644 auto symbol() const noexcept
2645 {
2646 constexpr BlockLength offset = 21;
2647
2648 return ordinary<Int32>(offset);
2649 }
2650
2652 ThisType& symbol(Int32 value) noexcept
2653 {
2654 constexpr BlockLength offset = 21;
2655
2656 setOrdinary(offset, value);
2657 return *this;
2658 }
2659
2662 auto underlyingStrategySymbol() const noexcept
2663 {
2664 constexpr BlockLength offset = 25;
2665
2666 return ordinary<Int32>(offset);
2667 }
2668
2671 {
2672 constexpr BlockLength offset = 25;
2673
2674 setOrdinary(offset, value);
2675 return *this;
2676 }
2677
2680 auto maturityDate() const noexcept(dateToTimestamp::Nothrow)
2681 {
2682 constexpr BlockLength offset = 29;
2684 }
2685
2687 ThisType& maturityDate(Timestamp value) noexcept(timestampToDate::Nothrow)
2688 {
2689 constexpr BlockLength offset = 29;
2690
2691 setOrdinary(offset, convert<timestampToDate>(value));
2692 return *this;
2693 }
2694
2696 {
2697 constexpr BlockLength offset = 29;
2698
2699 setOrdinary(offset, NullUTCDateOnly());
2700 return *this;
2701 }
2702
2705 auto securityTradingStatus() const noexcept
2706 {
2707 constexpr BlockLength offset = 31;
2708
2710 }
2711
2714 {
2715 constexpr BlockLength offset = 31;
2716
2718 return *this;
2719 }
2720
2723 auto securitySubType() const noexcept
2724 {
2725 constexpr BlockLength offset = 32;
2726
2727 return ordinary<Int16>(offset);
2728 }
2729
2732 {
2733 constexpr BlockLength offset = 32;
2734
2735 setOrdinary(offset, value);
2736 return *this;
2737 }
2738
2741 auto exchangeSilo() const noexcept
2742 {
2743 constexpr BlockLength offset = 34;
2744
2745 return enumeration<ExchangeSiloEnum>(offset);
2746 }
2747
2750 {
2751 constexpr BlockLength offset = 34;
2752
2753 setEnumeration<ExchangeSiloEnum>(offset, value);
2754 return *this;
2755 }
2756
2759 auto transactTime() const noexcept(ticksToTimestamp::Nothrow)
2760 {
2761 constexpr BlockLength offset = 35;
2762 return convertible<ticksToTimestamp>(offset);
2763 }
2764
2766 ThisType& transactTime(Timestamp value) noexcept(timestampToTicks::Nothrow)
2767 {
2768 constexpr BlockLength offset = 35;
2769
2770 setOrdinary(offset, convert<timestampToTicks>(value));
2771 return *this;
2772 }
2773
2776 auto legDealsSuppressed() const noexcept
2777 {
2778 constexpr BlockLength offset = 43;
2779
2780 return enumeration<BooleanEnum>(offset);
2781 }
2782
2785 {
2786 constexpr BlockLength offset = 43;
2787
2788 setEnumeration<BooleanEnum>(offset, value);
2789 return *this;
2790 }
2791
2794 auto incrementPrice() const noexcept
2795 {
2796 constexpr BlockLength offset = 44;
2797
2798 return ordinary<Decimal9>(offset);
2799 }
2800
2803 {
2804 constexpr BlockLength offset = 44;
2805
2806 setOrdinary(offset, value);
2807 return *this;
2808 }
2809
2812 auto incrementQty() const noexcept
2813 {
2814 constexpr BlockLength offset = 52;
2815
2816 return ordinary<Decimal9>(offset);
2817 }
2818
2821 {
2822 constexpr BlockLength offset = 52;
2823
2824 setOrdinary(offset, value);
2825 return *this;
2826 }
2827
2830 auto minPrice() const noexcept
2831 {
2832 constexpr BlockLength offset = 60;
2833
2834 return ordinary<Decimal9>(offset);
2835 }
2836
2838 ThisType& minPrice(Decimal9 value) noexcept
2839 {
2840 constexpr BlockLength offset = 60;
2841
2842 setOrdinary(offset, value);
2843 return *this;
2844 }
2845
2848 auto maxPrice() const noexcept
2849 {
2850 constexpr BlockLength offset = 68;
2851
2852 return ordinary<Decimal9>(offset);
2853 }
2854
2856 ThisType& maxPrice(Decimal9 value) noexcept
2857 {
2858 constexpr BlockLength offset = 68;
2859
2860 setOrdinary(offset, value);
2861 return *this;
2862 }
2863
2866 auto numOfDecimalPrice() const noexcept
2867 {
2868 constexpr BlockLength offset = 76;
2869
2870 return ordinary<Int8>(offset);
2871 }
2872
2875 {
2876 constexpr BlockLength offset = 76;
2877
2878 setOrdinary(offset, value);
2879 return *this;
2880 }
2881
2884 auto numOfDecimalQty() const noexcept
2885 {
2886 constexpr BlockLength offset = 77;
2887
2888 return ordinary<Int8>(offset);
2889 }
2890
2893 {
2894 constexpr BlockLength offset = 77;
2895
2896 setOrdinary(offset, value);
2897 return *this;
2898 }
2899
2902 auto productId() const noexcept
2903 {
2904 constexpr BlockLength offset = 78;
2905
2906 return ordinary<Int32>(offset);
2907 }
2908
2910 ThisType& productId(Int32 value) noexcept
2911 {
2912 constexpr BlockLength offset = 78;
2913
2914 setOrdinary(offset, value);
2915 return *this;
2916 }
2917
2920 auto baseNumLots() const noexcept
2921 {
2922 constexpr BlockLength offset = 82;
2923
2924 return ordinary<NullInt32NULL>(offset, optional);
2925 }
2926
2929 {
2930 constexpr BlockLength offset = 82;
2931
2932 setOrdinary(offset, value);
2933 return *this;
2934 }
2935
2937 {
2938 constexpr BlockLength offset = 82;
2939
2940 setOrdinary(offset, NullInt32NULL());
2941 return *this;
2942 }
2943
2946 auto denominator() const noexcept
2947 {
2948 constexpr BlockLength offset = 86;
2949
2950 return ordinary<Int32>(offset);
2951 }
2952
2954 ThisType& denominator(Int32 value) noexcept
2955 {
2956 constexpr BlockLength offset = 86;
2957
2958 setOrdinary(offset, value);
2959 return *this;
2960 }
2961
2964 auto impliedType() const noexcept
2965 {
2966 constexpr BlockLength offset = 90;
2967
2968 return ordinary<NullCharType>(offset, optional);
2969 }
2970
2973 {
2974 constexpr BlockLength offset = 90;
2975
2976 setOrdinary(offset, value);
2977 return *this;
2978 }
2979
2981 {
2982 constexpr BlockLength offset = 90;
2983
2984 setOrdinary(offset, NullCharType());
2985 return *this;
2986 }
2987
2990 auto offExchangeIncrementPrice() const noexcept
2991 {
2992 constexpr BlockLength offset = 91;
2993
2994 return ordinary<NullDecimal9>(offset, optional);
2995 }
2996
2999 {
3000 constexpr BlockLength offset = 91;
3001
3002 setOrdinary(offset, value);
3003 return *this;
3004 }
3005
3007 {
3008 constexpr BlockLength offset = 91;
3009
3010 setOrdinary(offset, NullDecimal9());
3011 return *this;
3012 }
3013
3016 auto offExchangeIncrementQty() const noexcept
3017 {
3018 constexpr BlockLength offset = 99;
3019
3020 return ordinary<NullDecimal9>(offset, optional);
3021 }
3022
3025 {
3026 constexpr BlockLength offset = 99;
3027
3028 setOrdinary(offset, value);
3029 return *this;
3030 }
3031
3033 {
3034 constexpr BlockLength offset = 99;
3035
3036 setOrdinary(offset, NullDecimal9());
3037 return *this;
3038 }
3039
3042 auto numOfDecimalStrikePrice() const noexcept
3043 {
3044 constexpr BlockLength offset = 107;
3045
3046 return ordinary<NullInt8NULL>(offset, optional);
3047 }
3048
3051 {
3052 constexpr BlockLength offset = 107;
3053
3054 setOrdinary(offset, value);
3055 return *this;
3056 }
3057
3059 {
3060 constexpr BlockLength offset = 107;
3061
3062 setOrdinary(offset, NullInt8NULL());
3063 return *this;
3064 }
3065
3068 auto numOfCycles() const noexcept
3069 {
3070 constexpr BlockLength offset = 108;
3071
3072 return ordinary<NullInt16NULL>(offset, optional);
3073 }
3074
3077 {
3078 constexpr BlockLength offset = 108;
3079
3080 setOrdinary(offset, value);
3081 return *this;
3082 }
3083
3085 {
3086 constexpr BlockLength offset = 108;
3087
3088 setOrdinary(offset, NullInt16NULL());
3089 return *this;
3090 }
3091
3094 auto lotSizeMultiplier() const noexcept
3095 {
3096 constexpr BlockLength offset = 110;
3097
3098 return ordinary<NullDecimal9>(offset, optional);
3099 }
3100
3103 {
3104 constexpr BlockLength offset = 110;
3105
3106 setOrdinary(offset, value);
3107 return *this;
3108 }
3109
3111 {
3112 constexpr BlockLength offset = 110;
3113
3114 setOrdinary(offset, NullDecimal9());
3115 return *this;
3116 }
3117
3120 auto blockOnly() const noexcept
3121 {
3122 constexpr BlockLength offset = 118;
3123
3125 }
3126
3129 {
3130 constexpr BlockLength offset = 118;
3131
3132 setEnumeration<BooleanEnum>(offset, value);
3133 return *this;
3134 }
3135
3137 {
3138 constexpr BlockLength offset = 118;
3139
3140 setOrdinary(offset, NullUint8NULL());
3141 return *this;
3142 }
3143
3146 auto flexAllowed() const noexcept
3147 {
3148 constexpr BlockLength offset = 119;
3149
3151 }
3152
3155 {
3156 constexpr BlockLength offset = 119;
3157
3158 setEnumeration<BooleanEnum>(offset, value);
3159 return *this;
3160 }
3161
3163 {
3164 constexpr BlockLength offset = 119;
3165
3166 setOrdinary(offset, NullUint8NULL());
3167 return *this;
3168 }
3169
3172 auto gtAllowed() const noexcept
3173 {
3174 constexpr BlockLength offset = 120;
3175
3177 }
3178
3181 {
3182 constexpr BlockLength offset = 120;
3183
3184 setEnumeration<BooleanEnum>(offset, value);
3185 return *this;
3186 }
3187
3189 {
3190 constexpr BlockLength offset = 120;
3191
3192 setOrdinary(offset, NullUint8NULL());
3193 return *this;
3194 }
3195
3198 auto mifidRegulatedMarket() const noexcept
3199 {
3200 constexpr BlockLength offset = 121;
3201
3202 return enumeration<BooleanEnum>(offset);
3203 }
3204
3207 {
3208 constexpr BlockLength offset = 121;
3209
3210 setEnumeration<BooleanEnum>(offset, value);
3211 return *this;
3212 }
3213
3216 auto stripType() const noexcept
3217 {
3218 constexpr BlockLength offset = 122;
3219
3220 return ordinary<Int16>(offset);
3221 }
3222
3224 ThisType& stripType(Int16 value) noexcept
3225 {
3226 constexpr BlockLength offset = 122;
3227
3228 setOrdinary(offset, value);
3229 return *this;
3230 }
3231
3234 auto hubId() const noexcept
3235 {
3236 constexpr BlockLength offset = 124;
3237
3238 return ordinary<Int32>(offset);
3239 }
3240
3242 ThisType& hubId(Int32 value) noexcept
3243 {
3244 constexpr BlockLength offset = 124;
3245
3246 setOrdinary(offset, value);
3247 return *this;
3248 }
3249
3252 auto overrideBlockMin() const noexcept
3253 {
3254 constexpr BlockLength offset = 128;
3255
3257 }
3258
3261 {
3262 constexpr BlockLength offset = 128;
3263
3264 setEnumeration<BooleanEnum>(offset, value);
3265 return *this;
3266 }
3267
3269 {
3270 constexpr BlockLength offset = 128;
3271
3272 setOrdinary(offset, NullUint8NULL());
3273 return *this;
3274 }
3275
3278 auto testMarketIndicator() const noexcept
3279 {
3280 constexpr BlockLength offset = 129;
3281
3282 return enumeration<BooleanEnum>(offset);
3283 }
3284
3287 {
3288 constexpr BlockLength offset = 129;
3289
3290 setEnumeration<BooleanEnum>(offset, value);
3291 return *this;
3292 }
3293
3296 auto screenTickValue() const noexcept
3297 {
3298 constexpr BlockLength offset = 130;
3299
3300 return ordinary<Decimal9>(offset);
3301 }
3302
3305 {
3306 constexpr BlockLength offset = 130;
3307
3308 setOrdinary(offset, value);
3309 return *this;
3310 }
3311
3314 auto blockTickValue() const noexcept
3315 {
3316 constexpr BlockLength offset = 138;
3317
3318 return ordinary<Decimal9>(offset);
3319 }
3320
3323 {
3324 constexpr BlockLength offset = 138;
3325
3326 setOrdinary(offset, value);
3327 return *this;
3328 }
3329
3333 {
3335 BlockDetailsAccess(),
3336 *this);
3337 }
3338
3342 {
3344 BlockDetailsAccess(),
3345 *this);
3346 }
3347
3352 {
3354 BlockDetailsAccess(),
3355 length,
3356 *this);
3357 }
3358
3362 {
3364 BlockDetailsAccess(),
3365 length,
3366 *this);
3367 }
3368
3372 {
3374 SecurityAltIDAccess(),
3375 *this);
3376 }
3377
3381 {
3383 SecurityAltIDAccess(),
3384 *this);
3385 }
3386
3391 {
3393 SecurityAltIDAccess(),
3394 length,
3395 *this);
3396 }
3397
3401 {
3403 SecurityAltIDAccess(),
3404 length,
3405 *this);
3406 }
3407
3410 Legs legs() const noexcept
3411 {
3412 return getGroup<Legs>(LegsAccess(), *this);
3413 }
3414
3417 Legs legs() noexcept
3418 {
3419 return getGroup<Legs>(LegsAccess(), *this);
3420 }
3421
3426 {
3427 return constructGroup<Legs>(
3428 LegsAccess(),
3429 length,
3430 *this);
3431 }
3432
3436 {
3437 return setupGroup<Legs>(
3438 LegsAccess(),
3439 length,
3440 *this);
3441 }
3442
3445 StrRef securityId() const noexcept
3446 {
3448 securityIDAccess(),
3449 *this);
3450 }
3451
3453 StrRef unitOfMeasure() const noexcept
3454 {
3456 unitOfMeasureAccess(),
3457 *this);
3458 }
3459
3461 StrRef priceDenomination() const noexcept
3462 {
3464 priceDenominationAccess(),
3465 *this);
3466 }
3467
3469 StrRef clearedAlias() const noexcept
3470 {
3472 clearedAliasAccess(),
3473 *this);
3474 }
3475
3477 StrRef securityDesc() const noexcept
3478 {
3480 securityDescAccess(),
3481 *this);
3482 }
3483
3485 StrRef priceUnit() const noexcept
3486 {
3487 return getVariableLengthField(priceUnitAccess(), *this);
3488 }
3489
3491 StrRef stripName() const noexcept
3492 {
3493 return getVariableLengthField(stripNameAccess(), *this);
3494 }
3495
3497 StrRef hubName() const noexcept
3498 {
3499 return getVariableLengthField(hubNameAccess(), *this);
3500 }
3501
3503 StrRef hubAlias() const noexcept
3504 {
3505 return getVariableLengthField(hubAliasAccess(), *this);
3506 }
3507
3509 StrRef securityExchange() const noexcept
3510 {
3512 securityExchangeAccess(),
3513 *this);
3514 }
3515
3518 {
3520 strategySecurityIDAccess(),
3521 *this);
3522 }
3523
3525 StrRef physicalCode() const noexcept
3526 {
3528 physicalCodeAccess(),
3529 *this);
3530 }
3531
3534 {
3536 securityIDAccess(),
3537 value,
3538 *this);
3539
3540 return *this;
3541 }
3542
3544 {
3546 unitOfMeasureAccess(),
3547 value,
3548 *this);
3549
3550 return *this;
3551 }
3552
3554 {
3556 priceDenominationAccess(),
3557 value,
3558 *this);
3559
3560 return *this;
3561 }
3562
3564 {
3566 clearedAliasAccess(),
3567 value,
3568 *this);
3569
3570 return *this;
3571 }
3572
3574 {
3576 securityDescAccess(),
3577 value,
3578 *this);
3579
3580 return *this;
3581 }
3582
3584 {
3586 priceUnitAccess(),
3587 value,
3588 *this);
3589
3590 return *this;
3591 }
3592
3594 {
3596 stripNameAccess(),
3597 value,
3598 *this);
3599
3600 return *this;
3601 }
3602
3604 {
3606 hubNameAccess(),
3607 value,
3608 *this);
3609
3610 return *this;
3611 }
3612
3614 {
3616 hubAliasAccess(),
3617 value,
3618 *this);
3619
3620 return *this;
3621 }
3622
3624 {
3626 securityExchangeAccess(),
3627 value,
3628 *this);
3629
3630 return *this;
3631 }
3632
3634 {
3636 strategySecurityIDAccess(),
3637 value,
3638 *this);
3639
3640 return *this;
3641 }
3642
3644 {
3646 physicalCodeAccess(),
3647 value,
3648 *this);
3649
3650 return *this;
3651 }
3652
3654 constexpr
3656 {
3657 return
3658 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
3659 146;
3660 }
3661
3663 constexpr
3665 {
3666 return
3667 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
3669 }
3670
3673 constexpr
3680
3683 constexpr
3685 {
3686 return
3688 }
3689
3710
3730
3733 constexpr
3734 static StrRef className() noexcept
3735 {
3736 return constructStrRef("SecurityDefinitionReport_Strategy");
3737 }
3738
3741 constexpr
3742 static StrRef fixType() noexcept
3743 {
3744 return constructStrRef("UDS");
3745 }
3746
3749 std::string toString() const;
3750
3753 const void* tail() const noexcept
3754 {
3755 return
3757 (physicalCode().end()));
3758 }
3759
3763 {
3764 return
3766 }
3767
3768private:
3769 void checkLength(
3770 EncodedLength length, SchemaVersion version) const
3771 {
3772 const EncodedLength minimalRequiredLength =
3773 minimalBlockLength(version) +
3775 getMinimalVariableFieldsSize(version);
3776
3778 *this, length, minimalRequiredLength);
3779 }
3780
3782 void checkVarLenFields() const
3783 {
3784 groups().
3785 tail<BlockDetails>().
3786 tail<SecurityAltID>().
3787 checkVariableLengthFields<Legs>().
3788 checkTail<VarString16>().
3789 checkTail<VarString16>().
3790 checkTail<VarString16>().
3791 checkTail<VarString16>().
3792 checkTail<VarString16>().
3793 checkTail<VarString16>().
3794 checkTail<VarString16>().
3795 checkTail<VarString16>().
3796 checkTail<VarString16>().
3797 checkTail<VarString16>().
3798 checkTail<VarString16>().
3799 checkTail<VarString16>();
3800 }
3801
3802 void checkCompatibility() const
3803 {
3804 assert(TemplateId == templateId());
3805
3806 checkSchema<Schema>(schemaId(), version());
3807 checkLength(bufferSize(), version());
3808 checkVarLenFields();
3809 }
3810
3812 struct BlockDetailsAccess
3813 {
3814 BlockDetails operator()(const SecurityDefinitionReport_Strategy& obj) const noexcept
3815 {
3816 return obj.
3817 groups().
3818 head<BlockDetails>();
3819 }
3820 };
3821
3824 void blockDetails(NullOpt) noexcept
3825 {
3826 resetGroup<BlockDetails>(
3827 BlockDetailsAccess(),
3828 *this);
3829 }
3830
3832 struct SecurityAltIDAccess
3833 {
3834 SecurityAltID operator()(const SecurityDefinitionReport_Strategy& obj) const noexcept
3835 {
3836 return obj.
3837 groups().
3838 tail<BlockDetails>().
3839 head<SecurityAltID>();
3840 }
3841 };
3842
3845 void securityAltId(NullOpt) noexcept
3846 {
3847 resetGroup<SecurityAltID>(
3848 SecurityAltIDAccess(),
3849 *this);
3850 }
3851
3853 struct LegsAccess
3854 {
3855 Legs operator()(const SecurityDefinitionReport_Strategy& obj) const noexcept
3856 {
3857 return obj.
3858 groups().
3859 tail<BlockDetails>().
3860 tail<SecurityAltID>().
3861 head<Legs>();
3862 }
3863 };
3864
3867 void legs(NullOpt) noexcept
3868 {
3869 resetGroup<Legs>(LegsAccess(), *this);
3870 }
3871
3873 struct securityIDAccess
3874 {
3875 VarString16& operator()(const SecurityDefinitionReport_Strategy& obj) const noexcept
3876 {
3877 return obj.
3878 groups().
3879 tail<BlockDetails>().
3880 tail<SecurityAltID>().
3881 variableLengthFields<Legs>().
3882 head<VarString16>();
3883 }
3884 };
3885
3887 struct unitOfMeasureAccess
3888 {
3889 VarString16& operator()(const SecurityDefinitionReport_Strategy& obj) const noexcept
3890 {
3891 return obj.
3892 groups().
3893 tail<BlockDetails>().
3894 tail<SecurityAltID>().
3895 variableLengthFields<Legs>().
3896 tail<VarString16>().
3897 head<VarString16>();
3898 }
3899 };
3900
3902 struct priceDenominationAccess
3903 {
3904 VarString16& operator()(const SecurityDefinitionReport_Strategy& obj) const noexcept
3905 {
3906 return obj.
3907 groups().
3908 tail<BlockDetails>().
3909 tail<SecurityAltID>().
3910 variableLengthFields<Legs>().
3911 tail<VarString16>().
3912 tail<VarString16>().
3913 head<VarString16>();
3914 }
3915 };
3916
3918 struct clearedAliasAccess
3919 {
3920 VarString16& operator()(const SecurityDefinitionReport_Strategy& obj) const noexcept
3921 {
3922 return obj.
3923 groups().
3924 tail<BlockDetails>().
3925 tail<SecurityAltID>().
3926 variableLengthFields<Legs>().
3927 tail<VarString16>().
3928 tail<VarString16>().
3929 tail<VarString16>().
3930 head<VarString16>();
3931 }
3932 };
3933
3935 struct securityDescAccess
3936 {
3937 VarString16& operator()(const SecurityDefinitionReport_Strategy& obj) const noexcept
3938 {
3939 return obj.
3940 groups().
3941 tail<BlockDetails>().
3942 tail<SecurityAltID>().
3943 variableLengthFields<Legs>().
3944 tail<VarString16>().
3945 tail<VarString16>().
3946 tail<VarString16>().
3947 tail<VarString16>().
3948 head<VarString16>();
3949 }
3950 };
3951
3953 struct priceUnitAccess
3954 {
3955 VarString16& operator()(const SecurityDefinitionReport_Strategy& obj) const noexcept
3956 {
3957 return obj.
3958 groups().
3959 tail<BlockDetails>().
3960 tail<SecurityAltID>().
3961 variableLengthFields<Legs>().
3962 tail<VarString16>().
3963 tail<VarString16>().
3964 tail<VarString16>().
3965 tail<VarString16>().
3966 tail<VarString16>().
3967 head<VarString16>();
3968 }
3969 };
3970
3972 struct stripNameAccess
3973 {
3974 VarString16& operator()(const SecurityDefinitionReport_Strategy& obj) const noexcept
3975 {
3976 return obj.
3977 groups().
3978 tail<BlockDetails>().
3979 tail<SecurityAltID>().
3980 variableLengthFields<Legs>().
3981 tail<VarString16>().
3982 tail<VarString16>().
3983 tail<VarString16>().
3984 tail<VarString16>().
3985 tail<VarString16>().
3986 tail<VarString16>().
3987 head<VarString16>();
3988 }
3989 };
3990
3992 struct hubNameAccess
3993 {
3994 VarString16& operator()(const SecurityDefinitionReport_Strategy& obj) const noexcept
3995 {
3996 return obj.
3997 groups().
3998 tail<BlockDetails>().
3999 tail<SecurityAltID>().
4000 variableLengthFields<Legs>().
4001 tail<VarString16>().
4002 tail<VarString16>().
4003 tail<VarString16>().
4004 tail<VarString16>().
4005 tail<VarString16>().
4006 tail<VarString16>().
4007 tail<VarString16>().
4008 head<VarString16>();
4009 }
4010 };
4011
4013 struct hubAliasAccess
4014 {
4015 VarString16& operator()(const SecurityDefinitionReport_Strategy& obj) const noexcept
4016 {
4017 return obj.
4018 groups().
4019 tail<BlockDetails>().
4020 tail<SecurityAltID>().
4021 variableLengthFields<Legs>().
4022 tail<VarString16>().
4023 tail<VarString16>().
4024 tail<VarString16>().
4025 tail<VarString16>().
4026 tail<VarString16>().
4027 tail<VarString16>().
4028 tail<VarString16>().
4029 tail<VarString16>().
4030 head<VarString16>();
4031 }
4032 };
4033
4035 struct securityExchangeAccess
4036 {
4037 VarString16& operator()(const SecurityDefinitionReport_Strategy& obj) const noexcept
4038 {
4039 return obj.
4040 groups().
4041 tail<BlockDetails>().
4042 tail<SecurityAltID>().
4043 variableLengthFields<Legs>().
4044 tail<VarString16>().
4045 tail<VarString16>().
4046 tail<VarString16>().
4047 tail<VarString16>().
4048 tail<VarString16>().
4049 tail<VarString16>().
4050 tail<VarString16>().
4051 tail<VarString16>().
4052 tail<VarString16>().
4053 head<VarString16>();
4054 }
4055 };
4056
4058 struct strategySecurityIDAccess
4059 {
4060 VarString16& operator()(const SecurityDefinitionReport_Strategy& obj) const noexcept
4061 {
4062 return obj.
4063 groups().
4064 tail<BlockDetails>().
4065 tail<SecurityAltID>().
4066 variableLengthFields<Legs>().
4067 tail<VarString16>().
4068 tail<VarString16>().
4069 tail<VarString16>().
4070 tail<VarString16>().
4071 tail<VarString16>().
4072 tail<VarString16>().
4073 tail<VarString16>().
4074 tail<VarString16>().
4075 tail<VarString16>().
4076 tail<VarString16>().
4077 head<VarString16>();
4078 }
4079 };
4080
4082 struct physicalCodeAccess
4083 {
4084 VarString16& operator()(const SecurityDefinitionReport_Strategy& obj) const noexcept
4085 {
4086 return obj.
4087 groups().
4088 tail<BlockDetails>().
4089 tail<SecurityAltID>().
4090 variableLengthFields<Legs>().
4091 tail<VarString16>().
4092 tail<VarString16>().
4093 tail<VarString16>().
4094 tail<VarString16>().
4095 tail<VarString16>().
4096 tail<VarString16>().
4097 tail<VarString16>().
4098 tail<VarString16>().
4099 tail<VarString16>().
4100 tail<VarString16>().
4101 tail<VarString16>().
4102 head<VarString16>();
4103 }
4104 };
4105
4108 ThisType& securityId(NullOpt) noexcept
4109 {
4110 setVariableLengthFieldToNull(
4111 securityIDAccess(),
4112 *this);
4113
4114 return *this;
4115 }
4116
4119 ThisType& unitOfMeasure(NullOpt) noexcept
4120 {
4121 setVariableLengthFieldToNull(
4122 unitOfMeasureAccess(),
4123 *this);
4124
4125 return *this;
4126 }
4127
4130 ThisType& priceDenomination(NullOpt) noexcept
4131 {
4132 setVariableLengthFieldToNull(
4133 priceDenominationAccess(),
4134 *this);
4135
4136 return *this;
4137 }
4138
4141 ThisType& clearedAlias(NullOpt) noexcept
4142 {
4143 setVariableLengthFieldToNull(
4144 clearedAliasAccess(),
4145 *this);
4146
4147 return *this;
4148 }
4149
4152 ThisType& securityDesc(NullOpt) noexcept
4153 {
4154 setVariableLengthFieldToNull(
4155 securityDescAccess(),
4156 *this);
4157
4158 return *this;
4159 }
4160
4163 ThisType& priceUnit(NullOpt) noexcept
4164 {
4165 setVariableLengthFieldToNull(priceUnitAccess(), *this);
4166
4167 return *this;
4168 }
4169
4172 ThisType& stripName(NullOpt) noexcept
4173 {
4174 setVariableLengthFieldToNull(stripNameAccess(), *this);
4175
4176 return *this;
4177 }
4178
4181 ThisType& hubName(NullOpt) noexcept
4182 {
4183 setVariableLengthFieldToNull(hubNameAccess(), *this);
4184
4185 return *this;
4186 }
4187
4190 ThisType& hubAlias(NullOpt) noexcept
4191 {
4192 setVariableLengthFieldToNull(hubAliasAccess(), *this);
4193
4194 return *this;
4195 }
4196
4199 ThisType& securityExchange(NullOpt) noexcept
4200 {
4201 setVariableLengthFieldToNull(
4202 securityExchangeAccess(),
4203 *this);
4204
4205 return *this;
4206 }
4207
4210 ThisType& strategySecurityId(NullOpt) noexcept
4211 {
4212 setVariableLengthFieldToNull(
4213 strategySecurityIDAccess(),
4214 *this);
4215
4216 return *this;
4217 }
4218
4221 ThisType& physicalCode(NullOpt) noexcept
4222 {
4223 setVariableLengthFieldToNull(
4224 physicalCodeAccess(),
4225 *this);
4226
4227 return *this;
4228 }
4229};
4230
4232struct
4234: SbeMessage
4235{
4238
4241
4243 enum { TemplateId = 115 };
4244
4247 struct
4249 <
4251 >
4252 {
4254 typedef
4256 <
4258 >
4260
4263
4267 : Base(data, numericCast<Base::BlockLength>(length), version)
4268 {
4270 assert(length >= minimalBlockLength(version));
4271 }
4272
4275 {
4276 return *this;
4277 }
4278
4280 ThisType& reset() noexcept
4281 {
4283
4285 return *this;
4286 }
4287
4290 auto blockDetailsBlockType() const noexcept
4291 {
4292 constexpr BlockLength offset = 0;
4293
4294 return enumeration<BlockTypeEnum>(offset);
4295 }
4296
4299 {
4300 constexpr BlockLength offset = 0;
4301
4302 setEnumeration<BlockTypeEnum>(offset, value);
4303 return *this;
4304 }
4305
4308 auto blockDetailsTradeType() const noexcept
4309 {
4310 constexpr BlockLength offset = 1;
4311 constexpr BlockLength length = 3;
4312
4313 return fixedStr<length>(offset, optional);
4314 }
4315
4318 {
4319 constexpr BlockLength offset = 1;
4320 constexpr BlockLength length = 3;
4321
4322 setFixedStr<length>(offset, value);
4323 return *this;
4324 }
4325
4327 {
4328 constexpr BlockLength offset = 1;
4329 constexpr BlockLength length = 3;
4330
4331 setFixedStr<length>(offset, StrRef());
4332 return *this;
4333 }
4334
4337 auto blockDetailsMinQty() const noexcept
4338 {
4339 constexpr BlockLength offset = 4;
4340
4341 return ordinary<Decimal9>(offset);
4342 }
4343
4346 {
4347 constexpr BlockLength offset = 4;
4348
4349 setOrdinary(offset, value);
4350 return *this;
4351 }
4352
4355 constexpr
4357 {
4358 return
4359 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
4361 }
4362
4365 constexpr
4367 {
4368 return
4369 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
4370 12;
4371 }
4372
4375 constexpr
4376 static StrRef className() noexcept
4377 {
4378 return constructStrRef("SecurityDefinitionReport.BlockDetailsEntry");
4379 }
4380 };
4381
4383 typedef
4386
4389 struct
4391 <
4393 >
4394 {
4396 typedef
4398 <
4400 >
4402
4405
4409 : Base(data, numericCast<Base::BlockLength>(length), version)
4410 {
4412 assert(length >= minimalBlockLength(version));
4413 }
4414
4417 {
4418 return *this;
4419 }
4420
4422 ThisType& reset() noexcept
4423 {
4426
4428 return *this;
4429 }
4430
4433 auto securityAltId() const noexcept
4434 {
4435 constexpr BlockLength offset = 0;
4436 constexpr BlockLength length = 30;
4437
4438 return fixedStr<length>(offset, optional);
4439 }
4440
4443 {
4444 constexpr BlockLength offset = 0;
4445 constexpr BlockLength length = 30;
4446
4447 setFixedStr<length>(offset, value);
4448 return *this;
4449 }
4450
4452 {
4453 constexpr BlockLength offset = 0;
4454 constexpr BlockLength length = 30;
4455
4456 setFixedStr<length>(offset, StrRef());
4457 return *this;
4458 }
4459
4462 auto securityAltIdSource() const noexcept
4463 {
4464 constexpr BlockLength offset = 30;
4465 constexpr BlockLength length = 3;
4466
4467 return fixedStr<length>(offset, optional);
4468 }
4469
4472 {
4473 constexpr BlockLength offset = 30;
4474 constexpr BlockLength length = 3;
4475
4476 setFixedStr<length>(offset, value);
4477 return *this;
4478 }
4479
4481 {
4482 constexpr BlockLength offset = 30;
4483 constexpr BlockLength length = 3;
4484
4485 setFixedStr<length>(offset, StrRef());
4486 return *this;
4487 }
4488
4491 constexpr
4493 {
4494 return
4495 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
4497 }
4498
4501 constexpr
4503 {
4504 return
4505 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
4506 33;
4507 }
4508
4511 constexpr
4512 static StrRef className() noexcept
4513 {
4514 return constructStrRef("SecurityDefinitionReport.SecurityAltIDEntry");
4515 }
4516 };
4517
4519 typedef
4522
4525
4535
4547
4550 : SbeMessage(data, length)
4551 {
4552 checkCompatibility();
4553 }
4554
4556 explicit
4558 : SbeMessage(message)
4559 {
4560 assert(message.valid());
4561
4562 checkCompatibility();
4563 }
4564
4568 : SbeMessage(data, length, NoCheck())
4569 {
4570 assert(schemaId() == Schema::Id);
4571 assert(version() >= Schema::MinimalVersion);
4572 assert(TemplateId == templateId());
4573 }
4574
4577 auto securityReqId() const noexcept
4578 {
4579 constexpr BlockLength offset = 0;
4580
4581 return ordinary<Int32>(offset);
4582 }
4583
4586 {
4587 constexpr BlockLength offset = 0;
4588
4589 setOrdinary(offset, value);
4590 return *this;
4591 }
4592
4595 auto securityResponseType() const noexcept
4596 {
4597 constexpr BlockLength offset = 4;
4598
4600 }
4601
4604 {
4605 constexpr BlockLength offset = 4;
4606
4608 return *this;
4609 }
4610
4613 auto securityResponseId() const noexcept
4614 {
4615 constexpr BlockLength offset = 5;
4616
4617 return ordinary<Int32>(offset);
4618 }
4619
4622 {
4623 constexpr BlockLength offset = 5;
4624
4625 setOrdinary(offset, value);
4626 return *this;
4627 }
4628
4631 auto marketTypeId() const noexcept
4632 {
4633 constexpr BlockLength offset = 9;
4634
4635 return ordinary<Int32>(offset);
4636 }
4637
4639 ThisType& marketTypeId(Int32 value) noexcept
4640 {
4641 constexpr BlockLength offset = 9;
4642
4643 setOrdinary(offset, value);
4644 return *this;
4645 }
4646
4649 auto symbol() const noexcept
4650 {
4651 constexpr BlockLength offset = 13;
4652
4653 return ordinary<Int32>(offset);
4654 }
4655
4657 ThisType& symbol(Int32 value) noexcept
4658 {
4659 constexpr BlockLength offset = 13;
4660
4661 setOrdinary(offset, value);
4662 return *this;
4663 }
4664
4667 auto exchangeSilo() const noexcept
4668 {
4669 constexpr BlockLength offset = 17;
4670
4671 return enumeration<ExchangeSiloEnum>(offset);
4672 }
4673
4676 {
4677 constexpr BlockLength offset = 17;
4678
4679 setEnumeration<ExchangeSiloEnum>(offset, value);
4680 return *this;
4681 }
4682
4685 auto rpts() const noexcept
4686 {
4687 constexpr BlockLength offset = 18;
4688
4689 return ordinary<Int32>(offset);
4690 }
4691
4693 ThisType& rpts(Int32 value) noexcept
4694 {
4695 constexpr BlockLength offset = 18;
4696
4697 setOrdinary(offset, value);
4698 return *this;
4699 }
4700
4703 auto listSeqNo() const noexcept
4704 {
4705 constexpr BlockLength offset = 22;
4706
4707 return ordinary<Int32>(offset);
4708 }
4709
4711 ThisType& listSeqNo(Int32 value) noexcept
4712 {
4713 constexpr BlockLength offset = 22;
4714
4715 setOrdinary(offset, value);
4716 return *this;
4717 }
4718
4721 auto underlyingSymbol() const noexcept
4722 {
4723 constexpr BlockLength offset = 26;
4724
4725 return ordinary<Int32>(offset);
4726 }
4727
4730 {
4731 constexpr BlockLength offset = 26;
4732
4733 setOrdinary(offset, value);
4734 return *this;
4735 }
4736
4739 auto cfiCode() const noexcept
4740 {
4741 constexpr BlockLength offset = 30;
4742 constexpr BlockLength length = 12;
4743
4744 return fixedStr<length>(offset);
4745 }
4746
4748 ThisType& cfiCode(StrRef value) noexcept
4749 {
4750 constexpr BlockLength offset = 30;
4751 constexpr BlockLength length = 12;
4752
4753 setFixedStr<length>(offset, value);
4754 return *this;
4755 }
4756
4759 auto securitySubType() const noexcept
4760 {
4761 constexpr BlockLength offset = 42;
4762
4763 return ordinary<NullInt16NULL>(offset, optional);
4764 }
4765
4768 {
4769 constexpr BlockLength offset = 42;
4770
4771 setOrdinary(offset, value);
4772 return *this;
4773 }
4774
4776 {
4777 constexpr BlockLength offset = 42;
4778
4779 setOrdinary(offset, NullInt16NULL());
4780 return *this;
4781 }
4782
4785 auto maturityDate() const noexcept(dateToTimestamp::Nothrow)
4786 {
4787 constexpr BlockLength offset = 44;
4789 }
4790
4792 ThisType& maturityDate(Timestamp value) noexcept(timestampToDate::Nothrow)
4793 {
4794 constexpr BlockLength offset = 44;
4795
4796 setOrdinary(offset, convert<timestampToDate>(value));
4797 return *this;
4798 }
4799
4801 {
4802 constexpr BlockLength offset = 44;
4803
4804 setOrdinary(offset, NullUTCDateOnly());
4805 return *this;
4806 }
4807
4810 auto screenLastTradeDate() const noexcept(dateToTimestamp::Nothrow)
4811 {
4812 constexpr BlockLength offset = 46;
4814 }
4815
4817 ThisType& screenLastTradeDate(Timestamp value) noexcept(timestampToDate::Nothrow)
4818 {
4819 constexpr BlockLength offset = 46;
4820
4821 setOrdinary(offset, convert<timestampToDate>(value));
4822 return *this;
4823 }
4824
4826 {
4827 constexpr BlockLength offset = 46;
4828
4829 setOrdinary(offset, NullUTCDateOnly());
4830 return *this;
4831 }
4832
4835 auto contractMultiplier() const noexcept
4836 {
4837 constexpr BlockLength offset = 48;
4838
4839 return ordinary<Int32>(offset);
4840 }
4841
4844 {
4845 constexpr BlockLength offset = 48;
4846
4847 setOrdinary(offset, value);
4848 return *this;
4849 }
4850
4853 auto startDate() const noexcept(dateToTimestamp::Nothrow)
4854 {
4855 constexpr BlockLength offset = 52;
4857 }
4858
4860 ThisType& startDate(Timestamp value) noexcept(timestampToDate::Nothrow)
4861 {
4862 constexpr BlockLength offset = 52;
4863
4864 setOrdinary(offset, convert<timestampToDate>(value));
4865 return *this;
4866 }
4867
4869 {
4870 constexpr BlockLength offset = 52;
4871
4872 setOrdinary(offset, NullUTCDateOnly());
4873 return *this;
4874 }
4875
4878 auto endDate() const noexcept(dateToTimestamp::Nothrow)
4879 {
4880 constexpr BlockLength offset = 54;
4882 }
4883
4885 ThisType& endDate(Timestamp value) noexcept(timestampToDate::Nothrow)
4886 {
4887 constexpr BlockLength offset = 54;
4888
4889 setOrdinary(offset, convert<timestampToDate>(value));
4890 return *this;
4891 }
4892
4894 {
4895 constexpr BlockLength offset = 54;
4896
4897 setOrdinary(offset, NullUTCDateOnly());
4898 return *this;
4899 }
4900
4903 auto putOrCall() const noexcept
4904 {
4905 constexpr BlockLength offset = 56;
4906
4908 }
4909
4912 {
4913 constexpr BlockLength offset = 56;
4914
4915 setEnumeration<BooleanEnum>(offset, value);
4916 return *this;
4917 }
4918
4920 {
4921 constexpr BlockLength offset = 56;
4922
4923 setOrdinary(offset, NullUint8NULL());
4924 return *this;
4925 }
4926
4929 auto strikePrice() const noexcept
4930 {
4931 constexpr BlockLength offset = 57;
4932
4933 return ordinary<NullDecimal9>(offset, optional);
4934 }
4935
4938 {
4939 constexpr BlockLength offset = 57;
4940
4941 setOrdinary(offset, value);
4942 return *this;
4943 }
4944
4946 {
4947 constexpr BlockLength offset = 57;
4948
4949 setOrdinary(offset, NullDecimal9());
4950 return *this;
4951 }
4952
4955 auto securityTradingStatus() const noexcept
4956 {
4957 constexpr BlockLength offset = 65;
4958
4960 }
4961
4964 {
4965 constexpr BlockLength offset = 65;
4966
4968 return *this;
4969 }
4970
4973 auto currency() const noexcept
4974 {
4975 constexpr BlockLength offset = 66;
4976 constexpr BlockLength length = 12;
4977
4978 return fixedStr<length>(offset, optional);
4979 }
4980
4982 ThisType& currency(StrRef value) noexcept
4983 {
4984 constexpr BlockLength offset = 66;
4985 constexpr BlockLength length = 12;
4986
4987 setFixedStr<length>(offset, value);
4988 return *this;
4989 }
4990
4992 {
4993 constexpr BlockLength offset = 66;
4994 constexpr BlockLength length = 12;
4995
4996 setFixedStr<length>(offset, StrRef());
4997 return *this;
4998 }
4999
5002 auto settlMethod() const noexcept
5003 {
5004 constexpr BlockLength offset = 78;
5005
5006 return enumeration<SettlMethodEnum>(offset);
5007 }
5008
5011 {
5012 constexpr BlockLength offset = 78;
5013
5014 setEnumeration<SettlMethodEnum>(offset, value);
5015 return *this;
5016 }
5017
5020 auto strikeExerciseStyle() const noexcept
5021 {
5022 constexpr BlockLength offset = 79;
5023
5025 }
5026
5029 {
5030 constexpr BlockLength offset = 79;
5031
5033 return *this;
5034 }
5035
5037 {
5038 constexpr BlockLength offset = 79;
5039
5040 setOrdinary(offset, NullUint8NULL());
5041 return *this;
5042 }
5043
5046 auto incrementQty() const noexcept
5047 {
5048 constexpr BlockLength offset = 80;
5049
5050 return ordinary<Decimal9>(offset);
5051 }
5052
5055 {
5056 constexpr BlockLength offset = 80;
5057
5058 setOrdinary(offset, value);
5059 return *this;
5060 }
5061
5064 auto incrementPrice() const noexcept
5065 {
5066 constexpr BlockLength offset = 88;
5067
5068 return ordinary<Decimal9>(offset);
5069 }
5070
5073 {
5074 constexpr BlockLength offset = 88;
5075
5076 setOrdinary(offset, value);
5077 return *this;
5078 }
5079
5082 auto minPrice() const noexcept
5083 {
5084 constexpr BlockLength offset = 96;
5085
5086 return ordinary<Decimal9>(offset);
5087 }
5088
5090 ThisType& minPrice(Decimal9 value) noexcept
5091 {
5092 constexpr BlockLength offset = 96;
5093
5094 setOrdinary(offset, value);
5095 return *this;
5096 }
5097
5100 auto maxPrice() const noexcept
5101 {
5102 constexpr BlockLength offset = 104;
5103
5104 return ordinary<Decimal9>(offset);
5105 }
5106
5108 ThisType& maxPrice(Decimal9 value) noexcept
5109 {
5110 constexpr BlockLength offset = 104;
5111
5112 setOrdinary(offset, value);
5113 return *this;
5114 }
5115
5118 auto offExchangeIncrementPrice() const noexcept
5119 {
5120 constexpr BlockLength offset = 112;
5121
5122 return ordinary<Decimal9>(offset);
5123 }
5124
5127 {
5128 constexpr BlockLength offset = 112;
5129
5130 setOrdinary(offset, value);
5131 return *this;
5132 }
5133
5136 auto offExchangeIncrementQty() const noexcept
5137 {
5138 constexpr BlockLength offset = 120;
5139
5140 return ordinary<Decimal9>(offset);
5141 }
5142
5145 {
5146 constexpr BlockLength offset = 120;
5147
5148 setOrdinary(offset, value);
5149 return *this;
5150 }
5151
5154 auto screenTickValue() const noexcept
5155 {
5156 constexpr BlockLength offset = 128;
5157
5158 return ordinary<Decimal9>(offset);
5159 }
5160
5163 {
5164 constexpr BlockLength offset = 128;
5165
5166 setOrdinary(offset, value);
5167 return *this;
5168 }
5169
5172 auto blockTickValue() const noexcept
5173 {
5174 constexpr BlockLength offset = 136;
5175
5176 return ordinary<Decimal9>(offset);
5177 }
5178
5181 {
5182 constexpr BlockLength offset = 136;
5183
5184 setOrdinary(offset, value);
5185 return *this;
5186 }
5187
5190 auto lotSize() const noexcept
5191 {
5192 constexpr BlockLength offset = 144;
5193
5194 return ordinary<Int32>(offset);
5195 }
5196
5198 ThisType& lotSize(Int32 value) noexcept
5199 {
5200 constexpr BlockLength offset = 144;
5201
5202 setOrdinary(offset, value);
5203 return *this;
5204 }
5205
5208 auto contractSize() const noexcept
5209 {
5210 constexpr BlockLength offset = 148;
5211
5212 return ordinary<Int32>(offset);
5213 }
5214
5216 ThisType& contractSize(Int32 value) noexcept
5217 {
5218 constexpr BlockLength offset = 148;
5219
5220 setOrdinary(offset, value);
5221 return *this;
5222 }
5223
5226 auto numOfDecimalPrice() const noexcept
5227 {
5228 constexpr BlockLength offset = 152;
5229
5230 return ordinary<Int8>(offset);
5231 }
5232
5235 {
5236 constexpr BlockLength offset = 152;
5237
5238 setOrdinary(offset, value);
5239 return *this;
5240 }
5241
5244 auto numOfDecimalQty() const noexcept
5245 {
5246 constexpr BlockLength offset = 153;
5247
5248 return ordinary<Int8>(offset);
5249 }
5250
5253 {
5254 constexpr BlockLength offset = 153;
5255
5256 setOrdinary(offset, value);
5257 return *this;
5258 }
5259
5262 auto granularity() const noexcept
5263 {
5264 constexpr BlockLength offset = 154;
5265 constexpr BlockLength length = 12;
5266
5267 return fixedStr<length>(offset);
5268 }
5269
5271 ThisType& granularity(StrRef value) noexcept
5272 {
5273 constexpr BlockLength offset = 154;
5274 constexpr BlockLength length = 12;
5275
5276 setFixedStr<length>(offset, value);
5277 return *this;
5278 }
5279
5282 auto baseNumLots() const noexcept
5283 {
5284 constexpr BlockLength offset = 166;
5285
5286 return ordinary<NullInt32NULL>(offset, optional);
5287 }
5288
5291 {
5292 constexpr BlockLength offset = 166;
5293
5294 setOrdinary(offset, value);
5295 return *this;
5296 }
5297
5299 {
5300 constexpr BlockLength offset = 166;
5301
5302 setOrdinary(offset, NullInt32NULL());
5303 return *this;
5304 }
5305
5308 auto tickValue() const noexcept
5309 {
5310 constexpr BlockLength offset = 170;
5311
5312 return ordinary<Decimal9>(offset);
5313 }
5314
5316 ThisType& tickValue(Decimal9 value) noexcept
5317 {
5318 constexpr BlockLength offset = 170;
5319
5320 setOrdinary(offset, value);
5321 return *this;
5322 }
5323
5326 auto productId() const noexcept
5327 {
5328 constexpr BlockLength offset = 178;
5329
5330 return ordinary<Int32>(offset);
5331 }
5332
5334 ThisType& productId(Int32 value) noexcept
5335 {
5336 constexpr BlockLength offset = 178;
5337
5338 setOrdinary(offset, value);
5339 return *this;
5340 }
5341
5344 auto clearable() const noexcept
5345 {
5346 constexpr BlockLength offset = 182;
5347
5348 return enumeration<BooleanEnum>(offset);
5349 }
5350
5353 {
5354 constexpr BlockLength offset = 182;
5355
5356 setEnumeration<BooleanEnum>(offset, value);
5357 return *this;
5358 }
5359
5362 auto hedgeProductId() const noexcept
5363 {
5364 constexpr BlockLength offset = 183;
5365
5366 return ordinary<NullInt32NULL>(offset, optional);
5367 }
5368
5371 {
5372 constexpr BlockLength offset = 183;
5373
5374 setOrdinary(offset, value);
5375 return *this;
5376 }
5377
5379 {
5380 constexpr BlockLength offset = 183;
5381
5382 setOrdinary(offset, NullInt32NULL());
5383 return *this;
5384 }
5385
5388 auto hedgeMarketId() const noexcept
5389 {
5390 constexpr BlockLength offset = 187;
5391
5392 return ordinary<NullInt32NULL>(offset, optional);
5393 }
5394
5397 {
5398 constexpr BlockLength offset = 187;
5399
5400 setOrdinary(offset, value);
5401 return *this;
5402 }
5403
5405 {
5406 constexpr BlockLength offset = 187;
5407
5408 setOrdinary(offset, NullInt32NULL());
5409 return *this;
5410 }
5411
5414 auto hedgeOnly() const noexcept
5415 {
5416 constexpr BlockLength offset = 191;
5417
5419 }
5420
5423 {
5424 constexpr BlockLength offset = 191;
5425
5426 setEnumeration<BooleanEnum>(offset, value);
5427 return *this;
5428 }
5429
5431 {
5432 constexpr BlockLength offset = 191;
5433
5434 setOrdinary(offset, NullUint8NULL());
5435 return *this;
5436 }
5437
5440 auto isDividendAdjusted() const noexcept
5441 {
5442 constexpr BlockLength offset = 192;
5443
5445 }
5446
5449 {
5450 constexpr BlockLength offset = 192;
5451
5452 setEnumeration<BooleanEnum>(offset, value);
5453 return *this;
5454 }
5455
5457 {
5458 constexpr BlockLength offset = 192;
5459
5460 setOrdinary(offset, NullUint8NULL());
5461 return *this;
5462 }
5463
5466 auto denominator() const noexcept
5467 {
5468 constexpr BlockLength offset = 193;
5469
5470 return ordinary<Int32>(offset);
5471 }
5472
5474 ThisType& denominator(Int32 value) noexcept
5475 {
5476 constexpr BlockLength offset = 193;
5477
5478 setOrdinary(offset, value);
5479 return *this;
5480 }
5481
5484 auto initialMargin() const noexcept
5485 {
5486 constexpr BlockLength offset = 197;
5487
5488 return ordinary<Int32>(offset);
5489 }
5490
5493 {
5494 constexpr BlockLength offset = 197;
5495
5496 setOrdinary(offset, value);
5497 return *this;
5498 }
5499
5502 auto impliedType() const noexcept
5503 {
5504 constexpr BlockLength offset = 201;
5505
5506 return ordinary<NullCharType>(offset, optional);
5507 }
5508
5511 {
5512 constexpr BlockLength offset = 201;
5513
5514 setOrdinary(offset, value);
5515 return *this;
5516 }
5517
5519 {
5520 constexpr BlockLength offset = 201;
5521
5522 setOrdinary(offset, NullCharType());
5523 return *this;
5524 }
5525
5528 auto numOfDecimalStrikePrice() const noexcept
5529 {
5530 constexpr BlockLength offset = 202;
5531
5532 return ordinary<NullInt8NULL>(offset, optional);
5533 }
5534
5537 {
5538 constexpr BlockLength offset = 202;
5539
5540 setOrdinary(offset, value);
5541 return *this;
5542 }
5543
5545 {
5546 constexpr BlockLength offset = 202;
5547
5548 setOrdinary(offset, NullInt8NULL());
5549 return *this;
5550 }
5551
5554 auto numOfCycles() const noexcept
5555 {
5556 constexpr BlockLength offset = 203;
5557
5558 return ordinary<Int16>(offset);
5559 }
5560
5562 ThisType& numOfCycles(Int16 value) noexcept
5563 {
5564 constexpr BlockLength offset = 203;
5565
5566 setOrdinary(offset, value);
5567 return *this;
5568 }
5569
5572 auto lotSizeMultiplier() const noexcept
5573 {
5574 constexpr BlockLength offset = 205;
5575
5576 return ordinary<Decimal9>(offset);
5577 }
5578
5581 {
5582 constexpr BlockLength offset = 205;
5583
5584 setOrdinary(offset, value);
5585 return *this;
5586 }
5587
5590 auto stripType() const noexcept
5591 {
5592 constexpr BlockLength offset = 213;
5593
5594 return ordinary<Int16>(offset);
5595 }
5596
5598 ThisType& stripType(Int16 value) noexcept
5599 {
5600 constexpr BlockLength offset = 213;
5601
5602 setOrdinary(offset, value);
5603 return *this;
5604 }
5605
5608 auto stripId() const noexcept
5609 {
5610 constexpr BlockLength offset = 215;
5611
5612 return ordinary<Int32>(offset);
5613 }
5614
5616 ThisType& stripId(Int32 value) noexcept
5617 {
5618 constexpr BlockLength offset = 215;
5619
5620 setOrdinary(offset, value);
5621 return *this;
5622 }
5623
5626 auto blockOnly() const noexcept
5627 {
5628 constexpr BlockLength offset = 219;
5629
5631 }
5632
5635 {
5636 constexpr BlockLength offset = 219;
5637
5638 setEnumeration<BooleanEnum>(offset, value);
5639 return *this;
5640 }
5641
5643 {
5644 constexpr BlockLength offset = 219;
5645
5646 setOrdinary(offset, NullUint8NULL());
5647 return *this;
5648 }
5649
5652 auto flexAllowed() const noexcept
5653 {
5654 constexpr BlockLength offset = 220;
5655
5657 }
5658
5661 {
5662 constexpr BlockLength offset = 220;
5663
5664 setEnumeration<BooleanEnum>(offset, value);
5665 return *this;
5666 }
5667
5669 {
5670 constexpr BlockLength offset = 220;
5671
5672 setOrdinary(offset, NullUint8NULL());
5673 return *this;
5674 }
5675
5678 auto gtAllowed() const noexcept
5679 {
5680 constexpr BlockLength offset = 221;
5681
5683 }
5684
5687 {
5688 constexpr BlockLength offset = 221;
5689
5690 setEnumeration<BooleanEnum>(offset, value);
5691 return *this;
5692 }
5693
5695 {
5696 constexpr BlockLength offset = 221;
5697
5698 setOrdinary(offset, NullUint8NULL());
5699 return *this;
5700 }
5701
5704 auto aonAllowed() const noexcept
5705 {
5706 constexpr BlockLength offset = 222;
5707
5709 }
5710
5713 {
5714 constexpr BlockLength offset = 222;
5715
5716 setEnumeration<BooleanEnum>(offset, value);
5717 return *this;
5718 }
5719
5721 {
5722 constexpr BlockLength offset = 222;
5723
5724 setOrdinary(offset, NullUint8NULL());
5725 return *this;
5726 }
5727
5730 auto mifidRegulatedMarket() const noexcept
5731 {
5732 constexpr BlockLength offset = 223;
5733
5735 }
5736
5739 {
5740 constexpr BlockLength offset = 223;
5741
5742 setEnumeration<BooleanEnum>(offset, value);
5743 return *this;
5744 }
5745
5747 {
5748 constexpr BlockLength offset = 223;
5749
5750 setOrdinary(offset, NullUint8NULL());
5751 return *this;
5752 }
5753
5756 auto flexStrikeAllowed() const noexcept
5757 {
5758 constexpr BlockLength offset = 224;
5759
5761 }
5762
5765 {
5766 constexpr BlockLength offset = 224;
5767
5768 setEnumeration<BooleanEnum>(offset, value);
5769 return *this;
5770 }
5771
5773 {
5774 constexpr BlockLength offset = 224;
5775
5776 setOrdinary(offset, NullUint8NULL());
5777 return *this;
5778 }
5779
5782 auto hubId() const noexcept
5783 {
5784 constexpr BlockLength offset = 225;
5785
5786 return ordinary<Int32>(offset);
5787 }
5788
5790 ThisType& hubId(Int32 value) noexcept
5791 {
5792 constexpr BlockLength offset = 225;
5793
5794 setOrdinary(offset, value);
5795 return *this;
5796 }
5797
5800 auto overrideBlockMin() const noexcept
5801 {
5802 constexpr BlockLength offset = 229;
5803
5805 }
5806
5809 {
5810 constexpr BlockLength offset = 229;
5811
5812 setEnumeration<BooleanEnum>(offset, value);
5813 return *this;
5814 }
5815
5817 {
5818 constexpr BlockLength offset = 229;
5819
5820 setOrdinary(offset, NullUint8NULL());
5821 return *this;
5822 }
5823
5826 auto testMarketIndicator() const noexcept
5827 {
5828 constexpr BlockLength offset = 230;
5829
5831 }
5832
5835 {
5836 constexpr BlockLength offset = 230;
5837
5838 setEnumeration<BooleanEnum>(offset, value);
5839 return *this;
5840 }
5841
5843 {
5844 constexpr BlockLength offset = 230;
5845
5846 setOrdinary(offset, NullUint8NULL());
5847 return *this;
5848 }
5849
5852 auto refSprdProductId() const noexcept
5853 {
5854 constexpr BlockLength offset = 231;
5855
5856 return ordinary<NullInt32NULL>(offset, optional);
5857 }
5858
5861 {
5862 constexpr BlockLength offset = 231;
5863
5864 setOrdinary(offset, value);
5865 return *this;
5866 }
5867
5869 {
5870 constexpr BlockLength offset = 231;
5871
5872 setOrdinary(offset, NullInt32NULL());
5873 return *this;
5874 }
5875
5878 auto marketTransparencyType() const noexcept
5879 {
5880 constexpr BlockLength offset = 235;
5881
5883 }
5884
5887 {
5888 constexpr BlockLength offset = 235;
5889
5890 setEnumeration<BooleanEnum>(offset, value);
5891 return *this;
5892 }
5893
5895 {
5896 constexpr BlockLength offset = 235;
5897
5898 setOrdinary(offset, NullUint8NULL());
5899 return *this;
5900 }
5901
5904 auto nCommoditizedMarket() const noexcept
5905 {
5906 constexpr BlockLength offset = 236;
5907
5909 }
5910
5913 {
5914 constexpr BlockLength offset = 236;
5915
5916 setEnumeration<BooleanEnum>(offset, value);
5917 return *this;
5918 }
5919
5921 {
5922 constexpr BlockLength offset = 236;
5923
5924 setOrdinary(offset, NullUint8NULL());
5925 return *this;
5926 }
5927
5931 {
5933 BlockDetailsAccess(),
5934 *this);
5935 }
5936
5940 {
5942 BlockDetailsAccess(),
5943 *this);
5944 }
5945
5950 {
5952 BlockDetailsAccess(),
5953 length,
5954 *this);
5955 }
5956
5960 {
5962 BlockDetailsAccess(),
5963 length,
5964 *this);
5965 }
5966
5970 {
5972 SecurityAltIDAccess(),
5973 *this);
5974 }
5975
5979 {
5981 SecurityAltIDAccess(),
5982 *this);
5983 }
5984
5989 {
5991 SecurityAltIDAccess(),
5992 length,
5993 *this);
5994 }
5995
5999 {
6001 SecurityAltIDAccess(),
6002 length,
6003 *this);
6004 }
6005
6007 StrRef securityId() const noexcept
6008 {
6010 securityIDAccess(),
6011 *this);
6012 }
6013
6015 StrRef unitOfMeasure() const noexcept
6016 {
6018 unitOfMeasureAccess(),
6019 *this);
6020 }
6021
6023 StrRef priceDenomination() const noexcept
6024 {
6026 priceDenominationAccess(),
6027 *this);
6028 }
6029
6031 StrRef clearedAlias() const noexcept
6032 {
6034 clearedAliasAccess(),
6035 *this);
6036 }
6037
6039 StrRef securityDesc() const noexcept
6040 {
6042 securityDescAccess(),
6043 *this);
6044 }
6045
6047 StrRef priceUnit() const noexcept
6048 {
6049 return getVariableLengthField(priceUnitAccess(), *this);
6050 }
6051
6053 StrRef stripName() const noexcept
6054 {
6055 return getVariableLengthField(stripNameAccess(), *this);
6056 }
6057
6059 StrRef hubName() const noexcept
6060 {
6061 return getVariableLengthField(hubNameAccess(), *this);
6062 }
6063
6065 StrRef hubAlias() const noexcept
6066 {
6067 return getVariableLengthField(hubAliasAccess(), *this);
6068 }
6069
6071 StrRef securityExchange() const noexcept
6072 {
6074 securityExchangeAccess(),
6075 *this);
6076 }
6077
6079 StrRef physicalCode() const noexcept
6080 {
6082 physicalCodeAccess(),
6083 *this);
6084 }
6085
6087 StrRef homeExchange() const noexcept
6088 {
6090 homeExchangeAccess(),
6091 *this);
6092 }
6093
6095 {
6097 securityIDAccess(),
6098 value,
6099 *this);
6100
6101 return *this;
6102 }
6103
6105 {
6107 unitOfMeasureAccess(),
6108 value,
6109 *this);
6110
6111 return *this;
6112 }
6113
6115 {
6117 priceDenominationAccess(),
6118 value,
6119 *this);
6120
6121 return *this;
6122 }
6123
6125 {
6127 clearedAliasAccess(),
6128 value,
6129 *this);
6130
6131 return *this;
6132 }
6133
6135 {
6137 securityDescAccess(),
6138 value,
6139 *this);
6140
6141 return *this;
6142 }
6143
6145 {
6147 priceUnitAccess(),
6148 value,
6149 *this);
6150
6151 return *this;
6152 }
6153
6155 {
6157 stripNameAccess(),
6158 value,
6159 *this);
6160
6161 return *this;
6162 }
6163
6165 {
6167 hubNameAccess(),
6168 value,
6169 *this);
6170
6171 return *this;
6172 }
6173
6175 {
6177 hubAliasAccess(),
6178 value,
6179 *this);
6180
6181 return *this;
6182 }
6183
6185 {
6187 securityExchangeAccess(),
6188 value,
6189 *this);
6190
6191 return *this;
6192 }
6193
6195 {
6197 physicalCodeAccess(),
6198 value,
6199 *this);
6200
6201 return *this;
6202 }
6203
6205 {
6207 homeExchangeAccess(),
6208 value,
6209 *this);
6210
6211 return *this;
6212 }
6213
6215 constexpr
6217 {
6218 return
6219 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
6220 237;
6221 }
6222
6224 constexpr
6226 {
6227 return
6228 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
6230 }
6231
6234 constexpr
6241
6244 constexpr
6246 {
6247 return
6249 }
6250
6270
6305
6308 constexpr
6309 static StrRef className() noexcept
6310 {
6311 return constructStrRef("SecurityDefinitionReport");
6312 }
6313
6316 constexpr
6317 static StrRef fixType() noexcept
6318 {
6319 return constructStrRef("d");
6320 }
6321
6324 std::string toString() const;
6325
6328 const void* tail() const noexcept
6329 {
6330 return
6332 (homeExchange().end()));
6333 }
6334
6338 {
6339 return
6341 }
6342
6343private:
6344 void checkLength(
6345 EncodedLength length, SchemaVersion version) const
6346 {
6347 const EncodedLength minimalRequiredLength =
6348 minimalBlockLength(version) +
6350 getMinimalVariableFieldsSize(version);
6351
6353 *this, length, minimalRequiredLength);
6354 }
6355
6357 void checkVarLenFields() const
6358 {
6359 groups().
6360 tail<BlockDetails>().
6361 checkVariableLengthFields<SecurityAltID>().
6362 checkTail<VarString16>().
6363 checkTail<VarString16>().
6364 checkTail<VarString16>().
6365 checkTail<VarString16>().
6366 checkTail<VarString16>().
6367 checkTail<VarString16>().
6368 checkTail<VarString16>().
6369 checkTail<VarString16>().
6370 checkTail<VarString16>().
6371 checkTail<VarString16>().
6372 checkTail<VarString16>().
6373 checkTail<VarString16>();
6374 }
6375
6376 void checkCompatibility() const
6377 {
6378 assert(TemplateId == templateId());
6379
6380 checkSchema<Schema>(schemaId(), version());
6381 checkLength(bufferSize(), version());
6382 checkVarLenFields();
6383 }
6384
6386 struct BlockDetailsAccess
6387 {
6388 BlockDetails operator()(const SecurityDefinitionReport& obj) const noexcept
6389 {
6390 return obj.
6391 groups().
6392 head<BlockDetails>();
6393 }
6394 };
6395
6398 void blockDetails(NullOpt) noexcept
6399 {
6400 resetGroup<BlockDetails>(
6401 BlockDetailsAccess(),
6402 *this);
6403 }
6404
6406 struct SecurityAltIDAccess
6407 {
6408 SecurityAltID operator()(const SecurityDefinitionReport& obj) const noexcept
6409 {
6410 return obj.
6411 groups().
6412 tail<BlockDetails>().
6413 head<SecurityAltID>();
6414 }
6415 };
6416
6419 void securityAltId(NullOpt) noexcept
6420 {
6421 resetGroup<SecurityAltID>(
6422 SecurityAltIDAccess(),
6423 *this);
6424 }
6425
6427 struct securityIDAccess
6428 {
6429 VarString16& operator()(const SecurityDefinitionReport& obj) const noexcept
6430 {
6431 return obj.
6432 groups().
6433 tail<BlockDetails>().
6434 variableLengthFields<SecurityAltID>().
6435 head<VarString16>();
6436 }
6437 };
6438
6440 struct unitOfMeasureAccess
6441 {
6442 VarString16& operator()(const SecurityDefinitionReport& obj) const noexcept
6443 {
6444 return obj.
6445 groups().
6446 tail<BlockDetails>().
6447 variableLengthFields<SecurityAltID>().
6448 tail<VarString16>().
6449 head<VarString16>();
6450 }
6451 };
6452
6454 struct priceDenominationAccess
6455 {
6456 VarString16& operator()(const SecurityDefinitionReport& obj) const noexcept
6457 {
6458 return obj.
6459 groups().
6460 tail<BlockDetails>().
6461 variableLengthFields<SecurityAltID>().
6462 tail<VarString16>().
6463 tail<VarString16>().
6464 head<VarString16>();
6465 }
6466 };
6467
6469 struct clearedAliasAccess
6470 {
6471 VarString16& operator()(const SecurityDefinitionReport& obj) const noexcept
6472 {
6473 return obj.
6474 groups().
6475 tail<BlockDetails>().
6476 variableLengthFields<SecurityAltID>().
6477 tail<VarString16>().
6478 tail<VarString16>().
6479 tail<VarString16>().
6480 head<VarString16>();
6481 }
6482 };
6483
6485 struct securityDescAccess
6486 {
6487 VarString16& operator()(const SecurityDefinitionReport& obj) const noexcept
6488 {
6489 return obj.
6490 groups().
6491 tail<BlockDetails>().
6492 variableLengthFields<SecurityAltID>().
6493 tail<VarString16>().
6494 tail<VarString16>().
6495 tail<VarString16>().
6496 tail<VarString16>().
6497 head<VarString16>();
6498 }
6499 };
6500
6502 struct priceUnitAccess
6503 {
6504 VarString16& operator()(const SecurityDefinitionReport& obj) const noexcept
6505 {
6506 return obj.
6507 groups().
6508 tail<BlockDetails>().
6509 variableLengthFields<SecurityAltID>().
6510 tail<VarString16>().
6511 tail<VarString16>().
6512 tail<VarString16>().
6513 tail<VarString16>().
6514 tail<VarString16>().
6515 head<VarString16>();
6516 }
6517 };
6518
6520 struct stripNameAccess
6521 {
6522 VarString16& operator()(const SecurityDefinitionReport& obj) const noexcept
6523 {
6524 return obj.
6525 groups().
6526 tail<BlockDetails>().
6527 variableLengthFields<SecurityAltID>().
6528 tail<VarString16>().
6529 tail<VarString16>().
6530 tail<VarString16>().
6531 tail<VarString16>().
6532 tail<VarString16>().
6533 tail<VarString16>().
6534 head<VarString16>();
6535 }
6536 };
6537
6539 struct hubNameAccess
6540 {
6541 VarString16& operator()(const SecurityDefinitionReport& obj) const noexcept
6542 {
6543 return obj.
6544 groups().
6545 tail<BlockDetails>().
6546 variableLengthFields<SecurityAltID>().
6547 tail<VarString16>().
6548 tail<VarString16>().
6549 tail<VarString16>().
6550 tail<VarString16>().
6551 tail<VarString16>().
6552 tail<VarString16>().
6553 tail<VarString16>().
6554 head<VarString16>();
6555 }
6556 };
6557
6559 struct hubAliasAccess
6560 {
6561 VarString16& operator()(const SecurityDefinitionReport& obj) const noexcept
6562 {
6563 return obj.
6564 groups().
6565 tail<BlockDetails>().
6566 variableLengthFields<SecurityAltID>().
6567 tail<VarString16>().
6568 tail<VarString16>().
6569 tail<VarString16>().
6570 tail<VarString16>().
6571 tail<VarString16>().
6572 tail<VarString16>().
6573 tail<VarString16>().
6574 tail<VarString16>().
6575 head<VarString16>();
6576 }
6577 };
6578
6580 struct securityExchangeAccess
6581 {
6582 VarString16& operator()(const SecurityDefinitionReport& obj) const noexcept
6583 {
6584 return obj.
6585 groups().
6586 tail<BlockDetails>().
6587 variableLengthFields<SecurityAltID>().
6588 tail<VarString16>().
6589 tail<VarString16>().
6590 tail<VarString16>().
6591 tail<VarString16>().
6592 tail<VarString16>().
6593 tail<VarString16>().
6594 tail<VarString16>().
6595 tail<VarString16>().
6596 tail<VarString16>().
6597 head<VarString16>();
6598 }
6599 };
6600
6602 struct physicalCodeAccess
6603 {
6604 VarString16& operator()(const SecurityDefinitionReport& obj) const noexcept
6605 {
6606 return obj.
6607 groups().
6608 tail<BlockDetails>().
6609 variableLengthFields<SecurityAltID>().
6610 tail<VarString16>().
6611 tail<VarString16>().
6612 tail<VarString16>().
6613 tail<VarString16>().
6614 tail<VarString16>().
6615 tail<VarString16>().
6616 tail<VarString16>().
6617 tail<VarString16>().
6618 tail<VarString16>().
6619 tail<VarString16>().
6620 head<VarString16>();
6621 }
6622 };
6623
6625 struct homeExchangeAccess
6626 {
6627 VarString16& operator()(const SecurityDefinitionReport& obj) const noexcept
6628 {
6629 return obj.
6630 groups().
6631 tail<BlockDetails>().
6632 variableLengthFields<SecurityAltID>().
6633 tail<VarString16>().
6634 tail<VarString16>().
6635 tail<VarString16>().
6636 tail<VarString16>().
6637 tail<VarString16>().
6638 tail<VarString16>().
6639 tail<VarString16>().
6640 tail<VarString16>().
6641 tail<VarString16>().
6642 tail<VarString16>().
6643 tail<VarString16>().
6644 head<VarString16>();
6645 }
6646 };
6647
6650 ThisType& securityId(NullOpt) noexcept
6651 {
6652 setVariableLengthFieldToNull(
6653 securityIDAccess(),
6654 *this);
6655
6656 return *this;
6657 }
6658
6661 ThisType& unitOfMeasure(NullOpt) noexcept
6662 {
6663 setVariableLengthFieldToNull(
6664 unitOfMeasureAccess(),
6665 *this);
6666
6667 return *this;
6668 }
6669
6672 ThisType& priceDenomination(NullOpt) noexcept
6673 {
6674 setVariableLengthFieldToNull(
6675 priceDenominationAccess(),
6676 *this);
6677
6678 return *this;
6679 }
6680
6683 ThisType& clearedAlias(NullOpt) noexcept
6684 {
6685 setVariableLengthFieldToNull(
6686 clearedAliasAccess(),
6687 *this);
6688
6689 return *this;
6690 }
6691
6694 ThisType& securityDesc(NullOpt) noexcept
6695 {
6696 setVariableLengthFieldToNull(
6697 securityDescAccess(),
6698 *this);
6699
6700 return *this;
6701 }
6702
6705 ThisType& priceUnit(NullOpt) noexcept
6706 {
6707 setVariableLengthFieldToNull(priceUnitAccess(), *this);
6708
6709 return *this;
6710 }
6711
6714 ThisType& stripName(NullOpt) noexcept
6715 {
6716 setVariableLengthFieldToNull(stripNameAccess(), *this);
6717
6718 return *this;
6719 }
6720
6723 ThisType& hubName(NullOpt) noexcept
6724 {
6725 setVariableLengthFieldToNull(hubNameAccess(), *this);
6726
6727 return *this;
6728 }
6729
6732 ThisType& hubAlias(NullOpt) noexcept
6733 {
6734 setVariableLengthFieldToNull(hubAliasAccess(), *this);
6735
6736 return *this;
6737 }
6738
6741 ThisType& securityExchange(NullOpt) noexcept
6742 {
6743 setVariableLengthFieldToNull(
6744 securityExchangeAccess(),
6745 *this);
6746
6747 return *this;
6748 }
6749
6752 ThisType& physicalCode(NullOpt) noexcept
6753 {
6754 setVariableLengthFieldToNull(
6755 physicalCodeAccess(),
6756 *this);
6757
6758 return *this;
6759 }
6760
6763 ThisType& homeExchange(NullOpt) noexcept
6764 {
6765 setVariableLengthFieldToNull(
6766 homeExchangeAccess(),
6767 *this);
6768
6769 return *this;
6770 }
6771};
6772
6774struct
6776: SbeMessage
6777{
6780
6783
6785 enum { TemplateId = 155 };
6786
6789
6799
6811
6814 : SbeMessage(data, length)
6815 {
6816 checkCompatibility();
6817 }
6818
6820 explicit
6822 : SbeMessage(message)
6823 {
6824 assert(message.valid());
6825
6826 checkCompatibility();
6827 }
6828
6832 : SbeMessage(data, length, NoCheck())
6833 {
6834 assert(schemaId() == Schema::Id);
6835 assert(version() >= Schema::MinimalVersion);
6836 assert(TemplateId == templateId());
6837 }
6838
6841 auto securityReqId() const noexcept
6842 {
6843 constexpr BlockLength offset = 0;
6844
6845 return ordinary<Int32>(offset);
6846 }
6847
6850 {
6851 constexpr BlockLength offset = 0;
6852
6853 setOrdinary(offset, value);
6854 return *this;
6855 }
6856
6859 auto securityResponseType() const noexcept
6860 {
6861 constexpr BlockLength offset = 4;
6862
6864 }
6865
6868 {
6869 constexpr BlockLength offset = 4;
6870
6872 return *this;
6873 }
6874
6877 auto securityRequestType() const noexcept
6878 {
6879 constexpr BlockLength offset = 5;
6880
6882 }
6883
6886 {
6887 constexpr BlockLength offset = 5;
6888
6890 return *this;
6891 }
6892
6895 auto marketTypeId() const noexcept
6896 {
6897 constexpr BlockLength offset = 6;
6898
6899 return ordinary<Int32>(offset);
6900 }
6901
6903 ThisType& marketTypeId(Int32 value) noexcept
6904 {
6905 constexpr BlockLength offset = 6;
6906
6907 setOrdinary(offset, value);
6908 return *this;
6909 }
6910
6913 auto securityType() const noexcept
6914 {
6915 constexpr BlockLength offset = 10;
6916
6918 }
6919
6922 {
6923 constexpr BlockLength offset = 10;
6924
6925 setEnumeration<SecurityTypeEnum>(offset, value);
6926 return *this;
6927 }
6928
6930 {
6931 constexpr BlockLength offset = 10;
6932
6933 setOrdinary(offset, NullUint8NULL());
6934 return *this;
6935 }
6936
6939 auto exchangeCode() const noexcept
6940 {
6941 constexpr BlockLength offset = 11;
6942
6943 return ordinary<NullInt32NULL>(offset, optional);
6944 }
6945
6948 {
6949 constexpr BlockLength offset = 11;
6950
6951 setOrdinary(offset, value);
6952 return *this;
6953 }
6954
6956 {
6957 constexpr BlockLength offset = 11;
6958
6959 setOrdinary(offset, NullInt32NULL());
6960 return *this;
6961 }
6962
6965 auto text() const noexcept
6966 {
6967 constexpr BlockLength offset = 15;
6968 constexpr BlockLength length = 100;
6969
6970 return fixedStr<length>(offset, optional);
6971 }
6972
6974 ThisType& text(StrRef value) noexcept
6975 {
6976 constexpr BlockLength offset = 15;
6977 constexpr BlockLength length = 100;
6978
6979 setFixedStr<length>(offset, value);
6980 return *this;
6981 }
6982
6984 {
6985 constexpr BlockLength offset = 15;
6986 constexpr BlockLength length = 100;
6987
6988 setFixedStr<length>(offset, StrRef());
6989 return *this;
6990 }
6991
6993 constexpr
6995 {
6996 return
6997 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
6998 115;
6999 }
7000
7002 constexpr
7004 {
7005 return
7006 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
7008 }
7009
7012 constexpr
7014 {
7015 return
7016 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
7017 0;
7018 }
7019
7022 constexpr
7024 {
7025 return
7026 static_cast<UInt64>(MessageHeaderBuilder::Size) +
7028 }
7029
7032 {
7033 return *this;
7034 }
7035
7037 ThisType& reset() noexcept
7038 {
7041 text(nullOpt);
7042
7044 return *this;
7045 }
7046
7049 constexpr
7050 static StrRef className() noexcept
7051 {
7052 return constructStrRef("SecurityDefinitionReject");
7053 }
7054
7057 constexpr
7058 static StrRef fixType() noexcept
7059 {
7060 return constructStrRef("d");
7061 }
7062
7065 std::string toString() const;
7066
7069 const void* tail() const noexcept
7070 {
7071 return
7074 binary(),
7075 static_cast<ptrdiff_t>(SbeMessage::blockLength()) +
7077 }
7078
7082 {
7083 return
7085 }
7086
7087private:
7088 void checkLength(
7089 EncodedLength length, SchemaVersion version) const
7090 {
7091 const EncodedLength minimalRequiredLength =
7092 minimalBlockLength(version) +
7094 getMinimalVariableFieldsSize(version);
7095
7097 *this, length, minimalRequiredLength);
7098 }
7099
7100 void checkCompatibility() const
7101 {
7102 assert(TemplateId == templateId());
7103
7104 checkSchema<Schema>(schemaId(), version());
7105 checkLength(bufferSize(), version());
7106 }
7107};
7108
7110struct
7112: SbeMessage
7113{
7116
7119
7121 enum { TemplateId = 15 };
7122
7125
7135
7147
7150 : SbeMessage(data, length)
7151 {
7152 checkCompatibility();
7153 }
7154
7156 explicit
7158 : SbeMessage(message)
7159 {
7160 assert(message.valid());
7161
7162 checkCompatibility();
7163 }
7164
7168 : SbeMessage(data, length, NoCheck())
7169 {
7170 assert(schemaId() == Schema::Id);
7171 assert(version() >= Schema::MinimalVersion);
7172 assert(TemplateId == templateId());
7173 }
7174
7177 auto securityReqId() const noexcept
7178 {
7179 constexpr BlockLength offset = 0;
7180
7181 return ordinary<Int32>(offset);
7182 }
7183
7186 {
7187 constexpr BlockLength offset = 0;
7188
7189 setOrdinary(offset, value);
7190 return *this;
7191 }
7192
7196 auto securityRequestType() const noexcept
7197 {
7198 constexpr BlockLength offset = 4;
7199
7201 }
7202
7206 {
7207 constexpr BlockLength offset = 4;
7208
7210 return *this;
7211 }
7212
7215 auto marketTypeId() const noexcept
7216 {
7217 constexpr BlockLength offset = 5;
7218
7219 return ordinary<Int32>(offset);
7220 }
7221
7223 ThisType& marketTypeId(Int32 value) noexcept
7224 {
7225 constexpr BlockLength offset = 5;
7226
7227 setOrdinary(offset, value);
7228 return *this;
7229 }
7230
7232 constexpr
7234 {
7235 return
7236 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
7237 9;
7238 }
7239
7241 constexpr
7243 {
7244 return
7245 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
7247 }
7248
7251 constexpr
7253 {
7254 return
7255 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
7256 0;
7257 }
7258
7261 constexpr
7263 {
7264 return
7265 static_cast<UInt64>(MessageHeaderBuilder::Size) +
7267 }
7268
7271 {
7272 return *this;
7273 }
7274
7276 ThisType& reset() noexcept
7277 {
7279 return *this;
7280 }
7281
7284 constexpr
7285 static StrRef className() noexcept
7286 {
7287 return constructStrRef("SecurityDefinitionRequest");
7288 }
7289
7292 constexpr
7293 static StrRef fixType() noexcept
7294 {
7295 return constructStrRef("c");
7296 }
7297
7300 std::string toString() const;
7301
7304 const void* tail() const noexcept
7305 {
7306 return
7309 binary(),
7310 static_cast<ptrdiff_t>(SbeMessage::blockLength()) +
7312 }
7313
7317 {
7318 return
7320 }
7321
7322private:
7323 void checkLength(
7324 EncodedLength length, SchemaVersion version) const
7325 {
7326 const EncodedLength minimalRequiredLength =
7327 minimalBlockLength(version) +
7329 getMinimalVariableFieldsSize(version);
7330
7332 *this, length, minimalRequiredLength);
7333 }
7334
7335 void checkCompatibility() const
7336 {
7337 assert(TemplateId == templateId());
7338
7339 checkSchema<Schema>(schemaId(), version());
7340 checkLength(bufferSize(), version());
7341 }
7342};
7343
7345struct
7347: SbeMessage
7348{
7351
7354
7356 enum { TemplateId = 154 };
7357
7360
7370
7382
7385 : SbeMessage(data, length)
7386 {
7387 checkCompatibility();
7388 }
7389
7391 explicit
7393 : SbeMessage(message)
7394 {
7395 assert(message.valid());
7396
7397 checkCompatibility();
7398 }
7399
7403 : SbeMessage(data, length, NoCheck())
7404 {
7405 assert(schemaId() == Schema::Id);
7406 assert(version() >= Schema::MinimalVersion);
7407 assert(TemplateId == templateId());
7408 }
7409
7412 auto securityReqId() const noexcept
7413 {
7414 constexpr BlockLength offset = 0;
7415
7416 return ordinary<Int32>(offset);
7417 }
7418
7421 {
7422 constexpr BlockLength offset = 0;
7423
7424 setOrdinary(offset, value);
7425 return *this;
7426 }
7427
7430 auto securityResponseType() const noexcept
7431 {
7432 constexpr BlockLength offset = 4;
7433
7435 }
7436
7439 {
7440 constexpr BlockLength offset = 4;
7441
7443 return *this;
7444 }
7445
7448 auto securityResponseId() const noexcept
7449 {
7450 constexpr BlockLength offset = 5;
7451
7452 return ordinary<Int32>(offset);
7453 }
7454
7457 {
7458 constexpr BlockLength offset = 5;
7459
7460 setOrdinary(offset, value);
7461 return *this;
7462 }
7463
7466 auto marketTypeId() const noexcept
7467 {
7468 constexpr BlockLength offset = 9;
7469
7470 return ordinary<Int32>(offset);
7471 }
7472
7474 ThisType& marketTypeId(Int32 value) noexcept
7475 {
7476 constexpr BlockLength offset = 9;
7477
7478 setOrdinary(offset, value);
7479 return *this;
7480 }
7481
7484 auto rpts() const noexcept
7485 {
7486 constexpr BlockLength offset = 13;
7487
7488 return ordinary<Int32>(offset);
7489 }
7490
7492 ThisType& rpts(Int32 value) noexcept
7493 {
7494 constexpr BlockLength offset = 13;
7495
7496 setOrdinary(offset, value);
7497 return *this;
7498 }
7499
7502 auto listSeqNo() const noexcept
7503 {
7504 constexpr BlockLength offset = 17;
7505
7506 return ordinary<Int32>(offset);
7507 }
7508
7510 ThisType& listSeqNo(Int32 value) noexcept
7511 {
7512 constexpr BlockLength offset = 17;
7513
7514 setOrdinary(offset, value);
7515 return *this;
7516 }
7517
7520 auto productId() const noexcept
7521 {
7522 constexpr BlockLength offset = 21;
7523
7524 return ordinary<Int32>(offset);
7525 }
7526
7528 ThisType& productId(Int32 value) noexcept
7529 {
7530 constexpr BlockLength offset = 21;
7531
7532 setOrdinary(offset, value);
7533 return *this;
7534 }
7535
7538 auto productType() const noexcept
7539 {
7540 constexpr BlockLength offset = 25;
7541 constexpr BlockLength length = 12;
7542
7543 return fixedStr<length>(offset, optional);
7544 }
7545
7547 ThisType& productType(StrRef value) noexcept
7548 {
7549 constexpr BlockLength offset = 25;
7550 constexpr BlockLength length = 12;
7551
7552 setFixedStr<length>(offset, value);
7553 return *this;
7554 }
7555
7557 {
7558 constexpr BlockLength offset = 25;
7559 constexpr BlockLength length = 12;
7560
7561 setFixedStr<length>(offset, StrRef());
7562 return *this;
7563 }
7564
7567 auto mifidRegulatedMarket() const noexcept
7568 {
7569 constexpr BlockLength offset = 37;
7570
7571 return enumeration<BooleanEnum>(offset);
7572 }
7573
7576 {
7577 constexpr BlockLength offset = 37;
7578
7579 setEnumeration<BooleanEnum>(offset, value);
7580 return *this;
7581 }
7582
7585 auto testMarketIndicator() const noexcept
7586 {
7587 constexpr BlockLength offset = 38;
7588
7589 return enumeration<BooleanEnum>(offset);
7590 }
7591
7594 {
7595 constexpr BlockLength offset = 38;
7596
7597 setEnumeration<BooleanEnum>(offset, value);
7598 return *this;
7599 }
7600
7603 auto stopsAllowed() const noexcept
7604 {
7605 constexpr BlockLength offset = 39;
7606
7608 }
7609
7612 {
7613 constexpr BlockLength offset = 39;
7614
7615 setEnumeration<BooleanEnum>(offset, value);
7616 return *this;
7617 }
7618
7620 {
7621 constexpr BlockLength offset = 39;
7622
7623 setOrdinary(offset, NullUint8NULL());
7624 return *this;
7625 }
7626
7629 auto optionsAllowed() const noexcept
7630 {
7631 constexpr BlockLength offset = 40;
7632
7634 }
7635
7638 {
7639 constexpr BlockLength offset = 40;
7640
7641 setEnumeration<BooleanEnum>(offset, value);
7642 return *this;
7643 }
7644
7646 {
7647 constexpr BlockLength offset = 40;
7648
7649 setOrdinary(offset, NullUint8NULL());
7650 return *this;
7651 }
7652
7655 auto udsOptionsAllowed() const noexcept
7656 {
7657 constexpr BlockLength offset = 41;
7658
7660 }
7661
7664 {
7665 constexpr BlockLength offset = 41;
7666
7667 setEnumeration<BooleanEnum>(offset, value);
7668 return *this;
7669 }
7670
7672 {
7673 constexpr BlockLength offset = 41;
7674
7675 setOrdinary(offset, NullUint8NULL());
7676 return *this;
7677 }
7678
7681 auto udsFuturesAllowed() const noexcept
7682 {
7683 constexpr BlockLength offset = 42;
7684
7686 }
7687
7690 {
7691 constexpr BlockLength offset = 42;
7692
7693 setEnumeration<BooleanEnum>(offset, value);
7694 return *this;
7695 }
7696
7698 {
7699 constexpr BlockLength offset = 42;
7700
7701 setOrdinary(offset, NullUint8NULL());
7702 return *this;
7703 }
7704
7707 auto massQuotesAllowed() const noexcept
7708 {
7709 constexpr BlockLength offset = 43;
7710
7712 }
7713
7716 {
7717 constexpr BlockLength offset = 43;
7718
7719 setEnumeration<BooleanEnum>(offset, value);
7720 return *this;
7721 }
7722
7724 {
7725 constexpr BlockLength offset = 43;
7726
7727 setOrdinary(offset, NullUint8NULL());
7728 return *this;
7729 }
7730
7733 auto rfqFuturesAllowed() const noexcept
7734 {
7735 constexpr BlockLength offset = 44;
7736
7738 }
7739
7742 {
7743 constexpr BlockLength offset = 44;
7744
7745 setEnumeration<BooleanEnum>(offset, value);
7746 return *this;
7747 }
7748
7750 {
7751 constexpr BlockLength offset = 44;
7752
7753 setOrdinary(offset, NullUint8NULL());
7754 return *this;
7755 }
7756
7759 auto rfqOptionsAllowed() const noexcept
7760 {
7761 constexpr BlockLength offset = 45;
7762
7764 }
7765
7768 {
7769 constexpr BlockLength offset = 45;
7770
7771 setEnumeration<BooleanEnum>(offset, value);
7772 return *this;
7773 }
7774
7776 {
7777 constexpr BlockLength offset = 45;
7778
7779 setOrdinary(offset, NullUint8NULL());
7780 return *this;
7781 }
7782
7785 auto crossingOrderFuturesAllowed() const noexcept
7786 {
7787 constexpr BlockLength offset = 46;
7788
7790 }
7791
7794 {
7795 constexpr BlockLength offset = 46;
7796
7797 setEnumeration<BooleanEnum>(offset, value);
7798 return *this;
7799 }
7800
7802 {
7803 constexpr BlockLength offset = 46;
7804
7805 setOrdinary(offset, NullUint8NULL());
7806 return *this;
7807 }
7808
7811 auto crossingOrderOptionsAllowed() const noexcept
7812 {
7813 constexpr BlockLength offset = 47;
7814
7816 }
7817
7820 {
7821 constexpr BlockLength offset = 47;
7822
7823 setEnumeration<BooleanEnum>(offset, value);
7824 return *this;
7825 }
7826
7828 {
7829 constexpr BlockLength offset = 47;
7830
7831 setOrdinary(offset, NullUint8NULL());
7832 return *this;
7833 }
7834
7837 auto selfBlockAllowed() const noexcept
7838 {
7839 constexpr BlockLength offset = 48;
7840
7842 }
7843
7846 {
7847 constexpr BlockLength offset = 48;
7848
7849 setEnumeration<BooleanEnum>(offset, value);
7850 return *this;
7851 }
7852
7854 {
7855 constexpr BlockLength offset = 48;
7856
7857 setOrdinary(offset, NullUint8NULL());
7858 return *this;
7859 }
7860
7862 StrRef productName() const noexcept
7863 {
7865 productNameAccess(),
7866 *this);
7867 }
7868
7870 StrRef productDesc() const noexcept
7871 {
7873 productDescAccess(),
7874 *this);
7875 }
7876
7878 StrRef productGroup() const noexcept
7879 {
7881 productGroupAccess(),
7882 *this);
7883 }
7884
7886 {
7888 productNameAccess(),
7889 value,
7890 *this);
7891
7892 return *this;
7893 }
7894
7896 {
7898 productDescAccess(),
7899 value,
7900 *this);
7901
7902 return *this;
7903 }
7904
7906 {
7908 productGroupAccess(),
7909 value,
7910 *this);
7911
7912 return *this;
7913 }
7914
7916 constexpr
7918 {
7919 return
7920 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
7921 49;
7922 }
7923
7925 constexpr
7927 {
7928 return
7929 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
7931 }
7932
7935 constexpr
7942
7945 constexpr
7947 {
7948 return
7950 }
7951
7954 {
7958 return *this;
7959 }
7960
7979
7982 constexpr
7983 static StrRef className() noexcept
7984 {
7985 return constructStrRef("SecurityDefinitionReport_Product");
7986 }
7987
7990 constexpr
7991 static StrRef fixType() noexcept
7992 {
7993 return constructStrRef(
7994 "SecurityDefinitionReport_Product");
7995 }
7996
7999 std::string toString() const;
8000
8003 const void* tail() const noexcept
8004 {
8005 return
8007 (productGroup().end()));
8008 }
8009
8013 {
8014 return
8016 }
8017
8018private:
8019 void checkLength(
8020 EncodedLength length, SchemaVersion version) const
8021 {
8022 const EncodedLength minimalRequiredLength =
8023 minimalBlockLength(version) +
8025 getMinimalVariableFieldsSize(version);
8026
8028 *this, length, minimalRequiredLength);
8029 }
8030
8032 void checkVarLenFields() const
8033 {
8034 variableLengthFields().
8035 checkTail<VarString16>().
8036 checkTail<VarString16>().
8037 checkTail<VarString16>();
8038 }
8039
8040 void checkCompatibility() const
8041 {
8042 assert(TemplateId == templateId());
8043
8044 checkSchema<Schema>(schemaId(), version());
8045 checkLength(bufferSize(), version());
8046 checkVarLenFields();
8047 }
8048
8050 struct productNameAccess
8051 {
8052 VarString16& operator()(const SecurityDefinitionReport_Product& obj) const noexcept
8053 {
8054 return obj.
8055 variableLengthFields().
8056 head<VarString16>();
8057 }
8058 };
8059
8061 struct productDescAccess
8062 {
8063 VarString16& operator()(const SecurityDefinitionReport_Product& obj) const noexcept
8064 {
8065 return obj.
8066 variableLengthFields().
8067 tail<VarString16>().
8068 head<VarString16>();
8069 }
8070 };
8071
8073 struct productGroupAccess
8074 {
8075 VarString16& operator()(const SecurityDefinitionReport_Product& obj) const noexcept
8076 {
8077 return obj.
8078 variableLengthFields().
8079 tail<VarString16>().
8080 tail<VarString16>().
8081 head<VarString16>();
8082 }
8083 };
8084
8087 ThisType& productName(NullOpt) noexcept
8088 {
8089 setVariableLengthFieldToNull(
8090 productNameAccess(),
8091 *this);
8092
8093 return *this;
8094 }
8095
8098 ThisType& productDesc(NullOpt) noexcept
8099 {
8100 setVariableLengthFieldToNull(
8101 productDescAccess(),
8102 *this);
8103
8104 return *this;
8105 }
8106
8109 ThisType& productGroup(NullOpt) noexcept
8110 {
8111 setVariableLengthFieldToNull(
8112 productGroupAccess(),
8113 *this);
8114
8115 return *this;
8116 }
8117};
8118
8120struct
8122: SbeMessage
8123{
8126
8129
8131 enum { TemplateId = 2001 };
8132
8135 struct
8137 <
8139 >
8140 {
8142 typedef
8144 <
8146 >
8148
8151
8155 : Base(data, numericCast<Base::BlockLength>(length), version)
8156 {
8158 assert(length >= minimalBlockLength(version));
8159 }
8160
8163 {
8164 return *this;
8165 }
8166
8168 ThisType& reset() noexcept
8169 {
8171 return *this;
8172 }
8173
8176 auto userId() const noexcept
8177 {
8178 constexpr BlockLength offset = 0;
8179 constexpr BlockLength length = 20;
8180
8181 return fixedStr<length>(offset);
8182 }
8183
8185 ThisType& userId(StrRef value) noexcept
8186 {
8187 constexpr BlockLength offset = 0;
8188 constexpr BlockLength length = 20;
8189
8190 setFixedStr<length>(offset, value);
8191 return *this;
8192 }
8193
8196 constexpr
8198 {
8199 return
8200 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
8202 }
8203
8206 constexpr
8208 {
8209 return
8210 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
8211 20;
8212 }
8213
8216 constexpr
8217 static StrRef className() noexcept
8218 {
8219 return constructStrRef("IPRequest.UsersEntry");
8220 }
8221 };
8222
8224 typedef
8227
8229 IPRequest() = default;
8230
8233 : SbeMessage(data, length, version)
8234 {
8236 checkLength(length, version);
8238 reset();
8239 }
8240
8252
8254 IPRequest(void* data, EncodedLength length, NoInit)
8255 : SbeMessage(data, length)
8256 {
8257 checkCompatibility();
8258 }
8259
8261 explicit
8262 IPRequest(const SbeMessage& message)
8263 : SbeMessage(message)
8264 {
8265 assert(message.valid());
8266
8267 checkCompatibility();
8268 }
8269
8272 IPRequest(void* data, EncodedLength length, NoInit, NoCheck) noexcept
8273 : SbeMessage(data, length, NoCheck())
8274 {
8275 assert(schemaId() == Schema::Id);
8276 assert(version() >= Schema::MinimalVersion);
8277 assert(TemplateId == templateId());
8278 }
8279
8282 auto clientId() const noexcept
8283 {
8284 constexpr BlockLength offset = 0;
8285
8286 return ordinary<Int32>(offset);
8287 }
8288
8290 ThisType& clientId(Int32 value) noexcept
8291 {
8292 constexpr BlockLength offset = 0;
8293
8294 setOrdinary(offset, value);
8295 return *this;
8296 }
8297
8300 Users users() const noexcept
8301 {
8302 return getGroup<Users>(UsersAccess(), *this);
8303 }
8304
8307 Users users() noexcept
8308 {
8309 return getGroup<Users>(UsersAccess(), *this);
8310 }
8311
8316 {
8317 return constructGroup<Users>(
8318 UsersAccess(),
8319 length,
8320 *this);
8321 }
8322
8326 {
8327 return setupGroup<Users>(
8328 UsersAccess(),
8329 length,
8330 *this);
8331 }
8332
8334 constexpr
8336 {
8337 return
8338 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
8339 4;
8340 }
8341
8343 constexpr
8345 {
8346 return
8347 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
8349 }
8350
8353 constexpr
8355 {
8356 return
8357 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
8358 static_cast<MessageSize>(Users::EmptySize);
8359 }
8360
8363 constexpr
8364 static UInt64 getMaxMessageSize(UInt8 maxGroupItems = 255) noexcept
8365 {
8366 return
8367 static_cast<UInt64>(MessageHeaderBuilder::Size) +
8369 (GroupSizeEncoding::Size + UsersEntry::blockLength(Schema::Version) * static_cast<UInt64>(maxGroupItems));
8370 }
8371
8374 {
8375 users(nullOpt);
8376 return *this;
8377 }
8378
8380 ThisType& reset() noexcept
8381 {
8383 return *this;
8384 }
8385
8388 constexpr
8389 static StrRef className() noexcept
8390 {
8391 return constructStrRef("IPRequest");
8392 }
8393
8396 constexpr
8397 static StrRef fixType() noexcept
8398 {
8399 return constructStrRef("IPRequest");
8400 }
8401
8404 std::string toString() const;
8405
8408 const void* tail() const noexcept
8409 {
8410 return
8411 users().tail();
8412 }
8413
8417 {
8418 return
8420 }
8421
8422private:
8423 void checkLength(
8424 EncodedLength length, SchemaVersion version) const
8425 {
8426 const EncodedLength minimalRequiredLength =
8427 minimalBlockLength(version) +
8429 getMinimalVariableFieldsSize(version);
8430
8432 *this, length, minimalRequiredLength);
8433 }
8434
8436 void checkVarLenFields() const
8437 {
8438 groups().
8439 checkTail<Users>();
8440 }
8441
8442 void checkCompatibility() const
8443 {
8444 assert(TemplateId == templateId());
8445
8446 checkSchema<Schema>(schemaId(), version());
8447 checkLength(bufferSize(), version());
8448 checkVarLenFields();
8449 }
8450
8452 struct UsersAccess
8453 {
8454 Users operator()(const IPRequest& obj) const noexcept
8455 {
8456 return obj.
8457 groups().
8458 head<Users>();
8459 }
8460 };
8461
8464 void users(NullOpt) noexcept
8465 {
8466 resetGroup<Users>(UsersAccess(), *this);
8467 }
8468};
8469
8471struct
8473: SbeMessage
8474{
8477
8480
8482 enum { TemplateId = 2002 };
8483
8486 struct
8488 <
8490 >
8491 {
8493 typedef
8495 <
8497 >
8499
8502
8506 : Base(data, numericCast<Base::BlockLength>(length), version)
8507 {
8509 assert(length >= minimalBlockLength(version));
8510 }
8511
8514 {
8515 return *this;
8516 }
8517
8519 ThisType& reset() noexcept
8520 {
8523 port(nullOpt);
8525
8527 return *this;
8528 }
8529
8532 auto userId() const noexcept
8533 {
8534 constexpr BlockLength offset = 0;
8535 constexpr BlockLength length = 20;
8536
8537 return fixedStr<length>(offset);
8538 }
8539
8541 ThisType& userId(StrRef value) noexcept
8542 {
8543 constexpr BlockLength offset = 0;
8544 constexpr BlockLength length = 20;
8545
8546 setFixedStr<length>(offset, value);
8547 return *this;
8548 }
8549
8552 auto success() const noexcept
8553 {
8554 constexpr BlockLength offset = 20;
8555
8557 }
8558
8561 {
8562 constexpr BlockLength offset = 20;
8563
8564 setEnumeration<BooleanEnum>(offset, value);
8565 return *this;
8566 }
8567
8569 {
8570 constexpr BlockLength offset = 20;
8571
8572 setOrdinary(offset, NullUint8NULL());
8573 return *this;
8574 }
8575
8578 auto ipAddress() const noexcept
8579 {
8580 constexpr BlockLength offset = 21;
8581 constexpr BlockLength length = 15;
8582
8583 return fixedStr<length>(offset, optional);
8584 }
8585
8587 ThisType& ipAddress(StrRef value) noexcept
8588 {
8589 constexpr BlockLength offset = 21;
8590 constexpr BlockLength length = 15;
8591
8592 setFixedStr<length>(offset, value);
8593 return *this;
8594 }
8595
8597 {
8598 constexpr BlockLength offset = 21;
8599 constexpr BlockLength length = 15;
8600
8601 setFixedStr<length>(offset, StrRef());
8602 return *this;
8603 }
8604
8607 auto port() const noexcept
8608 {
8609 constexpr BlockLength offset = 36;
8610
8611 return ordinary<NullInt16NULL>(offset, optional);
8612 }
8613
8615 ThisType& port(Int16NULL value) noexcept
8616 {
8617 constexpr BlockLength offset = 36;
8618
8619 setOrdinary(offset, value);
8620 return *this;
8621 }
8622
8624 {
8625 constexpr BlockLength offset = 36;
8626
8627 setOrdinary(offset, NullInt16NULL());
8628 return *this;
8629 }
8630
8634 auto ipSessionToken() const noexcept
8635 {
8636 constexpr BlockLength offset = 38;
8637 constexpr BlockLength length = 50;
8638
8639 return fixedStr<length>(offset, optional);
8640 }
8641
8645 {
8646 constexpr BlockLength offset = 38;
8647 constexpr BlockLength length = 50;
8648
8649 setFixedStr<length>(offset, value);
8650 return *this;
8651 }
8652
8654 {
8655 constexpr BlockLength offset = 38;
8656 constexpr BlockLength length = 50;
8657
8658 setFixedStr<length>(offset, StrRef());
8659 return *this;
8660 }
8661
8664 constexpr
8666 {
8667 return
8668 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
8670 }
8671
8674 constexpr
8676 {
8677 return
8678 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
8679 88;
8680 }
8681
8684 constexpr
8685 static StrRef className() noexcept
8686 {
8687 return constructStrRef("IPReport.UsersEntry");
8688 }
8689 };
8690
8692 typedef
8695
8697 IPReport() = default;
8698
8701 : SbeMessage(data, length, version)
8702 {
8704 checkLength(length, version);
8706 reset();
8707 }
8708
8720
8722 IPReport(void* data, EncodedLength length, NoInit)
8723 : SbeMessage(data, length)
8724 {
8725 checkCompatibility();
8726 }
8727
8729 explicit
8730 IPReport(const SbeMessage& message)
8731 : SbeMessage(message)
8732 {
8733 assert(message.valid());
8734
8735 checkCompatibility();
8736 }
8737
8740 IPReport(void* data, EncodedLength length, NoInit, NoCheck) noexcept
8741 : SbeMessage(data, length, NoCheck())
8742 {
8743 assert(schemaId() == Schema::Id);
8744 assert(version() >= Schema::MinimalVersion);
8745 assert(TemplateId == templateId());
8746 }
8747
8750 auto exchangeCode() const noexcept
8751 {
8752 constexpr BlockLength offset = 0;
8753
8754 return ordinary<NullInt32NULL>(offset, optional);
8755 }
8756
8759 {
8760 constexpr BlockLength offset = 0;
8761
8762 setOrdinary(offset, value);
8763 return *this;
8764 }
8765
8767 {
8768 constexpr BlockLength offset = 0;
8769
8770 setOrdinary(offset, NullInt32NULL());
8771 return *this;
8772 }
8773
8776 auto text() const noexcept
8777 {
8778 constexpr BlockLength offset = 4;
8779 constexpr BlockLength length = 100;
8780
8781 return fixedStr<length>(offset, optional);
8782 }
8783
8785 ThisType& text(StrRef value) noexcept
8786 {
8787 constexpr BlockLength offset = 4;
8788 constexpr BlockLength length = 100;
8789
8790 setFixedStr<length>(offset, value);
8791 return *this;
8792 }
8793
8795 {
8796 constexpr BlockLength offset = 4;
8797 constexpr BlockLength length = 100;
8798
8799 setFixedStr<length>(offset, StrRef());
8800 return *this;
8801 }
8802
8805 Users users() const noexcept
8806 {
8807 return getGroup<Users>(UsersAccess(), *this);
8808 }
8809
8812 Users users() noexcept
8813 {
8814 return getGroup<Users>(UsersAccess(), *this);
8815 }
8816
8821 {
8822 return constructGroup<Users>(
8823 UsersAccess(),
8824 length,
8825 *this);
8826 }
8827
8831 {
8832 return setupGroup<Users>(
8833 UsersAccess(),
8834 length,
8835 *this);
8836 }
8837
8839 constexpr
8841 {
8842 return
8843 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
8844 104;
8845 }
8846
8848 constexpr
8850 {
8851 return
8852 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
8854 }
8855
8858 constexpr
8860 {
8861 return
8862 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
8863 static_cast<MessageSize>(Users::EmptySize);
8864 }
8865
8868 constexpr
8869 static UInt64 getMaxMessageSize(UInt8 maxGroupItems = 255) noexcept
8870 {
8871 return
8872 static_cast<UInt64>(MessageHeaderBuilder::Size) +
8874 (GroupSizeEncoding::Size + UsersEntry::blockLength(Schema::Version) * static_cast<UInt64>(maxGroupItems));
8875 }
8876
8879 {
8880 users(nullOpt);
8881 return *this;
8882 }
8883
8885 ThisType& reset() noexcept
8886 {
8888 text(nullOpt);
8889
8891 return *this;
8892 }
8893
8896 constexpr
8897 static StrRef className() noexcept
8898 {
8899 return constructStrRef("IPReport");
8900 }
8901
8904 constexpr
8905 static StrRef fixType() noexcept
8906 {
8907 return constructStrRef("IPReport");
8908 }
8909
8912 std::string toString() const;
8913
8916 const void* tail() const noexcept
8917 {
8918 return
8919 users().tail();
8920 }
8921
8925 {
8926 return
8928 }
8929
8930private:
8931 void checkLength(
8932 EncodedLength length, SchemaVersion version) const
8933 {
8934 const EncodedLength minimalRequiredLength =
8935 minimalBlockLength(version) +
8937 getMinimalVariableFieldsSize(version);
8938
8940 *this, length, minimalRequiredLength);
8941 }
8942
8944 void checkVarLenFields() const
8945 {
8946 groups().
8947 checkTail<Users>();
8948 }
8949
8950 void checkCompatibility() const
8951 {
8952 assert(TemplateId == templateId());
8953
8954 checkSchema<Schema>(schemaId(), version());
8955 checkLength(bufferSize(), version());
8956 checkVarLenFields();
8957 }
8958
8960 struct UsersAccess
8961 {
8962 Users operator()(const IPReport& obj) const noexcept
8963 {
8964 return obj.
8965 groups().
8966 head<Users>();
8967 }
8968 };
8969
8972 void users(NullOpt) noexcept
8973 {
8974 resetGroup<Users>(UsersAccess(), *this);
8975 }
8976};
8977
8979struct
8981: SbeMessage
8982{
8985
8988
8990 enum { TemplateId = 2 };
8991
8994
8997 : SbeMessage(data, length, version)
8998 {
9000 checkLength(length, version);
9002 reset();
9003 }
9004
9016
9019 : SbeMessage(data, length)
9020 {
9021 checkCompatibility();
9022 }
9023
9025 explicit
9027 : SbeMessage(message)
9028 {
9029 assert(message.valid());
9030
9031 checkCompatibility();
9032 }
9033
9036 TraderLogonRequest(void* data, EncodedLength length, NoInit, NoCheck) noexcept
9037 : SbeMessage(data, length, NoCheck())
9038 {
9039 assert(schemaId() == Schema::Id);
9040 assert(version() >= Schema::MinimalVersion);
9041 assert(TemplateId == templateId());
9042 }
9043
9046 auto originatorUserId() const noexcept
9047 {
9048 constexpr BlockLength offset = 0;
9049 constexpr BlockLength length = 20;
9050
9051 return fixedStr<length>(offset);
9052 }
9053
9056 {
9057 constexpr BlockLength offset = 0;
9058 constexpr BlockLength length = 20;
9059
9060 setFixedStr<length>(offset, value);
9061 return *this;
9062 }
9063
9066 auto directElectronicAccess() const noexcept
9067 {
9068 constexpr BlockLength offset = 20;
9069
9071 }
9072
9075 {
9076 constexpr BlockLength offset = 20;
9077
9078 setEnumeration<BooleanEnum>(offset, value);
9079 return *this;
9080 }
9081
9083 {
9084 constexpr BlockLength offset = 20;
9085
9086 setOrdinary(offset, NullUint8NULL());
9087 return *this;
9088 }
9089
9092 auto tradingCapacity() const noexcept
9093 {
9094 constexpr BlockLength offset = 21;
9095
9097 }
9098
9101 {
9102 constexpr BlockLength offset = 21;
9103
9105 return *this;
9106 }
9107
9109 {
9110 constexpr BlockLength offset = 21;
9111
9112 setOrdinary(offset, NullUint8NULL());
9113 return *this;
9114 }
9115
9118 auto liquidityProvision() const noexcept
9119 {
9120 constexpr BlockLength offset = 22;
9121
9123 }
9124
9127 {
9128 constexpr BlockLength offset = 22;
9129
9130 setEnumeration<BooleanEnum>(offset, value);
9131 return *this;
9132 }
9133
9135 {
9136 constexpr BlockLength offset = 22;
9137
9138 setOrdinary(offset, NullUint8NULL());
9139 return *this;
9140 }
9141
9144 auto commodityDerivIndicator() const noexcept
9145 {
9146 constexpr BlockLength offset = 23;
9147
9149 }
9150
9153 {
9154 constexpr BlockLength offset = 23;
9155
9156 setEnumeration<BooleanEnum>(offset, value);
9157 return *this;
9158 }
9159
9161 {
9162 constexpr BlockLength offset = 23;
9163
9164 setOrdinary(offset, NullUint8NULL());
9165 return *this;
9166 }
9167
9170 auto investmentDecision() const noexcept
9171 {
9172 constexpr BlockLength offset = 24;
9173
9174 return ordinary<NullInt64NULL>(offset, optional);
9175 }
9176
9179 {
9180 constexpr BlockLength offset = 24;
9181
9182 setOrdinary(offset, value);
9183 return *this;
9184 }
9185
9187 {
9188 constexpr BlockLength offset = 24;
9189
9190 setOrdinary(offset, NullInt64NULL());
9191 return *this;
9192 }
9193
9196 auto executionDecision() const noexcept
9197 {
9198 constexpr BlockLength offset = 32;
9199
9200 return ordinary<NullInt64NULL>(offset, optional);
9201 }
9202
9205 {
9206 constexpr BlockLength offset = 32;
9207
9208 setOrdinary(offset, value);
9209 return *this;
9210 }
9211
9213 {
9214 constexpr BlockLength offset = 32;
9215
9216 setOrdinary(offset, NullInt64NULL());
9217 return *this;
9218 }
9219
9222 auto clientIdCode() const noexcept
9223 {
9224 constexpr BlockLength offset = 40;
9225
9226 return ordinary<NullInt64NULL>(offset, optional);
9227 }
9228
9231 {
9232 constexpr BlockLength offset = 40;
9233
9234 setOrdinary(offset, value);
9235 return *this;
9236 }
9237
9239 {
9240 constexpr BlockLength offset = 40;
9241
9242 setOrdinary(offset, NullInt64NULL());
9243 return *this;
9244 }
9245
9248 auto mifidId() const noexcept
9249 {
9250 constexpr BlockLength offset = 48;
9251
9252 return ordinary<NullInt64NULL>(offset, optional);
9253 }
9254
9256 ThisType& mifidId(Int64NULL value) noexcept
9257 {
9258 constexpr BlockLength offset = 48;
9259
9260 setOrdinary(offset, value);
9261 return *this;
9262 }
9263
9265 {
9266 constexpr BlockLength offset = 48;
9267
9268 setOrdinary(offset, NullInt64NULL());
9269 return *this;
9270 }
9271
9274 auto rawData() const noexcept
9275 {
9276 constexpr BlockLength offset = 56;
9277 constexpr BlockLength length = 50;
9278
9279 return fixedStr<length>(offset);
9280 }
9281
9283 ThisType& rawData(StrRef value) noexcept
9284 {
9285 constexpr BlockLength offset = 56;
9286 constexpr BlockLength length = 50;
9287
9288 setFixedStr<length>(offset, value);
9289 return *this;
9290 }
9291
9293 constexpr
9295 {
9296 return
9297 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
9298 106;
9299 }
9300
9302 constexpr
9304 {
9305 return
9306 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
9308 }
9309
9312 constexpr
9314 {
9315 return
9316 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
9317 0;
9318 }
9319
9322 constexpr
9324 {
9325 return
9326 static_cast<UInt64>(MessageHeaderBuilder::Size) +
9328 }
9329
9332 {
9333 return *this;
9334 }
9335
9351
9354 constexpr
9355 static StrRef className() noexcept
9356 {
9357 return constructStrRef("TraderLogonRequest");
9358 }
9359
9362 constexpr
9363 static StrRef fixType() noexcept
9364 {
9365 return constructStrRef("TraderLogonRequest");
9366 }
9367
9370 std::string toString() const;
9371
9374 const void* tail() const noexcept
9375 {
9376 return
9379 binary(),
9380 static_cast<ptrdiff_t>(SbeMessage::blockLength()) +
9382 }
9383
9387 {
9388 return
9390 }
9391
9392private:
9393 void checkLength(
9394 EncodedLength length, SchemaVersion version) const
9395 {
9396 const EncodedLength minimalRequiredLength =
9397 minimalBlockLength(version) +
9399 getMinimalVariableFieldsSize(version);
9400
9402 *this, length, minimalRequiredLength);
9403 }
9404
9405 void checkCompatibility() const
9406 {
9407 assert(TemplateId == templateId());
9408
9409 checkSchema<Schema>(schemaId(), version());
9410 checkLength(bufferSize(), version());
9411 }
9412};
9413
9415struct
9417: SbeMessage
9418{
9421
9424
9426 enum { TemplateId = 102 };
9427
9430
9433 : SbeMessage(data, length, version)
9434 {
9436 checkLength(length, version);
9438 reset();
9439 }
9440
9452
9455 : SbeMessage(data, length)
9456 {
9457 checkCompatibility();
9458 }
9459
9461 explicit
9463 : SbeMessage(message)
9464 {
9465 assert(message.valid());
9466
9467 checkCompatibility();
9468 }
9469
9472 TraderLogonReport(void* data, EncodedLength length, NoInit, NoCheck) noexcept
9473 : SbeMessage(data, length, NoCheck())
9474 {
9475 assert(schemaId() == Schema::Id);
9476 assert(version() >= Schema::MinimalVersion);
9477 assert(TemplateId == templateId());
9478 }
9479
9482 auto originatorUserId() const noexcept
9483 {
9484 constexpr BlockLength offset = 0;
9485 constexpr BlockLength length = 20;
9486
9487 return fixedStr<length>(offset);
9488 }
9489
9492 {
9493 constexpr BlockLength offset = 0;
9494 constexpr BlockLength length = 20;
9495
9496 setFixedStr<length>(offset, value);
9497 return *this;
9498 }
9499
9502 auto clientId() const noexcept
9503 {
9504 constexpr BlockLength offset = 20;
9505
9506 return ordinary<Int32>(offset);
9507 }
9508
9510 ThisType& clientId(Int32 value) noexcept
9511 {
9512 constexpr BlockLength offset = 20;
9513
9514 setOrdinary(offset, value);
9515 return *this;
9516 }
9517
9520 auto exchangeCode() const noexcept
9521 {
9522 constexpr BlockLength offset = 24;
9523
9524 return ordinary<NullInt32NULL>(offset, optional);
9525 }
9526
9529 {
9530 constexpr BlockLength offset = 24;
9531
9532 setOrdinary(offset, value);
9533 return *this;
9534 }
9535
9537 {
9538 constexpr BlockLength offset = 24;
9539
9540 setOrdinary(offset, NullInt32NULL());
9541 return *this;
9542 }
9543
9546 auto text() const noexcept
9547 {
9548 constexpr BlockLength offset = 28;
9549 constexpr BlockLength length = 100;
9550
9551 return fixedStr<length>(offset, optional);
9552 }
9553
9555 ThisType& text(StrRef value) noexcept
9556 {
9557 constexpr BlockLength offset = 28;
9558 constexpr BlockLength length = 100;
9559
9560 setFixedStr<length>(offset, value);
9561 return *this;
9562 }
9563
9565 {
9566 constexpr BlockLength offset = 28;
9567 constexpr BlockLength length = 100;
9568
9569 setFixedStr<length>(offset, StrRef());
9570 return *this;
9571 }
9572
9574 constexpr
9576 {
9577 return
9578 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
9579 128;
9580 }
9581
9583 constexpr
9585 {
9586 return
9587 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
9589 }
9590
9593 constexpr
9595 {
9596 return
9597 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
9598 0;
9599 }
9600
9603 constexpr
9605 {
9606 return
9607 static_cast<UInt64>(MessageHeaderBuilder::Size) +
9609 }
9610
9613 {
9614 return *this;
9615 }
9616
9618 ThisType& reset() noexcept
9619 {
9621 text(nullOpt);
9622
9624 return *this;
9625 }
9626
9629 constexpr
9630 static StrRef className() noexcept
9631 {
9632 return constructStrRef("TraderLogonReport");
9633 }
9634
9637 constexpr
9638 static StrRef fixType() noexcept
9639 {
9640 return constructStrRef("TraderLogonReport");
9641 }
9642
9645 std::string toString() const;
9646
9649 const void* tail() const noexcept
9650 {
9651 return
9654 binary(),
9655 static_cast<ptrdiff_t>(SbeMessage::blockLength()) +
9657 }
9658
9662 {
9663 return
9665 }
9666
9667private:
9668 void checkLength(
9669 EncodedLength length, SchemaVersion version) const
9670 {
9671 const EncodedLength minimalRequiredLength =
9672 minimalBlockLength(version) +
9674 getMinimalVariableFieldsSize(version);
9675
9677 *this, length, minimalRequiredLength);
9678 }
9679
9680 void checkCompatibility() const
9681 {
9682 assert(TemplateId == templateId());
9683
9684 checkSchema<Schema>(schemaId(), version());
9685 checkLength(bufferSize(), version());
9686 }
9687};
9688
9690struct
9692: SbeMessage
9693{
9696
9699
9701 enum { TemplateId = 3 };
9702
9705
9708 : SbeMessage(data, length, version)
9709 {
9711 checkLength(length, version);
9713 reset();
9714 }
9715
9727
9730 : SbeMessage(data, length)
9731 {
9732 checkCompatibility();
9733 }
9734
9736 explicit
9738 : SbeMessage(message)
9739 {
9740 assert(message.valid());
9741
9742 checkCompatibility();
9743 }
9744
9747 TraderLogoutRequest(void* data, EncodedLength length, NoInit, NoCheck) noexcept
9748 : SbeMessage(data, length, NoCheck())
9749 {
9750 assert(schemaId() == Schema::Id);
9751 assert(version() >= Schema::MinimalVersion);
9752 assert(TemplateId == templateId());
9753 }
9754
9757 auto originatorUserId() const noexcept
9758 {
9759 constexpr BlockLength offset = 0;
9760 constexpr BlockLength length = 20;
9761
9762 return fixedStr<length>(offset);
9763 }
9764
9767 {
9768 constexpr BlockLength offset = 0;
9769 constexpr BlockLength length = 20;
9770
9771 setFixedStr<length>(offset, value);
9772 return *this;
9773 }
9774
9776 constexpr
9778 {
9779 return
9780 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
9781 20;
9782 }
9783
9785 constexpr
9787 {
9788 return
9789 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
9791 }
9792
9795 constexpr
9797 {
9798 return
9799 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
9800 0;
9801 }
9802
9805 constexpr
9807 {
9808 return
9809 static_cast<UInt64>(MessageHeaderBuilder::Size) +
9811 }
9812
9815 {
9816 return *this;
9817 }
9818
9820 ThisType& reset() noexcept
9821 {
9823 return *this;
9824 }
9825
9828 constexpr
9829 static StrRef className() noexcept
9830 {
9831 return constructStrRef("TraderLogoutRequest");
9832 }
9833
9836 constexpr
9837 static StrRef fixType() noexcept
9838 {
9839 return constructStrRef("TraderLogoutRequest");
9840 }
9841
9844 std::string toString() const;
9845
9848 const void* tail() const noexcept
9849 {
9850 return
9853 binary(),
9854 static_cast<ptrdiff_t>(SbeMessage::blockLength()) +
9856 }
9857
9861 {
9862 return
9864 }
9865
9866private:
9867 void checkLength(
9868 EncodedLength length, SchemaVersion version) const
9869 {
9870 const EncodedLength minimalRequiredLength =
9871 minimalBlockLength(version) +
9873 getMinimalVariableFieldsSize(version);
9874
9876 *this, length, minimalRequiredLength);
9877 }
9878
9879 void checkCompatibility() const
9880 {
9881 assert(TemplateId == templateId());
9882
9883 checkSchema<Schema>(schemaId(), version());
9884 checkLength(bufferSize(), version());
9885 }
9886};
9887
9889struct
9891: SbeMessage
9892{
9895
9898
9900 enum { TemplateId = 103 };
9901
9904
9907 : SbeMessage(data, length, version)
9908 {
9910 checkLength(length, version);
9912 reset();
9913 }
9914
9926
9929 : SbeMessage(data, length)
9930 {
9931 checkCompatibility();
9932 }
9933
9935 explicit
9937 : SbeMessage(message)
9938 {
9939 assert(message.valid());
9940
9941 checkCompatibility();
9942 }
9943
9946 TraderLogoutReport(void* data, EncodedLength length, NoInit, NoCheck) noexcept
9947 : SbeMessage(data, length, NoCheck())
9948 {
9949 assert(schemaId() == Schema::Id);
9950 assert(version() >= Schema::MinimalVersion);
9951 assert(TemplateId == templateId());
9952 }
9953
9956 auto originatorUserId() const noexcept
9957 {
9958 constexpr BlockLength offset = 0;
9959 constexpr BlockLength length = 20;
9960
9961 return fixedStr<length>(offset);
9962 }
9963
9966 {
9967 constexpr BlockLength offset = 0;
9968 constexpr BlockLength length = 20;
9969
9970 setFixedStr<length>(offset, value);
9971 return *this;
9972 }
9973
9976 auto exchangeCode() const noexcept
9977 {
9978 constexpr BlockLength offset = 20;
9979
9980 return ordinary<NullInt32NULL>(offset, optional);
9981 }
9982
9985 {
9986 constexpr BlockLength offset = 20;
9987
9988 setOrdinary(offset, value);
9989 return *this;
9990 }
9991
9993 {
9994 constexpr BlockLength offset = 20;
9995
9996 setOrdinary(offset, NullInt32NULL());
9997 return *this;
9998 }
9999
10002 auto text() const noexcept
10003 {
10004 constexpr BlockLength offset = 24;
10005 constexpr BlockLength length = 100;
10006
10007 return fixedStr<length>(offset, optional);
10008 }
10009
10011 ThisType& text(StrRef value) noexcept
10012 {
10013 constexpr BlockLength offset = 24;
10014 constexpr BlockLength length = 100;
10015
10016 setFixedStr<length>(offset, value);
10017 return *this;
10018 }
10019
10021 {
10022 constexpr BlockLength offset = 24;
10023 constexpr BlockLength length = 100;
10024
10025 setFixedStr<length>(offset, StrRef());
10026 return *this;
10027 }
10028
10030 constexpr
10032 {
10033 return
10034 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
10035 124;
10036 }
10037
10039 constexpr
10041 {
10042 return
10043 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
10045 }
10046
10049 constexpr
10051 {
10052 return
10053 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
10054 0;
10055 }
10056
10059 constexpr
10061 {
10062 return
10063 static_cast<UInt64>(MessageHeaderBuilder::Size) +
10065 }
10066
10069 {
10070 return *this;
10071 }
10072
10074 ThisType& reset() noexcept
10075 {
10077 text(nullOpt);
10078
10080 return *this;
10081 }
10082
10085 constexpr
10086 static StrRef className() noexcept
10087 {
10088 return constructStrRef("TraderLogoutReport");
10089 }
10090
10093 constexpr
10094 static StrRef fixType() noexcept
10095 {
10096 return constructStrRef("TraderLogoutReport");
10097 }
10098
10101 std::string toString() const;
10102
10105 const void* tail() const noexcept
10106 {
10107 return
10110 binary(),
10111 static_cast<ptrdiff_t>(SbeMessage::blockLength()) +
10113 }
10114
10118 {
10119 return
10121 }
10122
10123private:
10124 void checkLength(
10125 EncodedLength length, SchemaVersion version) const
10126 {
10127 const EncodedLength minimalRequiredLength =
10128 minimalBlockLength(version) +
10130 getMinimalVariableFieldsSize(version);
10131
10133 *this, length, minimalRequiredLength);
10134 }
10135
10136 void checkCompatibility() const
10137 {
10138 assert(TemplateId == templateId());
10139
10140 checkSchema<Schema>(schemaId(), version());
10141 checkLength(bufferSize(), version());
10142 }
10143};
10144
10146struct
10148: SbeMessage
10149{
10152
10155
10157 enum { TemplateId = 4 };
10158
10160 NewOrderRequest() = default;
10161
10164 : SbeMessage(data, length, version)
10165 {
10167 checkLength(length, version);
10169 reset();
10170 }
10171
10183
10186 : SbeMessage(data, length)
10187 {
10188 checkCompatibility();
10189 }
10190
10192 explicit
10194 : SbeMessage(message)
10195 {
10196 assert(message.valid());
10197
10198 checkCompatibility();
10199 }
10200
10203 NewOrderRequest(void* data, EncodedLength length, NoInit, NoCheck) noexcept
10204 : SbeMessage(data, length, NoCheck())
10205 {
10206 assert(schemaId() == Schema::Id);
10207 assert(version() >= Schema::MinimalVersion);
10208 assert(TemplateId == templateId());
10209 }
10210
10213 auto price() const noexcept
10214 {
10215 constexpr BlockLength offset = 0;
10216
10217 return ordinary<NullDecimal9>(offset, optional);
10218 }
10219
10221 ThisType& price(Decimal9 value) noexcept
10222 {
10223 constexpr BlockLength offset = 0;
10224
10225 setOrdinary(offset, value);
10226 return *this;
10227 }
10228
10230 {
10231 constexpr BlockLength offset = 0;
10232
10233 setOrdinary(offset, NullDecimal9());
10234 return *this;
10235 }
10236
10239 auto orderQty() const noexcept
10240 {
10241 constexpr BlockLength offset = 8;
10242
10243 return ordinary<Decimal9>(offset);
10244 }
10245
10247 ThisType& orderQty(Decimal9 value) noexcept
10248 {
10249 constexpr BlockLength offset = 8;
10250
10251 setOrdinary(offset, value);
10252 return *this;
10253 }
10254
10257 auto symbol() const noexcept
10258 {
10259 constexpr BlockLength offset = 16;
10260
10261 return ordinary<Int32>(offset);
10262 }
10263
10265 ThisType& symbol(Int32 value) noexcept
10266 {
10267 constexpr BlockLength offset = 16;
10268
10269 setOrdinary(offset, value);
10270 return *this;
10271 }
10272
10275 auto timeInForce() const noexcept
10276 {
10277 constexpr BlockLength offset = 20;
10278
10279 return enumeration<TimeInForceEnum>(offset);
10280 }
10281
10284 {
10285 constexpr BlockLength offset = 20;
10286
10287 setEnumeration<TimeInForceEnum>(offset, value);
10288 return *this;
10289 }
10290
10293 auto side() const noexcept
10294 {
10295 constexpr BlockLength offset = 21;
10296
10297 return enumeration<SideEnum>(offset);
10298 }
10299
10301 ThisType& side(SideEnum value) noexcept
10302 {
10303 constexpr BlockLength offset = 21;
10304
10305 setEnumeration<SideEnum>(offset, value);
10306 return *this;
10307 }
10308
10311 auto originatorUserId() const noexcept
10312 {
10313 constexpr BlockLength offset = 22;
10314 constexpr BlockLength length = 20;
10315
10316 return fixedStr<length>(offset);
10317 }
10318
10321 {
10322 constexpr BlockLength offset = 22;
10323 constexpr BlockLength length = 20;
10324
10325 setFixedStr<length>(offset, value);
10326 return *this;
10327 }
10328
10331 auto ordType() const noexcept
10332 {
10333 constexpr BlockLength offset = 42;
10334
10335 return enumeration<OrderTypeEnum>(offset);
10336 }
10337
10340 {
10341 constexpr BlockLength offset = 42;
10342
10343 setEnumeration<OrderTypeEnum>(offset, value);
10344 return *this;
10345 }
10346
10349 auto manualOrderIndicator() const noexcept
10350 {
10351 constexpr BlockLength offset = 43;
10352
10354 }
10355
10358 {
10359 constexpr BlockLength offset = 43;
10360
10361 setEnumeration<BooleanEnum>(offset, value);
10362 return *this;
10363 }
10364
10366 {
10367 constexpr BlockLength offset = 43;
10368
10369 setOrdinary(offset, NullUint8NULL());
10370 return *this;
10371 }
10372
10375 auto clOrdId() const noexcept
10376 {
10377 constexpr BlockLength offset = 44;
10378
10379 return ordinary<Int64>(offset);
10380 }
10381
10383 ThisType& clOrdId(Int64 value) noexcept
10384 {
10385 constexpr BlockLength offset = 44;
10386
10387 setOrdinary(offset, value);
10388 return *this;
10389 }
10390
10393 auto maxShow() const noexcept
10394 {
10395 constexpr BlockLength offset = 52;
10396
10397 return ordinary<NullDecimal9>(offset, optional);
10398 }
10399
10401 ThisType& maxShow(Decimal9 value) noexcept
10402 {
10403 constexpr BlockLength offset = 52;
10404
10405 setOrdinary(offset, value);
10406 return *this;
10407 }
10408
10410 {
10411 constexpr BlockLength offset = 52;
10412
10413 setOrdinary(offset, NullDecimal9());
10414 return *this;
10415 }
10416
10419 auto stopPx() const noexcept
10420 {
10421 constexpr BlockLength offset = 60;
10422
10423 return ordinary<NullDecimal9>(offset, optional);
10424 }
10425
10427 ThisType& stopPx(Decimal9 value) noexcept
10428 {
10429 constexpr BlockLength offset = 60;
10430
10431 setOrdinary(offset, value);
10432 return *this;
10433 }
10434
10436 {
10437 constexpr BlockLength offset = 60;
10438
10439 setOrdinary(offset, NullDecimal9());
10440 return *this;
10441 }
10442
10445 auto giveUpClearingFirm() const noexcept
10446 {
10447 constexpr BlockLength offset = 68;
10448
10449 return ordinary<NullInt32NULL>(offset, optional);
10450 }
10451
10454 {
10455 constexpr BlockLength offset = 68;
10456
10457 setOrdinary(offset, value);
10458 return *this;
10459 }
10460
10462 {
10463 constexpr BlockLength offset = 68;
10464
10465 setOrdinary(offset, NullInt32NULL());
10466 return *this;
10467 }
10468
10471 auto clearingFirm() const noexcept
10472 {
10473 constexpr BlockLength offset = 72;
10474
10475 return ordinary<Int32>(offset);
10476 }
10477
10479 ThisType& clearingFirm(Int32 value) noexcept
10480 {
10481 constexpr BlockLength offset = 72;
10482
10483 setOrdinary(offset, value);
10484 return *this;
10485 }
10486
10489 auto selfMatchPreventionId() const noexcept
10490 {
10491 constexpr BlockLength offset = 76;
10492
10493 return ordinary<NullInt64NULL>(offset, optional);
10494 }
10495
10498 {
10499 constexpr BlockLength offset = 76;
10500
10501 setOrdinary(offset, value);
10502 return *this;
10503 }
10504
10506 {
10507 constexpr BlockLength offset = 76;
10508
10509 setOrdinary(offset, NullInt64NULL());
10510 return *this;
10511 }
10512
10515 auto expireDate() const noexcept(dateToTimestamp::Nothrow)
10516 {
10517 constexpr BlockLength offset = 84;
10519 }
10520
10522 ThisType& expireDate(Timestamp value) noexcept(timestampToDate::Nothrow)
10523 {
10524 constexpr BlockLength offset = 84;
10525
10526 setOrdinary(offset, convert<timestampToDate>(value));
10527 return *this;
10528 }
10529
10531 {
10532 constexpr BlockLength offset = 84;
10533
10534 setOrdinary(offset, NullUTCDateOnly());
10535 return *this;
10536 }
10537
10541 {
10542 constexpr BlockLength offset = 86;
10543
10545 }
10546
10549 {
10550 constexpr BlockLength offset = 86;
10551
10553 return *this;
10554 }
10555
10557 {
10558 constexpr BlockLength offset = 86;
10559
10560 setOrdinary(offset, NullCharType());
10561 return *this;
10562 }
10563
10566 auto execInst() const noexcept
10567 {
10568 constexpr BlockLength offset = 87;
10569
10571 }
10572
10575 {
10576 constexpr BlockLength offset = 87;
10577
10578 setEnumeration<ExecInstEnum>(offset, value);
10579 return *this;
10580 }
10581
10583 {
10584 constexpr BlockLength offset = 87;
10585
10586 setOrdinary(offset, NullCharType());
10587 return *this;
10588 }
10589
10592 auto directElectronicAccess() const noexcept
10593 {
10594 constexpr BlockLength offset = 88;
10595
10597 }
10598
10601 {
10602 constexpr BlockLength offset = 88;
10603
10604 setEnumeration<BooleanEnum>(offset, value);
10605 return *this;
10606 }
10607
10609 {
10610 constexpr BlockLength offset = 88;
10611
10612 setOrdinary(offset, NullUint8NULL());
10613 return *this;
10614 }
10615
10618 auto tradingCapacity() const noexcept
10619 {
10620 constexpr BlockLength offset = 89;
10621
10623 }
10624
10627 {
10628 constexpr BlockLength offset = 89;
10629
10631 return *this;
10632 }
10633
10635 {
10636 constexpr BlockLength offset = 89;
10637
10638 setOrdinary(offset, NullUint8NULL());
10639 return *this;
10640 }
10641
10644 auto liquidityProvision() const noexcept
10645 {
10646 constexpr BlockLength offset = 90;
10647
10649 }
10650
10653 {
10654 constexpr BlockLength offset = 90;
10655
10656 setEnumeration<BooleanEnum>(offset, value);
10657 return *this;
10658 }
10659
10661 {
10662 constexpr BlockLength offset = 90;
10663
10664 setOrdinary(offset, NullUint8NULL());
10665 return *this;
10666 }
10667
10670 auto commodityDerivIndicator() const noexcept
10671 {
10672 constexpr BlockLength offset = 91;
10673
10675 }
10676
10679 {
10680 constexpr BlockLength offset = 91;
10681
10682 setEnumeration<BooleanEnum>(offset, value);
10683 return *this;
10684 }
10685
10687 {
10688 constexpr BlockLength offset = 91;
10689
10690 setOrdinary(offset, NullUint8NULL());
10691 return *this;
10692 }
10693
10696 auto investmentDecision() const noexcept
10697 {
10698 constexpr BlockLength offset = 92;
10699
10700 return ordinary<NullInt64NULL>(offset, optional);
10701 }
10702
10705 {
10706 constexpr BlockLength offset = 92;
10707
10708 setOrdinary(offset, value);
10709 return *this;
10710 }
10711
10713 {
10714 constexpr BlockLength offset = 92;
10715
10716 setOrdinary(offset, NullInt64NULL());
10717 return *this;
10718 }
10719
10722 auto executionDecision() const noexcept
10723 {
10724 constexpr BlockLength offset = 100;
10725
10726 return ordinary<NullInt64NULL>(offset, optional);
10727 }
10728
10731 {
10732 constexpr BlockLength offset = 100;
10733
10734 setOrdinary(offset, value);
10735 return *this;
10736 }
10737
10739 {
10740 constexpr BlockLength offset = 100;
10741
10742 setOrdinary(offset, NullInt64NULL());
10743 return *this;
10744 }
10745
10748 auto clientIdCode() const noexcept
10749 {
10750 constexpr BlockLength offset = 108;
10751
10752 return ordinary<NullInt64NULL>(offset, optional);
10753 }
10754
10757 {
10758 constexpr BlockLength offset = 108;
10759
10760 setOrdinary(offset, value);
10761 return *this;
10762 }
10763
10765 {
10766 constexpr BlockLength offset = 108;
10767
10768 setOrdinary(offset, NullInt64NULL());
10769 return *this;
10770 }
10771
10774 auto mifidId() const noexcept
10775 {
10776 constexpr BlockLength offset = 116;
10777
10778 return ordinary<NullInt64NULL>(offset, optional);
10779 }
10780
10782 ThisType& mifidId(Int64NULL value) noexcept
10783 {
10784 constexpr BlockLength offset = 116;
10785
10786 setOrdinary(offset, value);
10787 return *this;
10788 }
10789
10791 {
10792 constexpr BlockLength offset = 116;
10793
10794 setOrdinary(offset, NullInt64NULL());
10795 return *this;
10796 }
10797
10800 auto custOrderHandlingInst() const noexcept
10801 {
10802 constexpr BlockLength offset = 124;
10803
10805 }
10806
10809 {
10810 constexpr BlockLength offset = 124;
10811
10813 return *this;
10814 }
10815
10817 {
10818 constexpr BlockLength offset = 124;
10819
10820 setOrdinary(offset, NullCharType());
10821 return *this;
10822 }
10823
10826 auto positionEffect() const noexcept
10827 {
10828 constexpr BlockLength offset = 125;
10829
10831 }
10832
10835 {
10836 constexpr BlockLength offset = 125;
10837
10839 return *this;
10840 }
10841
10843 {
10844 constexpr BlockLength offset = 125;
10845
10846 setOrdinary(offset, NullCharType());
10847 return *this;
10848 }
10849
10852 auto allocHandlInst() const noexcept
10853 {
10854 constexpr BlockLength offset = 126;
10855
10857 }
10858
10861 {
10862 constexpr BlockLength offset = 126;
10863
10865 return *this;
10866 }
10867
10869 {
10870 constexpr BlockLength offset = 126;
10871
10872 setOrdinary(offset, NullCharType());
10873 return *this;
10874 }
10875
10878 auto priceType() const noexcept
10879 {
10880 constexpr BlockLength offset = 127;
10881
10883 }
10884
10887 {
10888 constexpr BlockLength offset = 127;
10889
10890 setEnumeration<PriceTypeEnum>(offset, value);
10891 return *this;
10892 }
10893
10895 {
10896 constexpr BlockLength offset = 127;
10897
10898 setOrdinary(offset, NullUint8NULL());
10899 return *this;
10900 }
10901
10904 auto clearingAccount() const noexcept
10905 {
10906 constexpr BlockLength offset = 128;
10907 constexpr BlockLength length = 14;
10908
10909 return fixedStr<length>(offset);
10910 }
10911
10914 {
10915 constexpr BlockLength offset = 128;
10916 constexpr BlockLength length = 14;
10917
10918 setFixedStr<length>(offset, value);
10919 return *this;
10920 }
10921
10924 auto customerAccountRefId() const noexcept
10925 {
10926 constexpr BlockLength offset = 142;
10927 constexpr BlockLength length = 12;
10928
10929 return fixedStr<length>(offset, optional);
10930 }
10931
10934 {
10935 constexpr BlockLength offset = 142;
10936 constexpr BlockLength length = 12;
10937
10938 setFixedStr<length>(offset, value);
10939 return *this;
10940 }
10941
10943 {
10944 constexpr BlockLength offset = 142;
10945 constexpr BlockLength length = 12;
10946
10947 setFixedStr<length>(offset, StrRef());
10948 return *this;
10949 }
10950
10953 auto memo() const noexcept
10954 {
10955 constexpr BlockLength offset = 154;
10956 constexpr BlockLength length = 30;
10957
10958 return fixedStr<length>(offset, optional);
10959 }
10960
10962 ThisType& memo(StrRef value) noexcept
10963 {
10964 constexpr BlockLength offset = 154;
10965 constexpr BlockLength length = 30;
10966
10967 setFixedStr<length>(offset, value);
10968 return *this;
10969 }
10970
10972 {
10973 constexpr BlockLength offset = 154;
10974 constexpr BlockLength length = 30;
10975
10976 setFixedStr<length>(offset, StrRef());
10977 return *this;
10978 }
10979
10982 auto allocationAccount() const noexcept
10983 {
10984 constexpr BlockLength offset = 184;
10985 constexpr BlockLength length = 20;
10986
10987 return fixedStr<length>(offset, optional);
10988 }
10989
10992 {
10993 constexpr BlockLength offset = 184;
10994 constexpr BlockLength length = 20;
10995
10996 setFixedStr<length>(offset, value);
10997 return *this;
10998 }
10999
11001 {
11002 constexpr BlockLength offset = 184;
11003 constexpr BlockLength length = 20;
11004
11005 setFixedStr<length>(offset, StrRef());
11006 return *this;
11007 }
11008
11011 auto onBehalfOfCompId() const noexcept
11012 {
11013 constexpr BlockLength offset = 204;
11014 constexpr BlockLength length = 41;
11015
11016 return fixedStr<length>(offset, optional);
11017 }
11018
11021 {
11022 constexpr BlockLength offset = 204;
11023 constexpr BlockLength length = 41;
11024
11025 setFixedStr<length>(offset, value);
11026 return *this;
11027 }
11028
11030 {
11031 constexpr BlockLength offset = 204;
11032 constexpr BlockLength length = 41;
11033
11034 setFixedStr<length>(offset, StrRef());
11035 return *this;
11036 }
11037
11040 auto onBehalfOfSubId() const noexcept
11041 {
11042 constexpr BlockLength offset = 245;
11043 constexpr BlockLength length = 41;
11044
11045 return fixedStr<length>(offset);
11046 }
11047
11050 {
11051 constexpr BlockLength offset = 245;
11052 constexpr BlockLength length = 41;
11053
11054 setFixedStr<length>(offset, value);
11055 return *this;
11056 }
11057
11060 auto onBehalfOfLocationId() const noexcept
11061 {
11062 constexpr BlockLength offset = 286;
11063 constexpr BlockLength length = 41;
11064
11065 return fixedStr<length>(offset);
11066 }
11067
11070 {
11071 constexpr BlockLength offset = 286;
11072 constexpr BlockLength length = 41;
11073
11074 setFixedStr<length>(offset, value);
11075 return *this;
11076 }
11077
11079 constexpr
11081 {
11082 return
11083 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
11084 327;
11085 }
11086
11088 constexpr
11090 {
11091 return
11092 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
11094 }
11095
11098 constexpr
11100 {
11101 return
11102 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
11103 0;
11104 }
11105
11108 constexpr
11110 {
11111 return
11112 static_cast<UInt64>(MessageHeaderBuilder::Size) +
11114 }
11115
11118 {
11119 return *this;
11120 }
11121
11154
11157 constexpr
11158 static StrRef className() noexcept
11159 {
11160 return constructStrRef("NewOrderRequest");
11161 }
11162
11165 constexpr
11166 static StrRef fixType() noexcept
11167 {
11168 return constructStrRef("D");
11169 }
11170
11173 std::string toString() const;
11174
11177 const void* tail() const noexcept
11178 {
11179 return
11182 binary(),
11183 static_cast<ptrdiff_t>(SbeMessage::blockLength()) +
11185 }
11186
11190 {
11191 return
11193 }
11194
11195private:
11196 void checkLength(
11197 EncodedLength length, SchemaVersion version) const
11198 {
11199 const EncodedLength minimalRequiredLength =
11200 minimalBlockLength(version) +
11202 getMinimalVariableFieldsSize(version);
11203
11205 *this, length, minimalRequiredLength);
11206 }
11207
11208 void checkCompatibility() const
11209 {
11210 assert(TemplateId == templateId());
11211
11212 checkSchema<Schema>(schemaId(), version());
11213 checkLength(bufferSize(), version());
11214 }
11215};
11216
11218struct
11220: SbeMessage
11221{
11224
11227
11229 enum { TemplateId = 5 };
11230
11233
11236 : SbeMessage(data, length, version)
11237 {
11239 checkLength(length, version);
11241 reset();
11242 }
11243
11255
11258 : SbeMessage(data, length)
11259 {
11260 checkCompatibility();
11261 }
11262
11264 explicit
11266 : SbeMessage(message)
11267 {
11268 assert(message.valid());
11269
11270 checkCompatibility();
11271 }
11272
11275 CancelReplaceRequest(void* data, EncodedLength length, NoInit, NoCheck) noexcept
11276 : SbeMessage(data, length, NoCheck())
11277 {
11278 assert(schemaId() == Schema::Id);
11279 assert(version() >= Schema::MinimalVersion);
11280 assert(TemplateId == templateId());
11281 }
11282
11285 auto price() const noexcept
11286 {
11287 constexpr BlockLength offset = 0;
11288
11289 return ordinary<NullDecimal9>(offset, optional);
11290 }
11291
11293 ThisType& price(Decimal9 value) noexcept
11294 {
11295 constexpr BlockLength offset = 0;
11296
11297 setOrdinary(offset, value);
11298 return *this;
11299 }
11300
11302 {
11303 constexpr BlockLength offset = 0;
11304
11305 setOrdinary(offset, NullDecimal9());
11306 return *this;
11307 }
11308
11311 auto orderQty() const noexcept
11312 {
11313 constexpr BlockLength offset = 8;
11314
11315 return ordinary<Decimal9>(offset);
11316 }
11317
11319 ThisType& orderQty(Decimal9 value) noexcept
11320 {
11321 constexpr BlockLength offset = 8;
11322
11323 setOrdinary(offset, value);
11324 return *this;
11325 }
11326
11329 auto symbol() const noexcept
11330 {
11331 constexpr BlockLength offset = 16;
11332
11333 return ordinary<Int32>(offset);
11334 }
11335
11337 ThisType& symbol(Int32 value) noexcept
11338 {
11339 constexpr BlockLength offset = 16;
11340
11341 setOrdinary(offset, value);
11342 return *this;
11343 }
11344
11347 auto timeInForce() const noexcept
11348 {
11349 constexpr BlockLength offset = 20;
11350
11351 return enumeration<TimeInForceEnum>(offset);
11352 }
11353
11356 {
11357 constexpr BlockLength offset = 20;
11358
11359 setEnumeration<TimeInForceEnum>(offset, value);
11360 return *this;
11361 }
11362
11365 auto side() const noexcept
11366 {
11367 constexpr BlockLength offset = 21;
11368
11369 return enumeration<SideEnum>(offset);
11370 }
11371
11373 ThisType& side(SideEnum value) noexcept
11374 {
11375 constexpr BlockLength offset = 21;
11376
11377 setEnumeration<SideEnum>(offset, value);
11378 return *this;
11379 }
11380
11383 auto originatorUserId() const noexcept
11384 {
11385 constexpr BlockLength offset = 22;
11386 constexpr BlockLength length = 20;
11387
11388 return fixedStr<length>(offset);
11389 }
11390
11393 {
11394 constexpr BlockLength offset = 22;
11395 constexpr BlockLength length = 20;
11396
11397 setFixedStr<length>(offset, value);
11398 return *this;
11399 }
11400
11403 auto ordType() const noexcept
11404 {
11405 constexpr BlockLength offset = 42;
11406
11407 return enumeration<OrderTypeEnum>(offset);
11408 }
11409
11412 {
11413 constexpr BlockLength offset = 42;
11414
11415 setEnumeration<OrderTypeEnum>(offset, value);
11416 return *this;
11417 }
11418
11421 auto manualOrderIndicator() const noexcept
11422 {
11423 constexpr BlockLength offset = 43;
11424
11426 }
11427
11430 {
11431 constexpr BlockLength offset = 43;
11432
11433 setEnumeration<BooleanEnum>(offset, value);
11434 return *this;
11435 }
11436
11438 {
11439 constexpr BlockLength offset = 43;
11440
11441 setOrdinary(offset, NullUint8NULL());
11442 return *this;
11443 }
11444
11447 auto clOrdId() const noexcept
11448 {
11449 constexpr BlockLength offset = 44;
11450
11451 return ordinary<Int64>(offset);
11452 }
11453
11455 ThisType& clOrdId(Int64 value) noexcept
11456 {
11457 constexpr BlockLength offset = 44;
11458
11459 setOrdinary(offset, value);
11460 return *this;
11461 }
11462
11465 auto origClOrdId() const noexcept
11466 {
11467 constexpr BlockLength offset = 52;
11468
11469 return ordinary<Int64>(offset);
11470 }
11471
11473 ThisType& origClOrdId(Int64 value) noexcept
11474 {
11475 constexpr BlockLength offset = 52;
11476
11477 setOrdinary(offset, value);
11478 return *this;
11479 }
11480
11483 auto maxShow() const noexcept
11484 {
11485 constexpr BlockLength offset = 60;
11486
11487 return ordinary<NullDecimal9>(offset, optional);
11488 }
11489
11491 ThisType& maxShow(Decimal9 value) noexcept
11492 {
11493 constexpr BlockLength offset = 60;
11494
11495 setOrdinary(offset, value);
11496 return *this;
11497 }
11498
11500 {
11501 constexpr BlockLength offset = 60;
11502
11503 setOrdinary(offset, NullDecimal9());
11504 return *this;
11505 }
11506
11509 auto stopPx() const noexcept
11510 {
11511 constexpr BlockLength offset = 68;
11512
11513 return ordinary<NullDecimal9>(offset, optional);
11514 }
11515
11517 ThisType& stopPx(Decimal9 value) noexcept
11518 {
11519 constexpr BlockLength offset = 68;
11520
11521 setOrdinary(offset, value);
11522 return *this;
11523 }
11524
11526 {
11527 constexpr BlockLength offset = 68;
11528
11529 setOrdinary(offset, NullDecimal9());
11530 return *this;
11531 }
11532
11535 auto giveUpClearingFirm() const noexcept
11536 {
11537 constexpr BlockLength offset = 76;
11538
11539 return ordinary<NullInt32NULL>(offset, optional);
11540 }
11541
11544 {
11545 constexpr BlockLength offset = 76;
11546
11547 setOrdinary(offset, value);
11548 return *this;
11549 }
11550
11552 {
11553 constexpr BlockLength offset = 76;
11554
11555 setOrdinary(offset, NullInt32NULL());
11556 return *this;
11557 }
11558
11561 auto clearingFirm() const noexcept
11562 {
11563 constexpr BlockLength offset = 80;
11564
11565 return ordinary<Int32>(offset);
11566 }
11567
11569 ThisType& clearingFirm(Int32 value) noexcept
11570 {
11571 constexpr BlockLength offset = 80;
11572
11573 setOrdinary(offset, value);
11574 return *this;
11575 }
11576
11579 auto selfMatchPreventionId() const noexcept
11580 {
11581 constexpr BlockLength offset = 84;
11582
11583 return ordinary<NullInt64NULL>(offset, optional);
11584 }
11585
11588 {
11589 constexpr BlockLength offset = 84;
11590
11591 setOrdinary(offset, value);
11592 return *this;
11593 }
11594
11596 {
11597 constexpr BlockLength offset = 84;
11598
11599 setOrdinary(offset, NullInt64NULL());
11600 return *this;
11601 }
11602
11605 auto expireDate() const noexcept(dateToTimestamp::Nothrow)
11606 {
11607 constexpr BlockLength offset = 92;
11609 }
11610
11612 ThisType& expireDate(Timestamp value) noexcept(timestampToDate::Nothrow)
11613 {
11614 constexpr BlockLength offset = 92;
11615
11616 setOrdinary(offset, convert<timestampToDate>(value));
11617 return *this;
11618 }
11619
11621 {
11622 constexpr BlockLength offset = 92;
11623
11624 setOrdinary(offset, NullUTCDateOnly());
11625 return *this;
11626 }
11627
11631 {
11632 constexpr BlockLength offset = 94;
11633
11635 }
11636
11639 {
11640 constexpr BlockLength offset = 94;
11641
11643 return *this;
11644 }
11645
11647 {
11648 constexpr BlockLength offset = 94;
11649
11650 setOrdinary(offset, NullCharType());
11651 return *this;
11652 }
11653
11656 auto execInst() const noexcept
11657 {
11658 constexpr BlockLength offset = 95;
11659
11661 }
11662
11665 {
11666 constexpr BlockLength offset = 95;
11667
11668 setEnumeration<ExecInstEnum>(offset, value);
11669 return *this;
11670 }
11671
11673 {
11674 constexpr BlockLength offset = 95;
11675
11676 setOrdinary(offset, NullCharType());
11677 return *this;
11678 }
11679
11682 auto directElectronicAccess() const noexcept
11683 {
11684 constexpr BlockLength offset = 96;
11685
11687 }
11688
11691 {
11692 constexpr BlockLength offset = 96;
11693
11694 setEnumeration<BooleanEnum>(offset, value);
11695 return *this;
11696 }
11697
11699 {
11700 constexpr BlockLength offset = 96;
11701
11702 setOrdinary(offset, NullUint8NULL());
11703 return *this;
11704 }
11705
11708 auto tradingCapacity() const noexcept
11709 {
11710 constexpr BlockLength offset = 97;
11711
11713 }
11714
11717 {
11718 constexpr BlockLength offset = 97;
11719
11721 return *this;
11722 }
11723
11725 {
11726 constexpr BlockLength offset = 97;
11727
11728 setOrdinary(offset, NullUint8NULL());
11729 return *this;
11730 }
11731
11734 auto liquidityProvision() const noexcept
11735 {
11736 constexpr BlockLength offset = 98;
11737
11739 }
11740
11743 {
11744 constexpr BlockLength offset = 98;
11745
11746 setEnumeration<BooleanEnum>(offset, value);
11747 return *this;
11748 }
11749
11751 {
11752 constexpr BlockLength offset = 98;
11753
11754 setOrdinary(offset, NullUint8NULL());
11755 return *this;
11756 }
11757
11760 auto commodityDerivIndicator() const noexcept
11761 {
11762 constexpr BlockLength offset = 99;
11763
11765 }
11766
11769 {
11770 constexpr BlockLength offset = 99;
11771
11772 setEnumeration<BooleanEnum>(offset, value);
11773 return *this;
11774 }
11775
11777 {
11778 constexpr BlockLength offset = 99;
11779
11780 setOrdinary(offset, NullUint8NULL());
11781 return *this;
11782 }
11783
11786 auto investmentDecision() const noexcept
11787 {
11788 constexpr BlockLength offset = 100;
11789
11790 return ordinary<NullInt64NULL>(offset, optional);
11791 }
11792
11795 {
11796 constexpr BlockLength offset = 100;
11797
11798 setOrdinary(offset, value);
11799 return *this;
11800 }
11801
11803 {
11804 constexpr BlockLength offset = 100;
11805
11806 setOrdinary(offset, NullInt64NULL());
11807 return *this;
11808 }
11809
11812 auto executionDecision() const noexcept
11813 {
11814 constexpr BlockLength offset = 108;
11815
11816 return ordinary<NullInt64NULL>(offset, optional);
11817 }
11818
11821 {
11822 constexpr BlockLength offset = 108;
11823
11824 setOrdinary(offset, value);
11825 return *this;
11826 }
11827
11829 {
11830 constexpr BlockLength offset = 108;
11831
11832 setOrdinary(offset, NullInt64NULL());
11833 return *this;
11834 }
11835
11838 auto clientIdCode() const noexcept
11839 {
11840 constexpr BlockLength offset = 116;
11841
11842 return ordinary<NullInt64NULL>(offset, optional);
11843 }
11844
11847 {
11848 constexpr BlockLength offset = 116;
11849
11850 setOrdinary(offset, value);
11851 return *this;
11852 }
11853
11855 {
11856 constexpr BlockLength offset = 116;
11857
11858 setOrdinary(offset, NullInt64NULL());
11859 return *this;
11860 }
11861
11864 auto mifidId() const noexcept
11865 {
11866 constexpr BlockLength offset = 124;
11867
11868 return ordinary<NullInt64NULL>(offset, optional);
11869 }
11870
11872 ThisType& mifidId(Int64NULL value) noexcept
11873 {
11874 constexpr BlockLength offset = 124;
11875
11876 setOrdinary(offset, value);
11877 return *this;
11878 }
11879
11881 {
11882 constexpr BlockLength offset = 124;
11883
11884 setOrdinary(offset, NullInt64NULL());
11885 return *this;
11886 }
11887
11890 auto allocHandlInst() const noexcept
11891 {
11892 constexpr BlockLength offset = 132;
11893
11895 }
11896
11899 {
11900 constexpr BlockLength offset = 132;
11901
11903 return *this;
11904 }
11905
11907 {
11908 constexpr BlockLength offset = 132;
11909
11910 setOrdinary(offset, NullCharType());
11911 return *this;
11912 }
11913
11916 auto priceType() const noexcept
11917 {
11918 constexpr BlockLength offset = 133;
11919
11921 }
11922
11925 {
11926 constexpr BlockLength offset = 133;
11927
11928 setEnumeration<PriceTypeEnum>(offset, value);
11929 return *this;
11930 }
11931
11933 {
11934 constexpr BlockLength offset = 133;
11935
11936 setOrdinary(offset, NullUint8NULL());
11937 return *this;
11938 }
11939
11942 auto clearingAccount() const noexcept
11943 {
11944 constexpr BlockLength offset = 134;
11945 constexpr BlockLength length = 14;
11946
11947 return fixedStr<length>(offset);
11948 }
11949
11952 {
11953 constexpr BlockLength offset = 134;
11954 constexpr BlockLength length = 14;
11955
11956 setFixedStr<length>(offset, value);
11957 return *this;
11958 }
11959
11962 auto customerAccountRefId() const noexcept
11963 {
11964 constexpr BlockLength offset = 148;
11965 constexpr BlockLength length = 12;
11966
11967 return fixedStr<length>(offset, optional);
11968 }
11969
11972 {
11973 constexpr BlockLength offset = 148;
11974 constexpr BlockLength length = 12;
11975
11976 setFixedStr<length>(offset, value);
11977 return *this;
11978 }
11979
11981 {
11982 constexpr BlockLength offset = 148;
11983 constexpr BlockLength length = 12;
11984
11985 setFixedStr<length>(offset, StrRef());
11986 return *this;
11987 }
11988
11991 auto memo() const noexcept
11992 {
11993 constexpr BlockLength offset = 160;
11994 constexpr BlockLength length = 30;
11995
11996 return fixedStr<length>(offset, optional);
11997 }
11998
12000 ThisType& memo(StrRef value) noexcept
12001 {
12002 constexpr BlockLength offset = 160;
12003 constexpr BlockLength length = 30;
12004
12005 setFixedStr<length>(offset, value);
12006 return *this;
12007 }
12008
12010 {
12011 constexpr BlockLength offset = 160;
12012 constexpr BlockLength length = 30;
12013
12014 setFixedStr<length>(offset, StrRef());
12015 return *this;
12016 }
12017
12020 auto allocationAccount() const noexcept
12021 {
12022 constexpr BlockLength offset = 190;
12023 constexpr BlockLength length = 20;
12024
12025 return fixedStr<length>(offset, optional);
12026 }
12027
12030 {
12031 constexpr BlockLength offset = 190;
12032 constexpr BlockLength length = 20;
12033
12034 setFixedStr<length>(offset, value);
12035 return *this;
12036 }
12037
12039 {
12040 constexpr BlockLength offset = 190;
12041 constexpr BlockLength length = 20;
12042
12043 setFixedStr<length>(offset, StrRef());
12044 return *this;
12045 }
12046
12049 auto onBehalfOfCompId() const noexcept
12050 {
12051 constexpr BlockLength offset = 210;
12052 constexpr BlockLength length = 41;
12053
12054 return fixedStr<length>(offset, optional);
12055 }
12056
12059 {
12060 constexpr BlockLength offset = 210;
12061 constexpr BlockLength length = 41;
12062
12063 setFixedStr<length>(offset, value);
12064 return *this;
12065 }
12066
12068 {
12069 constexpr BlockLength offset = 210;
12070 constexpr BlockLength length = 41;
12071
12072 setFixedStr<length>(offset, StrRef());
12073 return *this;
12074 }
12075
12078 auto onBehalfOfSubId() const noexcept
12079 {
12080 constexpr BlockLength offset = 251;
12081 constexpr BlockLength length = 41;
12082
12083 return fixedStr<length>(offset);
12084 }
12085
12088 {
12089 constexpr BlockLength offset = 251;
12090 constexpr BlockLength length = 41;
12091
12092 setFixedStr<length>(offset, value);
12093 return *this;
12094 }
12095
12098 auto onBehalfOfLocationId() const noexcept
12099 {
12100 constexpr BlockLength offset = 292;
12101 constexpr BlockLength length = 41;
12102
12103 return fixedStr<length>(offset);
12104 }
12105
12108 {
12109 constexpr BlockLength offset = 292;
12110 constexpr BlockLength length = 41;
12111
12112 setFixedStr<length>(offset, value);
12113 return *this;
12114 }
12115
12117 constexpr
12119 {
12120 return
12121 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
12122 333;
12123 }
12124
12126 constexpr
12128 {
12129 return
12130 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
12132 }
12133
12136 constexpr
12138 {
12139 return
12140 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
12141 0;
12142 }
12143
12146 constexpr
12148 {
12149 return
12150 static_cast<UInt64>(MessageHeaderBuilder::Size) +
12152 }
12153
12156 {
12157 return *this;
12158 }
12159
12190
12193 constexpr
12194 static StrRef className() noexcept
12195 {
12196 return constructStrRef("CancelReplaceRequest");
12197 }
12198
12201 constexpr
12202 static StrRef fixType() noexcept
12203 {
12204 return constructStrRef("G");
12205 }
12206
12209 std::string toString() const;
12210
12213 const void* tail() const noexcept
12214 {
12215 return
12218 binary(),
12219 static_cast<ptrdiff_t>(SbeMessage::blockLength()) +
12221 }
12222
12226 {
12227 return
12229 }
12230
12231private:
12232 void checkLength(
12233 EncodedLength length, SchemaVersion version) const
12234 {
12235 const EncodedLength minimalRequiredLength =
12236 minimalBlockLength(version) +
12238 getMinimalVariableFieldsSize(version);
12239
12241 *this, length, minimalRequiredLength);
12242 }
12243
12244 void checkCompatibility() const
12245 {
12246 assert(TemplateId == templateId());
12247
12248 checkSchema<Schema>(schemaId(), version());
12249 checkLength(bufferSize(), version());
12250 }
12251};
12252
12254struct
12256: SbeMessage
12257{
12260
12263
12265 enum { TemplateId = 6 };
12266
12268 CancelRequest() = default;
12269
12272 : SbeMessage(data, length, version)
12273 {
12275 checkLength(length, version);
12277 reset();
12278 }
12279
12291
12294 : SbeMessage(data, length)
12295 {
12296 checkCompatibility();
12297 }
12298
12300 explicit
12302 : SbeMessage(message)
12303 {
12304 assert(message.valid());
12305
12306 checkCompatibility();
12307 }
12308
12311 CancelRequest(void* data, EncodedLength length, NoInit, NoCheck) noexcept
12312 : SbeMessage(data, length, NoCheck())
12313 {
12314 assert(schemaId() == Schema::Id);
12315 assert(version() >= Schema::MinimalVersion);
12316 assert(TemplateId == templateId());
12317 }
12318
12321 auto symbol() const noexcept
12322 {
12323 constexpr BlockLength offset = 0;
12324
12325 return ordinary<Int32>(offset);
12326 }
12327
12329 ThisType& symbol(Int32 value) noexcept
12330 {
12331 constexpr BlockLength offset = 0;
12332
12333 setOrdinary(offset, value);
12334 return *this;
12335 }
12336
12339 auto originatorUserId() const noexcept
12340 {
12341 constexpr BlockLength offset = 4;
12342 constexpr BlockLength length = 20;
12343
12344 return fixedStr<length>(offset);
12345 }
12346
12349 {
12350 constexpr BlockLength offset = 4;
12351 constexpr BlockLength length = 20;
12352
12353 setFixedStr<length>(offset, value);
12354 return *this;
12355 }
12356
12359 auto clOrdId() const noexcept
12360 {
12361 constexpr BlockLength offset = 24;
12362
12363 return ordinary<Int64>(offset);
12364 }
12365
12367 ThisType& clOrdId(Int64 value) noexcept
12368 {
12369 constexpr BlockLength offset = 24;
12370
12371 setOrdinary(offset, value);
12372 return *this;
12373 }
12374
12377 auto origClOrdId() const noexcept
12378 {
12379 constexpr BlockLength offset = 32;
12380
12381 return ordinary<Int64>(offset);
12382 }
12383
12385 ThisType& origClOrdId(Int64 value) noexcept
12386 {
12387 constexpr BlockLength offset = 32;
12388
12389 setOrdinary(offset, value);
12390 return *this;
12391 }
12392
12395 auto side() const noexcept
12396 {
12397 constexpr BlockLength offset = 40;
12398
12399 return enumeration<SideEnum>(offset);
12400 }
12401
12403 ThisType& side(SideEnum value) noexcept
12404 {
12405 constexpr BlockLength offset = 40;
12406
12407 setEnumeration<SideEnum>(offset, value);
12408 return *this;
12409 }
12410
12412 constexpr
12414 {
12415 return
12416 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
12417 41;
12418 }
12419
12421 constexpr
12423 {
12424 return
12425 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
12427 }
12428
12431 constexpr
12433 {
12434 return
12435 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
12436 0;
12437 }
12438
12441 constexpr
12443 {
12444 return
12445 static_cast<UInt64>(MessageHeaderBuilder::Size) +
12447 }
12448
12451 {
12452 return *this;
12453 }
12454
12456 ThisType& reset() noexcept
12457 {
12459 return *this;
12460 }
12461
12464 constexpr
12465 static StrRef className() noexcept
12466 {
12467 return constructStrRef("CancelRequest");
12468 }
12469
12472 constexpr
12473 static StrRef fixType() noexcept
12474 {
12475 return constructStrRef("F");
12476 }
12477
12480 std::string toString() const;
12481
12484 const void* tail() const noexcept
12485 {
12486 return
12489 binary(),
12490 static_cast<ptrdiff_t>(SbeMessage::blockLength()) +
12492 }
12493
12497 {
12498 return
12500 }
12501
12502private:
12503 void checkLength(
12504 EncodedLength length, SchemaVersion version) const
12505 {
12506 const EncodedLength minimalRequiredLength =
12507 minimalBlockLength(version) +
12509 getMinimalVariableFieldsSize(version);
12510
12512 *this, length, minimalRequiredLength);
12513 }
12514
12515 void checkCompatibility() const
12516 {
12517 assert(TemplateId == templateId());
12518
12519 checkSchema<Schema>(schemaId(), version());
12520 checkLength(bufferSize(), version());
12521 }
12522};
12523
12525struct
12527: SbeMessage
12528{
12531
12534
12536 enum { TemplateId = 7 };
12537
12539 QuoteRequest() = default;
12540
12543 : SbeMessage(data, length, version)
12544 {
12546 checkLength(length, version);
12548 reset();
12549 }
12550
12562
12564 QuoteRequest(void* data, EncodedLength length, NoInit)
12565 : SbeMessage(data, length)
12566 {
12567 checkCompatibility();
12568 }
12569
12571 explicit
12572 QuoteRequest(const SbeMessage& message)
12573 : SbeMessage(message)
12574 {
12575 assert(message.valid());
12576
12577 checkCompatibility();
12578 }
12579
12582 QuoteRequest(void* data, EncodedLength length, NoInit, NoCheck) noexcept
12583 : SbeMessage(data, length, NoCheck())
12584 {
12585 assert(schemaId() == Schema::Id);
12586 assert(version() >= Schema::MinimalVersion);
12587 assert(TemplateId == templateId());
12588 }
12589
12592 auto originatorUserId() const noexcept
12593 {
12594 constexpr BlockLength offset = 0;
12595 constexpr BlockLength length = 20;
12596
12597 return fixedStr<length>(offset);
12598 }
12599
12602 {
12603 constexpr BlockLength offset = 0;
12604 constexpr BlockLength length = 20;
12605
12606 setFixedStr<length>(offset, value);
12607 return *this;
12608 }
12609
12612 auto side() const noexcept
12613 {
12614 constexpr BlockLength offset = 20;
12615
12617 }
12618
12620 ThisType& side(SideEnum value) noexcept
12621 {
12622 constexpr BlockLength offset = 20;
12623
12624 setEnumeration<SideEnum>(offset, value);
12625 return *this;
12626 }
12627
12629 {
12630 constexpr BlockLength offset = 20;
12631
12632 setOrdinary(offset, NullUint8NULL());
12633 return *this;
12634 }
12635
12638 auto orderQty() const noexcept
12639 {
12640 constexpr BlockLength offset = 21;
12641
12642 return ordinary<NullDecimal9>(offset, optional);
12643 }
12644
12646 ThisType& orderQty(Decimal9 value) noexcept
12647 {
12648 constexpr BlockLength offset = 21;
12649
12650 setOrdinary(offset, value);
12651 return *this;
12652 }
12653
12655 {
12656 constexpr BlockLength offset = 21;
12657
12658 setOrdinary(offset, NullDecimal9());
12659 return *this;
12660 }
12661
12664 auto rfqReqId() const noexcept
12665 {
12666 constexpr BlockLength offset = 29;
12667
12668 return ordinary<Int64>(offset);
12669 }
12670
12672 ThisType& rfqReqId(Int64 value) noexcept
12673 {
12674 constexpr BlockLength offset = 29;
12675
12676 setOrdinary(offset, value);
12677 return *this;
12678 }
12679
12682 auto symbol() const noexcept
12683 {
12684 constexpr BlockLength offset = 37;
12685
12686 return ordinary<Int32>(offset);
12687 }
12688
12690 ThisType& symbol(Int32 value) noexcept
12691 {
12692 constexpr BlockLength offset = 37;
12693
12694 setOrdinary(offset, value);
12695 return *this;
12696 }
12697
12700 auto clearingFirm() const noexcept
12701 {
12702 constexpr BlockLength offset = 41;
12703
12704 return ordinary<NullInt32NULL>(offset, optional);
12705 }
12706
12709 {
12710 constexpr BlockLength offset = 41;
12711
12712 setOrdinary(offset, value);
12713 return *this;
12714 }
12715
12717 {
12718 constexpr BlockLength offset = 41;
12719
12720 setOrdinary(offset, NullInt32NULL());
12721 return *this;
12722 }
12723
12726 auto clearingAccount() const noexcept
12727 {
12728 constexpr BlockLength offset = 45;
12729 constexpr BlockLength length = 14;
12730
12731 return fixedStr<length>(offset, optional);
12732 }
12733
12736 {
12737 constexpr BlockLength offset = 45;
12738 constexpr BlockLength length = 14;
12739
12740 setFixedStr<length>(offset, value);
12741 return *this;
12742 }
12743
12745 {
12746 constexpr BlockLength offset = 45;
12747 constexpr BlockLength length = 14;
12748
12749 setFixedStr<length>(offset, StrRef());
12750 return *this;
12751 }
12752
12755 auto onBehalfOfCompId() const noexcept
12756 {
12757 constexpr BlockLength offset = 59;
12758 constexpr BlockLength length = 41;
12759
12760 return fixedStr<length>(offset, optional);
12761 }
12762
12765 {
12766 constexpr BlockLength offset = 59;
12767 constexpr BlockLength length = 41;
12768
12769 setFixedStr<length>(offset, value);
12770 return *this;
12771 }
12772
12774 {
12775 constexpr BlockLength offset = 59;
12776 constexpr BlockLength length = 41;
12777
12778 setFixedStr<length>(offset, StrRef());
12779 return *this;
12780 }
12781
12784 auto onBehalfOfSubId() const noexcept
12785 {
12786 constexpr BlockLength offset = 100;
12787 constexpr BlockLength length = 41;
12788
12789 return fixedStr<length>(offset);
12790 }
12791
12794 {
12795 constexpr BlockLength offset = 100;
12796 constexpr BlockLength length = 41;
12797
12798 setFixedStr<length>(offset, value);
12799 return *this;
12800 }
12801
12804 auto onBehalfOfLocationId() const noexcept
12805 {
12806 constexpr BlockLength offset = 141;
12807 constexpr BlockLength length = 41;
12808
12809 return fixedStr<length>(offset);
12810 }
12811
12814 {
12815 constexpr BlockLength offset = 141;
12816 constexpr BlockLength length = 41;
12817
12818 setFixedStr<length>(offset, value);
12819 return *this;
12820 }
12821
12823 constexpr
12825 {
12826 return
12827 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
12828 182;
12829 }
12830
12832 constexpr
12834 {
12835 return
12836 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
12838 }
12839
12842 constexpr
12844 {
12845 return
12846 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
12847 0;
12848 }
12849
12852 constexpr
12854 {
12855 return
12856 static_cast<UInt64>(MessageHeaderBuilder::Size) +
12858 }
12859
12862 {
12863 return *this;
12864 }
12865
12867 ThisType& reset() noexcept
12868 {
12869 side(nullOpt);
12874
12876 return *this;
12877 }
12878
12881 constexpr
12882 static StrRef className() noexcept
12883 {
12884 return constructStrRef("QuoteRequest");
12885 }
12886
12889 constexpr
12890 static StrRef fixType() noexcept
12891 {
12892 return constructStrRef("R");
12893 }
12894
12897 std::string toString() const;
12898
12901 const void* tail() const noexcept
12902 {
12903 return
12906 binary(),
12907 static_cast<ptrdiff_t>(SbeMessage::blockLength()) +
12909 }
12910
12914 {
12915 return
12917 }
12918
12919private:
12920 void checkLength(
12921 EncodedLength length, SchemaVersion version) const
12922 {
12923 const EncodedLength minimalRequiredLength =
12924 minimalBlockLength(version) +
12926 getMinimalVariableFieldsSize(version);
12927
12929 *this, length, minimalRequiredLength);
12930 }
12931
12932 void checkCompatibility() const
12933 {
12934 assert(TemplateId == templateId());
12935
12936 checkSchema<Schema>(schemaId(), version());
12937 checkLength(bufferSize(), version());
12938 }
12939};
12940
12942struct
12944: SbeMessage
12945{
12948
12951
12953 enum { TemplateId = 8 };
12954
12957 struct
12959 <
12961 >
12962 {
12964 typedef
12966 <
12968 >
12970
12973
12977 : Base(data, numericCast<Base::BlockLength>(length), version)
12978 {
12980 assert(length >= minimalBlockLength(version));
12981 }
12982
12985 {
12986 return *this;
12987 }
12988
13015
13018 auto side() const noexcept
13019 {
13020 constexpr BlockLength offset = 0;
13021
13022 return enumeration<SideEnum>(offset);
13023 }
13024
13026 ThisType& side(SideEnum value) noexcept
13027 {
13028 constexpr BlockLength offset = 0;
13029
13030 setEnumeration<SideEnum>(offset, value);
13031 return *this;
13032 }
13033
13037 auto clOrdId() const noexcept
13038 {
13039 constexpr BlockLength offset = 1;
13040
13041 return ordinary<Int64>(offset);
13042 }
13043
13046 ThisType& clOrdId(Int64 value) noexcept
13047 {
13048 constexpr BlockLength offset = 1;
13049
13050 setOrdinary(offset, value);
13051 return *this;
13052 }
13053
13056 auto giveUpClearingFirm() const noexcept
13057 {
13058 constexpr BlockLength offset = 9;
13059
13060 return ordinary<NullInt32NULL>(offset, optional);
13061 }
13062
13065 {
13066 constexpr BlockLength offset = 9;
13067
13068 setOrdinary(offset, value);
13069 return *this;
13070 }
13071
13073 {
13074 constexpr BlockLength offset = 9;
13075
13076 setOrdinary(offset, NullInt32NULL());
13077 return *this;
13078 }
13079
13082 auto clearingFirm() const noexcept
13083 {
13084 constexpr BlockLength offset = 13;
13085
13086 return ordinary<Int32>(offset);
13087 }
13088
13090 ThisType& clearingFirm(Int32 value) noexcept
13091 {
13092 constexpr BlockLength offset = 13;
13093
13094 setOrdinary(offset, value);
13095 return *this;
13096 }
13097
13100 auto directElectronicAccess() const noexcept
13101 {
13102 constexpr BlockLength offset = 17;
13103
13105 }
13106
13109 {
13110 constexpr BlockLength offset = 17;
13111
13112 setEnumeration<BooleanEnum>(offset, value);
13113 return *this;
13114 }
13115
13117 {
13118 constexpr BlockLength offset = 17;
13119
13120 setOrdinary(offset, NullUint8NULL());
13121 return *this;
13122 }
13123
13126 auto tradingCapacity() const noexcept
13127 {
13128 constexpr BlockLength offset = 18;
13129
13131 }
13132
13135 {
13136 constexpr BlockLength offset = 18;
13137
13139 return *this;
13140 }
13141
13143 {
13144 constexpr BlockLength offset = 18;
13145
13146 setOrdinary(offset, NullUint8NULL());
13147 return *this;
13148 }
13149
13152 auto liquidityProvision() const noexcept
13153 {
13154 constexpr BlockLength offset = 19;
13155
13157 }
13158
13161 {
13162 constexpr BlockLength offset = 19;
13163
13164 setEnumeration<BooleanEnum>(offset, value);
13165 return *this;
13166 }
13167
13169 {
13170 constexpr BlockLength offset = 19;
13171
13172 setOrdinary(offset, NullUint8NULL());
13173 return *this;
13174 }
13175
13178 auto commodityDerivIndicator() const noexcept
13179 {
13180 constexpr BlockLength offset = 20;
13181
13183 }
13184
13187 {
13188 constexpr BlockLength offset = 20;
13189
13190 setEnumeration<BooleanEnum>(offset, value);
13191 return *this;
13192 }
13193
13195 {
13196 constexpr BlockLength offset = 20;
13197
13198 setOrdinary(offset, NullUint8NULL());
13199 return *this;
13200 }
13201
13204 auto investmentDecision() const noexcept
13205 {
13206 constexpr BlockLength offset = 21;
13207
13208 return ordinary<NullInt64NULL>(offset, optional);
13209 }
13210
13213 {
13214 constexpr BlockLength offset = 21;
13215
13216 setOrdinary(offset, value);
13217 return *this;
13218 }
13219
13221 {
13222 constexpr BlockLength offset = 21;
13223
13224 setOrdinary(offset, NullInt64NULL());
13225 return *this;
13226 }
13227
13230 auto executionDecision() const noexcept
13231 {
13232 constexpr BlockLength offset = 29;
13233
13234 return ordinary<NullInt64NULL>(offset, optional);
13235 }
13236
13239 {
13240 constexpr BlockLength offset = 29;
13241
13242 setOrdinary(offset, value);
13243 return *this;
13244 }
13245
13247 {
13248 constexpr BlockLength offset = 29;
13249
13250 setOrdinary(offset, NullInt64NULL());
13251 return *this;
13252 }
13253
13256 auto clientIdCode() const noexcept
13257 {
13258 constexpr BlockLength offset = 37;
13259
13260 return ordinary<NullInt64NULL>(offset, optional);
13261 }
13262
13265 {
13266 constexpr BlockLength offset = 37;
13267
13268 setOrdinary(offset, value);
13269 return *this;
13270 }
13271
13273 {
13274 constexpr BlockLength offset = 37;
13275
13276 setOrdinary(offset, NullInt64NULL());
13277 return *this;
13278 }
13279
13282 auto mifidId() const noexcept
13283 {
13284 constexpr BlockLength offset = 45;
13285
13286 return ordinary<NullInt64NULL>(offset, optional);
13287 }
13288
13290 ThisType& mifidId(Int64NULL value) noexcept
13291 {
13292 constexpr BlockLength offset = 45;
13293
13294 setOrdinary(offset, value);
13295 return *this;
13296 }
13297
13299 {
13300 constexpr BlockLength offset = 45;
13301
13302 setOrdinary(offset, NullInt64NULL());
13303 return *this;
13304 }
13305
13308 auto selfMatchPreventionId() const noexcept
13309 {
13310 constexpr BlockLength offset = 53;
13311
13312 return ordinary<NullInt64NULL>(offset, optional);
13313 }
13314
13317 {
13318 constexpr BlockLength offset = 53;
13319
13320 setOrdinary(offset, value);
13321 return *this;
13322 }
13323
13325 {
13326 constexpr BlockLength offset = 53;
13327
13328 setOrdinary(offset, NullInt64NULL());
13329 return *this;
13330 }
13331
13335 {
13336 constexpr BlockLength offset = 61;
13337
13339 }
13340
13343 {
13344 constexpr BlockLength offset = 61;
13345
13347 return *this;
13348 }
13349
13351 {
13352 constexpr BlockLength offset = 61;
13353
13354 setOrdinary(offset, NullCharType());
13355 return *this;
13356 }
13357
13360 auto manualOrderIndicator() const noexcept
13361 {
13362 constexpr BlockLength offset = 62;
13363
13365 }
13366
13369 {
13370 constexpr BlockLength offset = 62;
13371
13372 setEnumeration<BooleanEnum>(offset, value);
13373 return *this;
13374 }
13375
13377 {
13378 constexpr BlockLength offset = 62;
13379
13380 setOrdinary(offset, NullUint8NULL());
13381 return *this;
13382 }
13383
13386 auto custOrderHandlingInst() const noexcept
13387 {
13388 constexpr BlockLength offset = 63;
13389
13391 }
13392
13395 {
13396 constexpr BlockLength offset = 63;
13397
13399 return *this;
13400 }
13401
13403 {
13404 constexpr BlockLength offset = 63;
13405
13406 setOrdinary(offset, NullCharType());
13407 return *this;
13408 }
13409
13412 auto positionEffect() const noexcept
13413 {
13414 constexpr BlockLength offset = 64;
13415
13417 }
13418
13421 {
13422 constexpr BlockLength offset = 64;
13423
13425 return *this;
13426 }
13427
13429 {
13430 constexpr BlockLength offset = 64;
13431
13432 setOrdinary(offset, NullCharType());
13433 return *this;
13434 }
13435
13438 auto allocHandlInst() const noexcept
13439 {
13440 constexpr BlockLength offset = 65;
13441
13443 }
13444
13447 {
13448 constexpr BlockLength offset = 65;
13449
13451 return *this;
13452 }
13453
13455 {
13456 constexpr BlockLength offset = 65;
13457
13458 setOrdinary(offset, NullCharType());
13459 return *this;
13460 }
13461
13464 auto clearingAccount() const noexcept
13465 {
13466 constexpr BlockLength offset = 66;
13467 constexpr BlockLength length = 14;
13468
13469 return fixedStr<length>(offset);
13470 }
13471
13474 {
13475 constexpr BlockLength offset = 66;
13476 constexpr BlockLength length = 14;
13477
13478 setFixedStr<length>(offset, value);
13479 return *this;
13480 }
13481
13484 auto customerAccountRefId() const noexcept
13485 {
13486 constexpr BlockLength offset = 80;
13487 constexpr BlockLength length = 12;
13488
13489 return fixedStr<length>(offset, optional);
13490 }
13491
13494 {
13495 constexpr BlockLength offset = 80;
13496 constexpr BlockLength length = 12;
13497
13498 setFixedStr<length>(offset, value);
13499 return *this;
13500 }
13501
13503 {
13504 constexpr BlockLength offset = 80;
13505 constexpr BlockLength length = 12;
13506
13507 setFixedStr<length>(offset, StrRef());
13508 return *this;
13509 }
13510
13513 auto memo() const noexcept
13514 {
13515 constexpr BlockLength offset = 92;
13516 constexpr BlockLength length = 30;
13517
13518 return fixedStr<length>(offset, optional);
13519 }
13520
13522 ThisType& memo(StrRef value) noexcept
13523 {
13524 constexpr BlockLength offset = 92;
13525 constexpr BlockLength length = 30;
13526
13527 setFixedStr<length>(offset, value);
13528 return *this;
13529 }
13530
13532 {
13533 constexpr BlockLength offset = 92;
13534 constexpr BlockLength length = 30;
13535
13536 setFixedStr<length>(offset, StrRef());
13537 return *this;
13538 }
13539
13542 auto allocationAccount() const noexcept
13543 {
13544 constexpr BlockLength offset = 122;
13545 constexpr BlockLength length = 20;
13546
13547 return fixedStr<length>(offset, optional);
13548 }
13549
13552 {
13553 constexpr BlockLength offset = 122;
13554 constexpr BlockLength length = 20;
13555
13556 setFixedStr<length>(offset, value);
13557 return *this;
13558 }
13559
13561 {
13562 constexpr BlockLength offset = 122;
13563 constexpr BlockLength length = 20;
13564
13565 setFixedStr<length>(offset, StrRef());
13566 return *this;
13567 }
13568
13571 auto onBehalfOfCompId() const noexcept
13572 {
13573 constexpr BlockLength offset = 142;
13574 constexpr BlockLength length = 41;
13575
13576 return fixedStr<length>(offset, optional);
13577 }
13578
13581 {
13582 constexpr BlockLength offset = 142;
13583 constexpr BlockLength length = 41;
13584
13585 setFixedStr<length>(offset, value);
13586 return *this;
13587 }
13588
13590 {
13591 constexpr BlockLength offset = 142;
13592 constexpr BlockLength length = 41;
13593
13594 setFixedStr<length>(offset, StrRef());
13595 return *this;
13596 }
13597
13600 auto onBehalfOfSubId() const noexcept
13601 {
13602 constexpr BlockLength offset = 183;
13603 constexpr BlockLength length = 41;
13604
13605 return fixedStr<length>(offset);
13606 }
13607
13610 {
13611 constexpr BlockLength offset = 183;
13612 constexpr BlockLength length = 41;
13613
13614 setFixedStr<length>(offset, value);
13615 return *this;
13616 }
13617
13620 auto onBehalfOfLocationId() const noexcept
13621 {
13622 constexpr BlockLength offset = 224;
13623 constexpr BlockLength length = 41;
13624
13625 return fixedStr<length>(offset);
13626 }
13627
13630 {
13631 constexpr BlockLength offset = 224;
13632 constexpr BlockLength length = 41;
13633
13634 setFixedStr<length>(offset, value);
13635 return *this;
13636 }
13637
13640 constexpr
13642 {
13643 return
13644 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
13646 }
13647
13650 constexpr
13652 {
13653 return
13654 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
13655 265;
13656 }
13657
13660 constexpr
13661 static StrRef className() noexcept
13662 {
13663 return constructStrRef("NewOrderCrossRequest.SidesEntry");
13664 }
13665 };
13666
13668 typedef
13671
13674 struct
13676 <
13678 >
13679 {
13681 typedef
13683 <
13685 >
13687
13690
13694 : Base(data, numericCast<Base::BlockLength>(length), version)
13695 {
13697 assert(length >= minimalBlockLength(version));
13698 }
13699
13702 {
13703 return *this;
13704 }
13705
13707 ThisType& reset() noexcept
13708 {
13712 legQty(nullOpt);
13716
13718 return *this;
13719 }
13720
13723 auto legSymbol() const noexcept
13724 {
13725 constexpr BlockLength offset = 0;
13726
13727 return ordinary<NullInt32NULL>(offset, optional);
13728 }
13729
13732 {
13733 constexpr BlockLength offset = 0;
13734
13735 setOrdinary(offset, value);
13736 return *this;
13737 }
13738
13740 {
13741 constexpr BlockLength offset = 0;
13742
13743 setOrdinary(offset, NullInt32NULL());
13744 return *this;
13745 }
13746
13749 auto legSecurityIdSource() const noexcept
13750 {
13751 constexpr BlockLength offset = 4;
13752
13753 return ordinary<NullInt8NULL>(offset, optional);
13754 }
13755
13758 {
13759 constexpr BlockLength offset = 4;
13760
13761 setOrdinary(offset, value);
13762 return *this;
13763 }
13764
13766 {
13767 constexpr BlockLength offset = 4;
13768
13769 setOrdinary(offset, NullInt8NULL());
13770 return *this;
13771 }
13772
13775 auto legOptAttribute() const noexcept
13776 {
13777 constexpr BlockLength offset = 5;
13778
13779 return ordinary<NullInt32NULL>(offset, optional);
13780 }
13781
13784 {
13785 constexpr BlockLength offset = 5;
13786
13787 setOrdinary(offset, value);
13788 return *this;
13789 }
13790
13792 {
13793 constexpr BlockLength offset = 5;
13794
13795 setOrdinary(offset, NullInt32NULL());
13796 return *this;
13797 }
13798
13801 auto legQty() const noexcept
13802 {
13803 constexpr BlockLength offset = 9;
13804
13805 return ordinary<NullDecimal9>(offset, optional);
13806 }
13807
13809 ThisType& legQty(Decimal9 value) noexcept
13810 {
13811 constexpr BlockLength offset = 9;
13812
13813 setOrdinary(offset, value);
13814 return *this;
13815 }
13816
13818 {
13819 constexpr BlockLength offset = 9;
13820
13821 setOrdinary(offset, NullDecimal9());
13822 return *this;
13823 }
13824
13827 auto legPrice() const noexcept
13828 {
13829 constexpr BlockLength offset = 17;
13830
13831 return ordinary<NullDecimal9>(offset, optional);
13832 }
13833
13835 ThisType& legPrice(Decimal9 value) noexcept
13836 {
13837 constexpr BlockLength offset = 17;
13838
13839 setOrdinary(offset, value);
13840 return *this;
13841 }
13842
13844 {
13845 constexpr BlockLength offset = 17;
13846
13847 setOrdinary(offset, NullDecimal9());
13848 return *this;
13849 }
13850
13853 auto legSecurityType() const noexcept
13854 {
13855 constexpr BlockLength offset = 25;
13856
13857 return enumeration<SecurityTypeEnum>(offset);
13858 }
13859
13862 {
13863 constexpr BlockLength offset = 25;
13864
13865 setEnumeration<SecurityTypeEnum>(offset, value);
13866 return *this;
13867 }
13868
13871 auto legMemoField() const noexcept
13872 {
13873 constexpr BlockLength offset = 26;
13874 constexpr BlockLength length = 12;
13875
13876 return fixedStr<length>(offset, optional);
13877 }
13878
13881 {
13882 constexpr BlockLength offset = 26;
13883 constexpr BlockLength length = 12;
13884
13885 setFixedStr<length>(offset, value);
13886 return *this;
13887 }
13888
13890 {
13891 constexpr BlockLength offset = 26;
13892 constexpr BlockLength length = 12;
13893
13894 setFixedStr<length>(offset, StrRef());
13895 return *this;
13896 }
13897
13900 auto legSecurityId() const noexcept
13901 {
13902 constexpr BlockLength offset = 38;
13903 constexpr BlockLength length = 75;
13904
13905 return fixedStr<length>(offset, optional);
13906 }
13907
13910 {
13911 constexpr BlockLength offset = 38;
13912 constexpr BlockLength length = 75;
13913
13914 setFixedStr<length>(offset, value);
13915 return *this;
13916 }
13917
13919 {
13920 constexpr BlockLength offset = 38;
13921 constexpr BlockLength length = 75;
13922
13923 setFixedStr<length>(offset, StrRef());
13924 return *this;
13925 }
13926
13929 constexpr
13931 {
13932 return
13933 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
13935 }
13936
13939 constexpr
13941 {
13942 return
13943 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
13944 113;
13945 }
13946
13949 constexpr
13950 static StrRef className() noexcept
13951 {
13952 return constructStrRef("NewOrderCrossRequest.LegsEntry");
13953 }
13954 };
13955
13957 typedef
13960
13963
13966 : SbeMessage(data, length, version)
13967 {
13969 checkLength(length, version);
13971 reset();
13972 }
13973
13985
13988 : SbeMessage(data, length)
13989 {
13990 checkCompatibility();
13991 }
13992
13994 explicit
13996 : SbeMessage(message)
13997 {
13998 assert(message.valid());
13999
14000 checkCompatibility();
14001 }
14002
14005 NewOrderCrossRequest(void* data, EncodedLength length, NoInit, NoCheck) noexcept
14006 : SbeMessage(data, length, NoCheck())
14007 {
14008 assert(schemaId() == Schema::Id);
14009 assert(version() >= Schema::MinimalVersion);
14010 assert(TemplateId == templateId());
14011 }
14012
14015 auto price() const noexcept
14016 {
14017 constexpr BlockLength offset = 0;
14018
14019 return ordinary<Decimal9>(offset);
14020 }
14021
14023 ThisType& price(Decimal9 value) noexcept
14024 {
14025 constexpr BlockLength offset = 0;
14026
14027 setOrdinary(offset, value);
14028 return *this;
14029 }
14030
14033 auto orderQty() const noexcept
14034 {
14035 constexpr BlockLength offset = 8;
14036
14037 return ordinary<Decimal9>(offset);
14038 }
14039
14041 ThisType& orderQty(Decimal9 value) noexcept
14042 {
14043 constexpr BlockLength offset = 8;
14044
14045 setOrdinary(offset, value);
14046 return *this;
14047 }
14048
14051 auto symbol() const noexcept
14052 {
14053 constexpr BlockLength offset = 16;
14054
14055 return ordinary<Int32>(offset);
14056 }
14057
14059 ThisType& symbol(Int32 value) noexcept
14060 {
14061 constexpr BlockLength offset = 16;
14062
14063 setOrdinary(offset, value);
14064 return *this;
14065 }
14066
14069 auto originatorUserId() const noexcept
14070 {
14071 constexpr BlockLength offset = 20;
14072 constexpr BlockLength length = 20;
14073
14074 return fixedStr<length>(offset);
14075 }
14076
14079 {
14080 constexpr BlockLength offset = 20;
14081 constexpr BlockLength length = 20;
14082
14083 setFixedStr<length>(offset, value);
14084 return *this;
14085 }
14086
14089 auto ordType() const noexcept
14090 {
14091 constexpr BlockLength offset = 40;
14092
14093 return enumeration<OrderTypeEnum>(offset);
14094 }
14095
14098 {
14099 constexpr BlockLength offset = 40;
14100
14101 setEnumeration<OrderTypeEnum>(offset, value);
14102 return *this;
14103 }
14104
14107 auto crossId() const noexcept
14108 {
14109 constexpr BlockLength offset = 41;
14110
14111 return ordinary<Int64>(offset);
14112 }
14113
14115 ThisType& crossId(Int64 value) noexcept
14116 {
14117 constexpr BlockLength offset = 41;
14118
14119 setOrdinary(offset, value);
14120 return *this;
14121 }
14122
14125 auto crossType() const noexcept
14126 {
14127 constexpr BlockLength offset = 49;
14128
14129 return enumeration<CrossTypeEnum>(offset);
14130 }
14131
14134 {
14135 constexpr BlockLength offset = 49;
14136
14137 setEnumeration<CrossTypeEnum>(offset, value);
14138 return *this;
14139 }
14140
14143 auto tradeType() const noexcept
14144 {
14145 constexpr BlockLength offset = 50;
14146 constexpr BlockLength length = 3;
14147
14148 return fixedStr<length>(offset, optional);
14149 }
14150
14152 ThisType& tradeType(StrRef value) noexcept
14153 {
14154 constexpr BlockLength offset = 50;
14155 constexpr BlockLength length = 3;
14156
14157 setFixedStr<length>(offset, value);
14158 return *this;
14159 }
14160
14162 {
14163 constexpr BlockLength offset = 50;
14164 constexpr BlockLength length = 3;
14165
14166 setFixedStr<length>(offset, StrRef());
14167 return *this;
14168 }
14169
14172 auto execInst() const noexcept
14173 {
14174 constexpr BlockLength offset = 53;
14175
14177 }
14178
14181 {
14182 constexpr BlockLength offset = 53;
14183
14184 setEnumeration<ExecInstEnum>(offset, value);
14185 return *this;
14186 }
14187
14189 {
14190 constexpr BlockLength offset = 53;
14191
14192 setOrdinary(offset, NullCharType());
14193 return *this;
14194 }
14195
14198 auto priceType() const noexcept
14199 {
14200 constexpr BlockLength offset = 54;
14201
14203 }
14204
14207 {
14208 constexpr BlockLength offset = 54;
14209
14210 setEnumeration<PriceTypeEnum>(offset, value);
14211 return *this;
14212 }
14213
14215 {
14216 constexpr BlockLength offset = 54;
14217
14218 setOrdinary(offset, NullUint8NULL());
14219 return *this;
14220 }
14221
14224 auto bypassMQR() const noexcept
14225 {
14226 constexpr BlockLength offset = 55;
14227
14229 }
14230
14233 {
14234 constexpr BlockLength offset = 55;
14235
14236 setEnumeration<BooleanEnum>(offset, value);
14237 return *this;
14238 }
14239
14241 {
14242 constexpr BlockLength offset = 55;
14243
14244 setOrdinary(offset, NullUint8NULL());
14245 return *this;
14246 }
14247
14250 auto hedgeOnly() const noexcept
14251 {
14252 constexpr BlockLength offset = 56;
14253
14255 }
14256
14259 {
14260 constexpr BlockLength offset = 56;
14261
14262 setEnumeration<BooleanEnum>(offset, value);
14263 return *this;
14264 }
14265
14267 {
14268 constexpr BlockLength offset = 56;
14269
14270 setOrdinary(offset, NullUint8NULL());
14271 return *this;
14272 }
14273
14276 auto benchmarkPrice() const noexcept
14277 {
14278 constexpr BlockLength offset = 57;
14279
14280 return ordinary<NullDecimal9>(offset, optional);
14281 }
14282
14285 {
14286 constexpr BlockLength offset = 57;
14287
14288 setOrdinary(offset, value);
14289 return *this;
14290 }
14291
14293 {
14294 constexpr BlockLength offset = 57;
14295
14296 setOrdinary(offset, NullDecimal9());
14297 return *this;
14298 }
14299
14302 auto benchMarkPriceType() const noexcept
14303 {
14304 constexpr BlockLength offset = 65;
14305
14307 }
14308
14311 {
14312 constexpr BlockLength offset = 65;
14313
14315 return *this;
14316 }
14317
14319 {
14320 constexpr BlockLength offset = 65;
14321
14322 setOrdinary(offset, NullUint8NULL());
14323 return *this;
14324 }
14325
14328 auto timeInForce() const noexcept
14329 {
14330 constexpr BlockLength offset = 66;
14331
14332 return enumeration<TimeInForceEnum>(offset);
14333 }
14334
14337 {
14338 constexpr BlockLength offset = 66;
14339
14340 setEnumeration<TimeInForceEnum>(offset, value);
14341 return *this;
14342 }
14343
14346 auto transactDetails() const noexcept
14347 {
14348 constexpr BlockLength offset = 67;
14349 constexpr BlockLength length = 100;
14350
14351 return fixedStr<length>(offset, optional);
14352 }
14353
14356 {
14357 constexpr BlockLength offset = 67;
14358 constexpr BlockLength length = 100;
14359
14360 setFixedStr<length>(offset, value);
14361 return *this;
14362 }
14363
14365 {
14366 constexpr BlockLength offset = 67;
14367 constexpr BlockLength length = 100;
14368
14369 setFixedStr<length>(offset, StrRef());
14370 return *this;
14371 }
14372
14375 auto transactTime() const noexcept(ticksToTimestamp::Nothrow)
14376 {
14377 constexpr BlockLength offset = 167;
14378 return convertible<ticksToTimestamp>(offset);
14379 }
14380
14382 ThisType& transactTime(Timestamp value) noexcept(timestampToTicks::Nothrow)
14383 {
14384 constexpr BlockLength offset = 167;
14385
14386 setOrdinary(offset, convert<timestampToTicks>(value));
14387 return *this;
14388 }
14389
14392 Sides sides() const noexcept
14393 {
14394 return getGroup<Sides>(SidesAccess(), *this);
14395 }
14396
14399 Sides sides() noexcept
14400 {
14401 return getGroup<Sides>(SidesAccess(), *this);
14402 }
14403
14408 {
14409 return constructGroup<Sides>(
14410 SidesAccess(),
14411 length,
14412 *this);
14413 }
14414
14418 {
14419 return setupGroup<Sides>(
14420 SidesAccess(),
14421 length,
14422 *this);
14423 }
14424
14427 Legs legs() const noexcept
14428 {
14429 return getGroup<Legs>(LegsAccess(), *this);
14430 }
14431
14434 Legs legs() noexcept
14435 {
14436 return getGroup<Legs>(LegsAccess(), *this);
14437 }
14438
14443 {
14444 return constructGroup<Legs>(
14445 LegsAccess(),
14446 length,
14447 *this);
14448 }
14449
14453 {
14454 return setupGroup<Legs>(
14455 LegsAccess(),
14456 length,
14457 *this);
14458 }
14459
14461 constexpr
14463 {
14464 return
14465 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
14466 175;
14467 }
14468
14470 constexpr
14472 {
14473 return
14474 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
14476 }
14477
14480 constexpr
14482 {
14483 return
14484 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
14485 static_cast<MessageSize>(Sides::EmptySize) + static_cast<MessageSize>(Legs::EmptySize);
14486 }
14487
14490 constexpr
14491 static UInt64 getMaxMessageSize(UInt8 maxGroupItems = 255) noexcept
14492 {
14493 return
14494 static_cast<UInt64>(MessageHeaderBuilder::Size) +
14496 (GroupSizeEncoding::Size + SidesEntry::blockLength(Schema::Version) * static_cast<UInt64>(maxGroupItems)) +
14497 (GroupSizeEncoding::Size + LegsEntry::blockLength(Schema::Version) * static_cast<UInt64>(maxGroupItems));
14498 }
14499
14502 {
14503 sides(nullOpt);
14504 legs(nullOpt);
14505 return *this;
14506 }
14507
14509 ThisType& reset() noexcept
14510 {
14519
14521 return *this;
14522 }
14523
14526 constexpr
14527 static StrRef className() noexcept
14528 {
14529 return constructStrRef("NewOrderCrossRequest");
14530 }
14531
14534 constexpr
14535 static StrRef fixType() noexcept
14536 {
14537 return constructStrRef("s");
14538 }
14539
14542 std::string toString() const;
14543
14546 const void* tail() const noexcept
14547 {
14548 return
14549 legs().tail();
14550 }
14551
14555 {
14556 return
14558 }
14559
14560private:
14561 void checkLength(
14562 EncodedLength length, SchemaVersion version) const
14563 {
14564 const EncodedLength minimalRequiredLength =
14565 minimalBlockLength(version) +
14567 getMinimalVariableFieldsSize(version);
14568
14570 *this, length, minimalRequiredLength);
14571 }
14572
14574 void checkVarLenFields() const
14575 {
14576 groups().
14577 checkTail<Sides>().
14578 checkTail<Legs>();
14579 }
14580
14581 void checkCompatibility() const
14582 {
14583 assert(TemplateId == templateId());
14584
14585 checkSchema<Schema>(schemaId(), version());
14586 checkLength(bufferSize(), version());
14587 checkVarLenFields();
14588 }
14589
14591 struct SidesAccess
14592 {
14593 Sides operator()(const NewOrderCrossRequest& obj) const noexcept
14594 {
14595 return obj.
14596 groups().
14597 head<Sides>();
14598 }
14599 };
14600
14603 void sides(NullOpt) noexcept
14604 {
14605 resetGroup<Sides>(SidesAccess(), *this);
14606 }
14607
14609 struct LegsAccess
14610 {
14611 Legs operator()(const NewOrderCrossRequest& obj) const noexcept
14612 {
14613 return obj.
14614 groups().
14615 tail<Sides>().
14616 head<Legs>();
14617 }
14618 };
14619
14622 void legs(NullOpt) noexcept
14623 {
14624 resetGroup<Legs>(LegsAccess(), *this);
14625 }
14626};
14627
14629struct
14631: SbeMessage
14632{
14635
14638
14640 enum { TemplateId = 9 };
14641
14644
14647 : SbeMessage(data, length, version)
14648 {
14650 checkLength(length, version);
14652 reset();
14653 }
14654
14666
14669 : SbeMessage(data, length)
14670 {
14671 checkCompatibility();
14672 }
14673
14675 explicit
14677 : SbeMessage(message)
14678 {
14679 assert(message.valid());
14680
14681 checkCompatibility();
14682 }
14683
14687 : SbeMessage(data, length, NoCheck())
14688 {
14689 assert(schemaId() == Schema::Id);
14690 assert(version() >= Schema::MinimalVersion);
14691 assert(TemplateId == templateId());
14692 }
14693
14696 auto originatorUserId() const noexcept
14697 {
14698 constexpr BlockLength offset = 0;
14699 constexpr BlockLength length = 20;
14700
14701 return fixedStr<length>(offset);
14702 }
14703
14706 {
14707 constexpr BlockLength offset = 0;
14708 constexpr BlockLength length = 20;
14709
14710 setFixedStr<length>(offset, value);
14711 return *this;
14712 }
14713
14716 auto ordType() const noexcept
14717 {
14718 constexpr BlockLength offset = 20;
14719
14721 }
14722
14725 {
14726 constexpr BlockLength offset = 20;
14727
14728 setEnumeration<OrderTypeEnum>(offset, value);
14729 return *this;
14730 }
14731
14733 {
14734 constexpr BlockLength offset = 20;
14735
14736 setOrdinary(offset, NullUint8NULL());
14737 return *this;
14738 }
14739
14742 auto side() const noexcept
14743 {
14744 constexpr BlockLength offset = 21;
14745
14747 }
14748
14750 ThisType& side(SideEnum value) noexcept
14751 {
14752 constexpr BlockLength offset = 21;
14753
14754 setEnumeration<SideEnum>(offset, value);
14755 return *this;
14756 }
14757
14759 {
14760 constexpr BlockLength offset = 21;
14761
14762 setOrdinary(offset, NullUint8NULL());
14763 return *this;
14764 }
14765
14768 auto symbol() const noexcept
14769 {
14770 constexpr BlockLength offset = 22;
14771
14772 return ordinary<NullInt32NULL>(offset, optional);
14773 }
14774
14776 ThisType& symbol(Int32NULL value) noexcept
14777 {
14778 constexpr BlockLength offset = 22;
14779
14780 setOrdinary(offset, value);
14781 return *this;
14782 }
14783
14785 {
14786 constexpr BlockLength offset = 22;
14787
14788 setOrdinary(offset, NullInt32NULL());
14789 return *this;
14790 }
14791
14794 auto clOrdId() const noexcept
14795 {
14796 constexpr BlockLength offset = 26;
14797
14798 return ordinary<Int64>(offset);
14799 }
14800
14802 ThisType& clOrdId(Int64 value) noexcept
14803 {
14804 constexpr BlockLength offset = 26;
14805
14806 setOrdinary(offset, value);
14807 return *this;
14808 }
14809
14812 auto marketTypeId() const noexcept
14813 {
14814 constexpr BlockLength offset = 34;
14815
14816 return ordinary<NullInt32NULL>(offset, optional);
14817 }
14818
14821 {
14822 constexpr BlockLength offset = 34;
14823
14824 setOrdinary(offset, value);
14825 return *this;
14826 }
14827
14829 {
14830 constexpr BlockLength offset = 34;
14831
14832 setOrdinary(offset, NullInt32NULL());
14833 return *this;
14834 }
14835
14838 auto price() const noexcept
14839 {
14840 constexpr BlockLength offset = 38;
14841
14842 return ordinary<NullDecimal9>(offset, optional);
14843 }
14844
14846 ThisType& price(Decimal9 value) noexcept
14847 {
14848 constexpr BlockLength offset = 38;
14849
14850 setOrdinary(offset, value);
14851 return *this;
14852 }
14853
14855 {
14856 constexpr BlockLength offset = 38;
14857
14858 setOrdinary(offset, NullDecimal9());
14859 return *this;
14860 }
14861
14864 auto massCancelRequestType() const noexcept
14865 {
14866 constexpr BlockLength offset = 46;
14867
14869 }
14870
14873 {
14874 constexpr BlockLength offset = 46;
14875
14877 return *this;
14878 }
14879
14882 auto timeInForce() const noexcept
14883 {
14884 constexpr BlockLength offset = 47;
14885
14887 }
14888
14891 {
14892 constexpr BlockLength offset = 47;
14893
14894 setEnumeration<TimeInForceEnum>(offset, value);
14895 return *this;
14896 }
14897
14899 {
14900 constexpr BlockLength offset = 47;
14901
14902 setOrdinary(offset, NullUint8NULL());
14903 return *this;
14904 }
14905
14908 auto onBehalfOfSubId() const noexcept
14909 {
14910 constexpr BlockLength offset = 48;
14911 constexpr BlockLength length = 41;
14912
14913 return fixedStr<length>(offset, optional);
14914 }
14915
14918 {
14919 constexpr BlockLength offset = 48;
14920 constexpr BlockLength length = 41;
14921
14922 setFixedStr<length>(offset, value);
14923 return *this;
14924 }
14925
14927 {
14928 constexpr BlockLength offset = 48;
14929 constexpr BlockLength length = 41;
14930
14931 setFixedStr<length>(offset, StrRef());
14932 return *this;
14933 }
14934
14936 constexpr
14938 {
14939 return
14940 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
14941 89;
14942 }
14943
14945 constexpr
14947 {
14948 return
14949 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
14951 }
14952
14955 constexpr
14957 {
14958 return
14959 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
14960 0;
14961 }
14962
14965 constexpr
14967 {
14968 return
14969 static_cast<UInt64>(MessageHeaderBuilder::Size) +
14971 }
14972
14975 {
14976 return *this;
14977 }
14978
14980 ThisType& reset() noexcept
14981 {
14983 side(nullOpt);
14984 symbol(nullOpt);
14986 price(nullOpt);
14989
14991 return *this;
14992 }
14993
14996 constexpr
14997 static StrRef className() noexcept
14998 {
14999 return constructStrRef("OrderMassCancelRequest");
15000 }
15001
15004 constexpr
15005 static StrRef fixType() noexcept
15006 {
15007 return constructStrRef("q");
15008 }
15009
15012 std::string toString() const;
15013
15016 const void* tail() const noexcept
15017 {
15018 return
15021 binary(),
15022 static_cast<ptrdiff_t>(SbeMessage::blockLength()) +
15024 }
15025
15029 {
15030 return
15032 }
15033
15034private:
15035 void checkLength(
15036 EncodedLength length, SchemaVersion version) const
15037 {
15038 const EncodedLength minimalRequiredLength =
15039 minimalBlockLength(version) +
15041 getMinimalVariableFieldsSize(version);
15042
15044 *this, length, minimalRequiredLength);
15045 }
15046
15047 void checkCompatibility() const
15048 {
15049 assert(TemplateId == templateId());
15050
15051 checkSchema<Schema>(schemaId(), version());
15052 checkLength(bufferSize(), version());
15053 }
15054};
15055
15057struct
15059: SbeMessage
15060{
15063
15066
15068 enum { TemplateId = 10 };
15069
15072 struct
15074 <
15076 >
15077 {
15079 typedef
15081 <
15083 >
15085
15088
15092 : Base(data, numericCast<Base::BlockLength>(length), version)
15093 {
15095 assert(length >= minimalBlockLength(version));
15096 }
15097
15100 {
15101 return *this;
15102 }
15103
15105 ThisType& reset() noexcept
15106 {
15108 return *this;
15109 }
15110
15113 auto quoteSetId() const noexcept
15114 {
15115 constexpr BlockLength offset = 0;
15116
15117 return ordinary<Int32>(offset);
15118 }
15119
15121 ThisType& quoteSetId(Int32 value) noexcept
15122 {
15123 constexpr BlockLength offset = 0;
15124
15125 setOrdinary(offset, value);
15126 return *this;
15127 }
15128
15131 auto underlyingSymbol() const noexcept
15132 {
15133 constexpr BlockLength offset = 4;
15134
15135 return ordinary<Int32>(offset);
15136 }
15137
15140 {
15141 constexpr BlockLength offset = 4;
15142
15143 setOrdinary(offset, value);
15144 return *this;
15145 }
15146
15149 auto quoteEntryId() const noexcept
15150 {
15151 constexpr BlockLength offset = 8;
15152
15153 return ordinary<Int32>(offset);
15154 }
15155
15157 ThisType& quoteEntryId(Int32 value) noexcept
15158 {
15159 constexpr BlockLength offset = 8;
15160
15161 setOrdinary(offset, value);
15162 return *this;
15163 }
15164
15167 auto symbol() const noexcept
15168 {
15169 constexpr BlockLength offset = 12;
15170
15171 return ordinary<Int32>(offset);
15172 }
15173
15175 ThisType& symbol(Int32 value) noexcept
15176 {
15177 constexpr BlockLength offset = 12;
15178
15179 setOrdinary(offset, value);
15180 return *this;
15181 }
15182
15185 auto bidPx() const noexcept
15186 {
15187 constexpr BlockLength offset = 16;
15188
15189 return ordinary<Decimal9>(offset);
15190 }
15191
15193 ThisType& bidPx(Decimal9 value) noexcept
15194 {
15195 constexpr BlockLength offset = 16;
15196
15197 setOrdinary(offset, value);
15198 return *this;
15199 }
15200
15203 auto offerPx() const noexcept
15204 {
15205 constexpr BlockLength offset = 24;
15206
15207 return ordinary<Decimal9>(offset);
15208 }
15209
15211 ThisType& offerPx(Decimal9 value) noexcept
15212 {
15213 constexpr BlockLength offset = 24;
15214
15215 setOrdinary(offset, value);
15216 return *this;
15217 }
15218
15221 auto bidSz() const noexcept
15222 {
15223 constexpr BlockLength offset = 32;
15224
15225 return ordinary<Decimal9>(offset);
15226 }
15227
15229 ThisType& bidSz(Decimal9 value) noexcept
15230 {
15231 constexpr BlockLength offset = 32;
15232
15233 setOrdinary(offset, value);
15234 return *this;
15235 }
15236
15239 auto offerSz() const noexcept
15240 {
15241 constexpr BlockLength offset = 40;
15242
15243 return ordinary<Decimal9>(offset);
15244 }
15245
15247 ThisType& offerSz(Decimal9 value) noexcept
15248 {
15249 constexpr BlockLength offset = 40;
15250
15251 setOrdinary(offset, value);
15252 return *this;
15253 }
15254
15257 constexpr
15259 {
15260 return
15261 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
15263 }
15264
15267 constexpr
15269 {
15270 return
15271 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
15272 48;
15273 }
15274
15277 constexpr
15278 static StrRef className() noexcept
15279 {
15280 return constructStrRef("MassQuoteRequest.QuoteSetsEntry");
15281 }
15282 };
15283
15285 typedef
15288
15290 MassQuoteRequest() = default;
15291
15294 : SbeMessage(data, length, version)
15295 {
15297 checkLength(length, version);
15299 reset();
15300 }
15301
15313
15316 : SbeMessage(data, length)
15317 {
15318 checkCompatibility();
15319 }
15320
15322 explicit
15324 : SbeMessage(message)
15325 {
15326 assert(message.valid());
15327
15328 checkCompatibility();
15329 }
15330
15333 MassQuoteRequest(void* data, EncodedLength length, NoInit, NoCheck) noexcept
15334 : SbeMessage(data, length, NoCheck())
15335 {
15336 assert(schemaId() == Schema::Id);
15337 assert(version() >= Schema::MinimalVersion);
15338 assert(TemplateId == templateId());
15339 }
15340
15343 auto quoteId() const noexcept
15344 {
15345 constexpr BlockLength offset = 0;
15346
15347 return ordinary<Int64>(offset);
15348 }
15349
15351 ThisType& quoteId(Int64 value) noexcept
15352 {
15353 constexpr BlockLength offset = 0;
15354
15355 setOrdinary(offset, value);
15356 return *this;
15357 }
15358
15361 auto riskProtectionReset() const noexcept
15362 {
15363 constexpr BlockLength offset = 8;
15364
15366 }
15367
15370 {
15371 constexpr BlockLength offset = 8;
15372
15373 setEnumeration<BooleanEnum>(offset, value);
15374 return *this;
15375 }
15376
15378 {
15379 constexpr BlockLength offset = 8;
15380
15381 setOrdinary(offset, NullUint8NULL());
15382 return *this;
15383 }
15384
15387 auto selfMatchPreventionId() const noexcept
15388 {
15389 constexpr BlockLength offset = 9;
15390
15391 return ordinary<NullInt64NULL>(offset, optional);
15392 }
15393
15396 {
15397 constexpr BlockLength offset = 9;
15398
15399 setOrdinary(offset, value);
15400 return *this;
15401 }
15402
15404 {
15405 constexpr BlockLength offset = 9;
15406
15407 setOrdinary(offset, NullInt64NULL());
15408 return *this;
15409 }
15410
15414 {
15415 constexpr BlockLength offset = 17;
15416
15418 }
15419
15422 {
15423 constexpr BlockLength offset = 17;
15424
15426 return *this;
15427 }
15428
15430 {
15431 constexpr BlockLength offset = 17;
15432
15433 setOrdinary(offset, NullCharType());
15434 return *this;
15435 }
15436
15439 auto originatorUserId() const noexcept
15440 {
15441 constexpr BlockLength offset = 18;
15442 constexpr BlockLength length = 20;
15443
15444 return fixedStr<length>(offset);
15445 }
15446
15449 {
15450 constexpr BlockLength offset = 18;
15451 constexpr BlockLength length = 20;
15452
15453 setFixedStr<length>(offset, value);
15454 return *this;
15455 }
15456
15459 auto directElectronicAccess() const noexcept
15460 {
15461 constexpr BlockLength offset = 38;
15462
15464 }
15465
15468 {
15469 constexpr BlockLength offset = 38;
15470
15471 setEnumeration<BooleanEnum>(offset, value);
15472 return *this;
15473 }
15474
15476 {
15477 constexpr BlockLength offset = 38;
15478
15479 setOrdinary(offset, NullUint8NULL());
15480 return *this;
15481 }
15482
15485 auto tradingCapacity() const noexcept
15486 {
15487 constexpr BlockLength offset = 39;
15488
15490 }
15491
15494 {
15495 constexpr BlockLength offset = 39;
15496
15498 return *this;
15499 }
15500
15502 {
15503 constexpr BlockLength offset = 39;
15504
15505 setOrdinary(offset, NullUint8NULL());
15506 return *this;
15507 }
15508
15511 auto liquidityProvision() const noexcept
15512 {
15513 constexpr BlockLength offset = 40;
15514
15516 }
15517
15520 {
15521 constexpr BlockLength offset = 40;
15522
15523 setEnumeration<BooleanEnum>(offset, value);
15524 return *this;
15525 }
15526
15528 {
15529 constexpr BlockLength offset = 40;
15530
15531 setOrdinary(offset, NullUint8NULL());
15532 return *this;
15533 }
15534
15537 auto commodityDerivIndicator() const noexcept
15538 {
15539 constexpr BlockLength offset = 41;
15540
15542 }
15543
15546 {
15547 constexpr BlockLength offset = 41;
15548
15549 setEnumeration<BooleanEnum>(offset, value);
15550 return *this;
15551 }
15552
15554 {
15555 constexpr BlockLength offset = 41;
15556
15557 setOrdinary(offset, NullUint8NULL());
15558 return *this;
15559 }
15560
15563 auto investmentDecision() const noexcept
15564 {
15565 constexpr BlockLength offset = 42;
15566
15567 return ordinary<NullInt64NULL>(offset, optional);
15568 }
15569
15572 {
15573 constexpr BlockLength offset = 42;
15574
15575 setOrdinary(offset, value);
15576 return *this;
15577 }
15578
15580 {
15581 constexpr BlockLength offset = 42;
15582
15583 setOrdinary(offset, NullInt64NULL());
15584 return *this;
15585 }
15586
15589 auto executionDecision() const noexcept
15590 {
15591 constexpr BlockLength offset = 50;
15592
15593 return ordinary<NullInt64NULL>(offset, optional);
15594 }
15595
15598 {
15599 constexpr BlockLength offset = 50;
15600
15601 setOrdinary(offset, value);
15602 return *this;
15603 }
15604
15606 {
15607 constexpr BlockLength offset = 50;
15608
15609 setOrdinary(offset, NullInt64NULL());
15610 return *this;
15611 }
15612
15615 auto clientIdCode() const noexcept
15616 {
15617 constexpr BlockLength offset = 58;
15618
15619 return ordinary<NullInt64NULL>(offset, optional);
15620 }
15621
15624 {
15625 constexpr BlockLength offset = 58;
15626
15627 setOrdinary(offset, value);
15628 return *this;
15629 }
15630
15632 {
15633 constexpr BlockLength offset = 58;
15634
15635 setOrdinary(offset, NullInt64NULL());
15636 return *this;
15637 }
15638
15641 auto mifidId() const noexcept
15642 {
15643 constexpr BlockLength offset = 66;
15644
15645 return ordinary<NullInt64NULL>(offset, optional);
15646 }
15647
15649 ThisType& mifidId(Int64NULL value) noexcept
15650 {
15651 constexpr BlockLength offset = 66;
15652
15653 setOrdinary(offset, value);
15654 return *this;
15655 }
15656
15658 {
15659 constexpr BlockLength offset = 66;
15660
15661 setOrdinary(offset, NullInt64NULL());
15662 return *this;
15663 }
15664
15667 QuoteSets quoteSets() const noexcept
15668 {
15669 return getGroup<QuoteSets>(QuoteSetsAccess(), *this);
15670 }
15671
15675 {
15676 return getGroup<QuoteSets>(QuoteSetsAccess(), *this);
15677 }
15678
15683 {
15685 QuoteSetsAccess(),
15686 length,
15687 *this);
15688 }
15689
15693 {
15694 return setupGroup<QuoteSets>(
15695 QuoteSetsAccess(),
15696 length,
15697 *this);
15698 }
15699
15701 constexpr
15703 {
15704 return
15705 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
15706 74;
15707 }
15708
15710 constexpr
15712 {
15713 return
15714 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
15716 }
15717
15720 constexpr
15722 {
15723 return
15724 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
15725 static_cast<MessageSize>(QuoteSets::EmptySize);
15726 }
15727
15730 constexpr
15731 static UInt64 getMaxMessageSize(UInt8 maxGroupItems = 255) noexcept
15732 {
15733 return
15734 static_cast<UInt64>(MessageHeaderBuilder::Size) +
15737 }
15738
15741 {
15743 return *this;
15744 }
15745
15764
15767 constexpr
15768 static StrRef className() noexcept
15769 {
15770 return constructStrRef("MassQuoteRequest");
15771 }
15772
15775 constexpr
15776 static StrRef fixType() noexcept
15777 {
15778 return constructStrRef("i");
15779 }
15780
15783 std::string toString() const;
15784
15787 const void* tail() const noexcept
15788 {
15789 return
15790 quoteSets().tail();
15791 }
15792
15796 {
15797 return
15799 }
15800
15801private:
15802 void checkLength(
15803 EncodedLength length, SchemaVersion version) const
15804 {
15805 const EncodedLength minimalRequiredLength =
15806 minimalBlockLength(version) +
15808 getMinimalVariableFieldsSize(version);
15809
15811 *this, length, minimalRequiredLength);
15812 }
15813
15815 void checkVarLenFields() const
15816 {
15817 groups().
15818 checkTail<QuoteSets>();
15819 }
15820
15821 void checkCompatibility() const
15822 {
15823 assert(TemplateId == templateId());
15824
15825 checkSchema<Schema>(schemaId(), version());
15826 checkLength(bufferSize(), version());
15827 checkVarLenFields();
15828 }
15829
15831 struct QuoteSetsAccess
15832 {
15833 QuoteSets operator()(const MassQuoteRequest& obj) const noexcept
15834 {
15835 return obj.
15836 groups().
15837 head<QuoteSets>();
15838 }
15839 };
15840
15843 void quoteSets(NullOpt) noexcept
15844 {
15845 resetGroup<QuoteSets>(QuoteSetsAccess(), *this);
15846 }
15847};
15848
15850struct
15852: SbeMessage
15853{
15856
15859
15861 enum { TemplateId = 11 };
15862
15865 struct
15867 <
15869 >
15870 {
15872 typedef
15874 <
15876 >
15878
15881
15885 : Base(data, numericCast<Base::BlockLength>(length), version)
15886 {
15888 assert(length >= minimalBlockLength(version));
15889 }
15890
15893 {
15894 return *this;
15895 }
15896
15898 ThisType& reset() noexcept
15899 {
15903
15905 return *this;
15906 }
15907
15910 auto underlyingSymbol() const noexcept
15911 {
15912 constexpr BlockLength offset = 0;
15913
15914 return ordinary<NullInt32NULL>(offset, optional);
15915 }
15916
15919 {
15920 constexpr BlockLength offset = 0;
15921
15922 setOrdinary(offset, value);
15923 return *this;
15924 }
15925
15927 {
15928 constexpr BlockLength offset = 0;
15929
15930 setOrdinary(offset, NullInt32NULL());
15931 return *this;
15932 }
15933
15936 auto underlyingSecurityId() const noexcept
15937 {
15938 constexpr BlockLength offset = 4;
15939
15940 return ordinary<NullInt32NULL>(offset, optional);
15941 }
15942
15945 {
15946 constexpr BlockLength offset = 4;
15947
15948 setOrdinary(offset, value);
15949 return *this;
15950 }
15951
15953 {
15954 constexpr BlockLength offset = 4;
15955
15956 setOrdinary(offset, NullInt32NULL());
15957 return *this;
15958 }
15959
15962 auto underlyingProduct() const noexcept
15963 {
15964 constexpr BlockLength offset = 8;
15965
15966 return ordinary<NullInt32NULL>(offset, optional);
15967 }
15968
15971 {
15972 constexpr BlockLength offset = 8;
15973
15974 setOrdinary(offset, value);
15975 return *this;
15976 }
15977
15979 {
15980 constexpr BlockLength offset = 8;
15981
15982 setOrdinary(offset, NullInt32NULL());
15983 return *this;
15984 }
15985
15988 constexpr
15990 {
15991 return
15992 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
15994 }
15995
15998 constexpr
16000 {
16001 return
16002 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
16003 12;
16004 }
16005
16008 constexpr
16009 static StrRef className() noexcept
16010 {
16011 return constructStrRef("QuoteCancelRequest.QuoteEntry");
16012 }
16013 };
16014
16016 typedef
16019
16022
16025 : SbeMessage(data, length, version)
16026 {
16028 checkLength(length, version);
16030 reset();
16031 }
16032
16044
16047 : SbeMessage(data, length)
16048 {
16049 checkCompatibility();
16050 }
16051
16053 explicit
16055 : SbeMessage(message)
16056 {
16057 assert(message.valid());
16058
16059 checkCompatibility();
16060 }
16061
16064 QuoteCancelRequest(void* data, EncodedLength length, NoInit, NoCheck) noexcept
16065 : SbeMessage(data, length, NoCheck())
16066 {
16067 assert(schemaId() == Schema::Id);
16068 assert(version() >= Schema::MinimalVersion);
16069 assert(TemplateId == templateId());
16070 }
16071
16074 auto quoteId() const noexcept
16075 {
16076 constexpr BlockLength offset = 0;
16077
16078 return ordinary<Int64>(offset);
16079 }
16080
16082 ThisType& quoteId(Int64 value) noexcept
16083 {
16084 constexpr BlockLength offset = 0;
16085
16086 setOrdinary(offset, value);
16087 return *this;
16088 }
16089
16092 auto quoteCancelType() const noexcept
16093 {
16094 constexpr BlockLength offset = 8;
16095
16096 return enumeration<QuoteCancelTypeEnum>(offset);
16097 }
16098
16101 {
16102 constexpr BlockLength offset = 8;
16103
16105 return *this;
16106 }
16107
16110 auto originatorUserId() const noexcept
16111 {
16112 constexpr BlockLength offset = 9;
16113 constexpr BlockLength length = 20;
16114
16115 return fixedStr<length>(offset);
16116 }
16117
16120 {
16121 constexpr BlockLength offset = 9;
16122 constexpr BlockLength length = 20;
16123
16124 setFixedStr<length>(offset, value);
16125 return *this;
16126 }
16127
16131 {
16133 QuoteEntriesAccess(),
16134 *this);
16135 }
16136
16140 {
16142 QuoteEntriesAccess(),
16143 *this);
16144 }
16145
16150 {
16152 QuoteEntriesAccess(),
16153 length,
16154 *this);
16155 }
16156
16160 {
16162 QuoteEntriesAccess(),
16163 length,
16164 *this);
16165 }
16166
16168 constexpr
16170 {
16171 return
16172 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
16173 29;
16174 }
16175
16177 constexpr
16179 {
16180 return
16181 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
16183 }
16184
16187 constexpr
16189 {
16190 return
16191 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
16193 }
16194
16197 constexpr
16198 static UInt64 getMaxMessageSize(UInt8 maxGroupItems = 255) noexcept
16199 {
16200 return
16201 static_cast<UInt64>(MessageHeaderBuilder::Size) +
16203 (GroupSizeEncoding::Size + QuoteEntry::blockLength(Schema::Version) * static_cast<UInt64>(maxGroupItems));
16204 }
16205
16208 {
16210 return *this;
16211 }
16212
16214 ThisType& reset() noexcept
16215 {
16217 return *this;
16218 }
16219
16222 constexpr
16223 static StrRef className() noexcept
16224 {
16225 return constructStrRef("QuoteCancelRequest");
16226 }
16227
16230 constexpr
16231 static StrRef fixType() noexcept
16232 {
16233 return constructStrRef("Z");
16234 }
16235
16238 std::string toString() const;
16239
16242 const void* tail() const noexcept
16243 {
16244 return
16245 quoteEntries().tail();
16246 }
16247
16251 {
16252 return
16254 }
16255
16256private:
16257 void checkLength(
16258 EncodedLength length, SchemaVersion version) const
16259 {
16260 const EncodedLength minimalRequiredLength =
16261 minimalBlockLength(version) +
16263 getMinimalVariableFieldsSize(version);
16264
16266 *this, length, minimalRequiredLength);
16267 }
16268
16270 void checkVarLenFields() const
16271 {
16272 groups().
16273 checkTail<QuoteEntries>();
16274 }
16275
16276 void checkCompatibility() const
16277 {
16278 assert(TemplateId == templateId());
16279
16280 checkSchema<Schema>(schemaId(), version());
16281 checkLength(bufferSize(), version());
16282 checkVarLenFields();
16283 }
16284
16286 struct QuoteEntriesAccess
16287 {
16288 QuoteEntries operator()(const QuoteCancelRequest& obj) const noexcept
16289 {
16290 return obj.
16291 groups().
16292 head<QuoteEntries>();
16293 }
16294 };
16295
16298 void quoteEntries(NullOpt) noexcept
16299 {
16300 resetGroup<QuoteEntries>(
16301 QuoteEntriesAccess(),
16302 *this);
16303 }
16304};
16305
16307struct
16309: SbeMessage
16310{
16313
16316
16318 enum { TemplateId = 12 };
16319
16322 struct
16324 <
16326 >
16327 {
16329 typedef
16331 <
16333 >
16335
16338
16342 : Base(data, numericCast<Base::BlockLength>(length), version)
16343 {
16345 assert(length >= minimalBlockLength(version));
16346 }
16347
16350 {
16351 return *this;
16352 }
16353
16355 ThisType& reset() noexcept
16356 {
16361
16363 return *this;
16364 }
16365
16368 auto legSymbol() const noexcept
16369 {
16370 constexpr BlockLength offset = 0;
16371
16372 return ordinary<Int32>(offset);
16373 }
16374
16376 ThisType& legSymbol(Int32 value) noexcept
16377 {
16378 constexpr BlockLength offset = 0;
16379
16380 setOrdinary(offset, value);
16381 return *this;
16382 }
16383
16386 auto legSecurityType() const noexcept
16387 {
16388 constexpr BlockLength offset = 4;
16389
16390 return enumeration<SecurityTypeEnum>(offset);
16391 }
16392
16395 {
16396 constexpr BlockLength offset = 4;
16397
16398 setEnumeration<SecurityTypeEnum>(offset, value);
16399 return *this;
16400 }
16401
16404 auto legSide() const noexcept
16405 {
16406 constexpr BlockLength offset = 5;
16407
16408 return enumeration<SideEnum>(offset);
16409 }
16410
16412 ThisType& legSide(SideEnum value) noexcept
16413 {
16414 constexpr BlockLength offset = 5;
16415
16416 setEnumeration<SideEnum>(offset, value);
16417 return *this;
16418 }
16419
16422 auto legRatioQtyDenominator() const noexcept
16423 {
16424 constexpr BlockLength offset = 6;
16425
16426 return ordinary<NullInt16NULL>(offset, optional);
16427 }
16428
16431 {
16432 constexpr BlockLength offset = 6;
16433
16434 setOrdinary(offset, value);
16435 return *this;
16436 }
16437
16439 {
16440 constexpr BlockLength offset = 6;
16441
16442 setOrdinary(offset, NullInt16NULL());
16443 return *this;
16444 }
16445
16448 auto legRatioQtyNumerator() const noexcept
16449 {
16450 constexpr BlockLength offset = 8;
16451
16452 return ordinary<NullInt16NULL>(offset, optional);
16453 }
16454
16457 {
16458 constexpr BlockLength offset = 8;
16459
16460 setOrdinary(offset, value);
16461 return *this;
16462 }
16463
16465 {
16466 constexpr BlockLength offset = 8;
16467
16468 setOrdinary(offset, NullInt16NULL());
16469 return *this;
16470 }
16471
16474 auto legPrice() const noexcept
16475 {
16476 constexpr BlockLength offset = 10;
16477
16478 return ordinary<NullDecimal9>(offset, optional);
16479 }
16480
16482 ThisType& legPrice(Decimal9 value) noexcept
16483 {
16484 constexpr BlockLength offset = 10;
16485
16486 setOrdinary(offset, value);
16487 return *this;
16488 }
16489
16491 {
16492 constexpr BlockLength offset = 10;
16493
16494 setOrdinary(offset, NullDecimal9());
16495 return *this;
16496 }
16497
16500 auto legOptionDelta() const noexcept
16501 {
16502 constexpr BlockLength offset = 18;
16503
16504 return ordinary<NullInt32NULL>(offset, optional);
16505 }
16506
16509 {
16510 constexpr BlockLength offset = 18;
16511
16512 setOrdinary(offset, value);
16513 return *this;
16514 }
16515
16517 {
16518 constexpr BlockLength offset = 18;
16519
16520 setOrdinary(offset, NullInt32NULL());
16521 return *this;
16522 }
16523
16526 constexpr
16528 {
16529 return
16530 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
16532 }
16533
16536 constexpr
16538 {
16539 return
16540 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
16541 22;
16542 }
16543
16546 constexpr
16547 static StrRef className() noexcept
16548 {
16549 return constructStrRef("SecurityDefinitionRequest_CreateStrategy.LegsEntry");
16550 }
16551 };
16552
16554 typedef
16557
16560
16570
16582
16585 : SbeMessage(data, length)
16586 {
16587 checkCompatibility();
16588 }
16589
16591 explicit
16593 : SbeMessage(message)
16594 {
16595 assert(message.valid());
16596
16597 checkCompatibility();
16598 }
16599
16603 : SbeMessage(data, length, NoCheck())
16604 {
16605 assert(schemaId() == Schema::Id);
16606 assert(version() >= Schema::MinimalVersion);
16607 assert(TemplateId == templateId());
16608 }
16609
16612 auto securityReqId() const noexcept
16613 {
16614 constexpr BlockLength offset = 0;
16615
16616 return ordinary<Int32>(offset);
16617 }
16618
16621 {
16622 constexpr BlockLength offset = 0;
16623
16624 setOrdinary(offset, value);
16625 return *this;
16626 }
16627
16630 auto securityRequestType() const noexcept
16631 {
16632 constexpr BlockLength offset = 4;
16633
16635 }
16636
16639 {
16640 constexpr BlockLength offset = 4;
16641
16643 return *this;
16644 }
16645
16648 auto marketTypeId() const noexcept
16649 {
16650 constexpr BlockLength offset = 5;
16651
16652 return ordinary<Int32>(offset);
16653 }
16654
16656 ThisType& marketTypeId(Int32 value) noexcept
16657 {
16658 constexpr BlockLength offset = 5;
16659
16660 setOrdinary(offset, value);
16661 return *this;
16662 }
16663
16666 auto securitySubType() const noexcept
16667 {
16668 constexpr BlockLength offset = 9;
16669
16670 return ordinary<NullInt16NULL>(offset, optional);
16671 }
16672
16675 {
16676 constexpr BlockLength offset = 9;
16677
16678 setOrdinary(offset, value);
16679 return *this;
16680 }
16681
16683 {
16684 constexpr BlockLength offset = 9;
16685
16686 setOrdinary(offset, NullInt16NULL());
16687 return *this;
16688 }
16689
16692 auto productId() const noexcept
16693 {
16694 constexpr BlockLength offset = 11;
16695
16696 return ordinary<NullInt32NULL>(offset, optional);
16697 }
16698
16701 {
16702 constexpr BlockLength offset = 11;
16703
16704 setOrdinary(offset, value);
16705 return *this;
16706 }
16707
16709 {
16710 constexpr BlockLength offset = 11;
16711
16712 setOrdinary(offset, NullInt32NULL());
16713 return *this;
16714 }
16715
16718 auto startDate() const noexcept(dateToTimestamp::Nothrow)
16719 {
16720 constexpr BlockLength offset = 15;
16722 }
16723
16725 ThisType& startDate(Timestamp value) noexcept(timestampToDate::Nothrow)
16726 {
16727 constexpr BlockLength offset = 15;
16728
16729 setOrdinary(offset, convert<timestampToDate>(value));
16730 return *this;
16731 }
16732
16734 {
16735 constexpr BlockLength offset = 15;
16736
16737 setOrdinary(offset, NullUTCDateOnly());
16738 return *this;
16739 }
16740
16743 auto endDate() const noexcept(dateToTimestamp::Nothrow)
16744 {
16745 constexpr BlockLength offset = 17;
16747 }
16748
16750 ThisType& endDate(Timestamp value) noexcept(timestampToDate::Nothrow)
16751 {
16752 constexpr BlockLength offset = 17;
16753
16754 setOrdinary(offset, convert<timestampToDate>(value));
16755 return *this;
16756 }
16757
16759 {
16760 constexpr BlockLength offset = 17;
16761
16762 setOrdinary(offset, NullUTCDateOnly());
16763 return *this;
16764 }
16765
16768 auto securityType() const noexcept
16769 {
16770 constexpr BlockLength offset = 19;
16771
16772 return enumeration<SecurityTypeEnum>(offset);
16773 }
16774
16777 {
16778 constexpr BlockLength offset = 19;
16779
16780 setEnumeration<SecurityTypeEnum>(offset, value);
16781 return *this;
16782 }
16783
16786 Legs legs() const noexcept
16787 {
16788 return getGroup<Legs>(LegsAccess(), *this);
16789 }
16790
16793 Legs legs() noexcept
16794 {
16795 return getGroup<Legs>(LegsAccess(), *this);
16796 }
16797
16802 {
16803 return constructGroup<Legs>(
16804 LegsAccess(),
16805 length,
16806 *this);
16807 }
16808
16812 {
16813 return setupGroup<Legs>(
16814 LegsAccess(),
16815 length,
16816 *this);
16817 }
16818
16820 constexpr
16822 {
16823 return
16824 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
16825 20;
16826 }
16827
16829 constexpr
16831 {
16832 return
16833 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
16835 }
16836
16839 constexpr
16841 {
16842 return
16843 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
16844 static_cast<MessageSize>(Legs::EmptySize);
16845 }
16846
16849 constexpr
16850 static UInt64 getMaxMessageSize(UInt8 maxGroupItems = 255) noexcept
16851 {
16852 return
16853 static_cast<UInt64>(MessageHeaderBuilder::Size) +
16855 (GroupSizeEncoding::Size + LegsEntry::blockLength(Schema::Version) * static_cast<UInt64>(maxGroupItems));
16856 }
16857
16860 {
16861 legs(nullOpt);
16862 return *this;
16863 }
16864
16866 ThisType& reset() noexcept
16867 {
16872
16874 return *this;
16875 }
16876
16879 constexpr
16880 static StrRef className() noexcept
16881 {
16882 return constructStrRef("SecurityDefinitionRequest_CreateStrategy");
16883 }
16884
16887 constexpr
16888 static StrRef fixType() noexcept
16889 {
16890 return constructStrRef("c");
16891 }
16892
16895 std::string toString() const;
16896
16899 const void* tail() const noexcept
16900 {
16901 return
16902 legs().tail();
16903 }
16904
16908 {
16909 return
16911 }
16912
16913private:
16914 void checkLength(
16915 EncodedLength length, SchemaVersion version) const
16916 {
16917 const EncodedLength minimalRequiredLength =
16918 minimalBlockLength(version) +
16920 getMinimalVariableFieldsSize(version);
16921
16923 *this, length, minimalRequiredLength);
16924 }
16925
16927 void checkVarLenFields() const
16928 {
16929 groups().
16930 checkTail<Legs>();
16931 }
16932
16933 void checkCompatibility() const
16934 {
16935 assert(TemplateId == templateId());
16936
16937 checkSchema<Schema>(schemaId(), version());
16938 checkLength(bufferSize(), version());
16939 checkVarLenFields();
16940 }
16941
16943 struct LegsAccess
16944 {
16945 Legs operator()(const SecurityDefinitionRequest_CreateStrategy& obj) const noexcept
16946 {
16947 return obj.
16948 groups().
16949 head<Legs>();
16950 }
16951 };
16952
16955 void legs(NullOpt) noexcept
16956 {
16957 resetGroup<Legs>(LegsAccess(), *this);
16958 }
16959};
16960
16962struct
16964: SbeMessage
16965{
16968
16971
16973 enum { TemplateId = 14 };
16974
16977
16987
16999
17002 : SbeMessage(data, length)
17003 {
17004 checkCompatibility();
17005 }
17006
17008 explicit
17010 : SbeMessage(message)
17011 {
17012 assert(message.valid());
17013
17014 checkCompatibility();
17015 }
17016
17020 : SbeMessage(data, length, NoCheck())
17021 {
17022 assert(schemaId() == Schema::Id);
17023 assert(version() >= Schema::MinimalVersion);
17024 assert(TemplateId == templateId());
17025 }
17026
17029 auto securityReqId() const noexcept
17030 {
17031 constexpr BlockLength offset = 0;
17032
17033 return ordinary<Int32>(offset);
17034 }
17035
17038 {
17039 constexpr BlockLength offset = 0;
17040
17041 setOrdinary(offset, value);
17042 return *this;
17043 }
17044
17048 auto securityRequestType() const noexcept
17049 {
17050 constexpr BlockLength offset = 4;
17051
17053 }
17054
17058 {
17059 constexpr BlockLength offset = 4;
17060
17062 return *this;
17063 }
17064
17067 auto marketTypeId() const noexcept
17068 {
17069 constexpr BlockLength offset = 5;
17070
17071 return ordinary<Int32>(offset);
17072 }
17073
17075 ThisType& marketTypeId(Int32 value) noexcept
17076 {
17077 constexpr BlockLength offset = 5;
17078
17079 setOrdinary(offset, value);
17080 return *this;
17081 }
17082
17086 auto securityType() const noexcept
17087 {
17088 constexpr BlockLength offset = 9;
17089
17090 return enumeration<SecurityTypeEnum>(offset);
17091 }
17092
17096 {
17097 constexpr BlockLength offset = 9;
17098
17099 setEnumeration<SecurityTypeEnum>(offset, value);
17100 return *this;
17101 }
17102
17106 auto maturityDate() const noexcept(dateToTimestamp::Nothrow)
17107 {
17108 constexpr BlockLength offset = 10;
17110 }
17111
17114 ThisType& maturityDate(Timestamp value) noexcept(timestampToDate::Nothrow)
17115 {
17116 constexpr BlockLength offset = 10;
17117
17118 setOrdinary(offset, convert<timestampToDate>(value));
17119 return *this;
17120 }
17121
17123 {
17124 constexpr BlockLength offset = 10;
17125
17126 setOrdinary(offset, NullUTCDateOnly());
17127 return *this;
17128 }
17129
17133 auto productId() const noexcept
17134 {
17135 constexpr BlockLength offset = 12;
17136
17137 return ordinary<NullInt32NULL>(offset, optional);
17138 }
17139
17143 {
17144 constexpr BlockLength offset = 12;
17145
17146 setOrdinary(offset, value);
17147 return *this;
17148 }
17149
17151 {
17152 constexpr BlockLength offset = 12;
17153
17154 setOrdinary(offset, NullInt32NULL());
17155 return *this;
17156 }
17157
17161 auto symbol() const noexcept
17162 {
17163 constexpr BlockLength offset = 16;
17164
17165 return ordinary<NullInt32NULL>(offset, optional);
17166 }
17167
17170 ThisType& symbol(Int32NULL value) noexcept
17171 {
17172 constexpr BlockLength offset = 16;
17173
17174 setOrdinary(offset, value);
17175 return *this;
17176 }
17177
17179 {
17180 constexpr BlockLength offset = 16;
17181
17182 setOrdinary(offset, NullInt32NULL());
17183 return *this;
17184 }
17185
17189 auto strikePrice() const noexcept
17190 {
17191 constexpr BlockLength offset = 20;
17192
17193 return ordinary<NullDecimal9>(offset, optional);
17194 }
17195
17199 {
17200 constexpr BlockLength offset = 20;
17201
17202 setOrdinary(offset, value);
17203 return *this;
17204 }
17205
17207 {
17208 constexpr BlockLength offset = 20;
17209
17210 setOrdinary(offset, NullDecimal9());
17211 return *this;
17212 }
17213
17215 constexpr
17217 {
17218 return
17219 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
17220 28;
17221 }
17222
17224 constexpr
17226 {
17227 return
17228 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
17230 }
17231
17234 constexpr
17236 {
17237 return
17238 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
17239 0;
17240 }
17241
17244 constexpr
17246 {
17247 return
17248 static_cast<UInt64>(MessageHeaderBuilder::Size) +
17250 }
17251
17254 {
17255 return *this;
17256 }
17257
17259 ThisType& reset() noexcept
17260 {
17263 symbol(nullOpt);
17265
17267 return *this;
17268 }
17269
17272 constexpr
17273 static StrRef className() noexcept
17274 {
17275 return constructStrRef("SecurityDefinitionRequest_CreateFlex");
17276 }
17277
17280 constexpr
17281 static StrRef fixType() noexcept
17282 {
17283 return constructStrRef("c");
17284 }
17285
17288 std::string toString() const;
17289
17292 const void* tail() const noexcept
17293 {
17294 return
17297 binary(),
17298 static_cast<ptrdiff_t>(SbeMessage::blockLength()) +
17300 }
17301
17305 {
17306 return
17308 }
17309
17310private:
17311 void checkLength(
17312 EncodedLength length, SchemaVersion version) const
17313 {
17314 const EncodedLength minimalRequiredLength =
17315 minimalBlockLength(version) +
17317 getMinimalVariableFieldsSize(version);
17318
17320 *this, length, minimalRequiredLength);
17321 }
17322
17323 void checkCompatibility() const
17324 {
17325 assert(TemplateId == templateId());
17326
17327 checkSchema<Schema>(schemaId(), version());
17328 checkLength(bufferSize(), version());
17329 }
17330};
17331
17333struct
17335: SbeMessage
17336{
17339
17342
17344 enum { TemplateId = 104 };
17345
17348
17351 : SbeMessage(data, length, version)
17352 {
17354 checkLength(length, version);
17356 reset();
17357 }
17358
17370
17373 : SbeMessage(data, length)
17374 {
17375 checkCompatibility();
17376 }
17377
17379 explicit
17381 : SbeMessage(message)
17382 {
17383 assert(message.valid());
17384
17385 checkCompatibility();
17386 }
17387
17390 ExecutionReport_New(void* data, EncodedLength length, NoInit, NoCheck) noexcept
17391 : SbeMessage(data, length, NoCheck())
17392 {
17393 assert(schemaId() == Schema::Id);
17394 assert(version() >= Schema::MinimalVersion);
17395 assert(TemplateId == templateId());
17396 }
17397
17400 auto originatorUserId() const noexcept
17401 {
17402 constexpr BlockLength offset = 0;
17403 constexpr BlockLength length = 20;
17404
17405 return fixedStr<length>(offset);
17406 }
17407
17410 {
17411 constexpr BlockLength offset = 0;
17412 constexpr BlockLength length = 20;
17413
17414 setFixedStr<length>(offset, value);
17415 return *this;
17416 }
17417
17420 auto execId() const noexcept
17421 {
17422 constexpr BlockLength offset = 20;
17423
17424 return ordinary<OrderExecID>(offset);
17425 }
17426
17428 ThisType& execId(ChooseValueKind<OrderExecID> value) noexcept
17429 {
17430 constexpr BlockLength offset = 20;
17431
17432 setOrdinary(offset, value);
17433 return *this;
17434 }
17435
17438 auto clOrdId() const noexcept
17439 {
17440 constexpr BlockLength offset = 40;
17441
17442 return ordinary<Int64>(offset);
17443 }
17444
17446 ThisType& clOrdId(Int64 value) noexcept
17447 {
17448 constexpr BlockLength offset = 40;
17449
17450 setOrdinary(offset, value);
17451 return *this;
17452 }
17453
17456 auto symbol() const noexcept
17457 {
17458 constexpr BlockLength offset = 48;
17459
17460 return ordinary<Int32>(offset);
17461 }
17462
17464 ThisType& symbol(Int32 value) noexcept
17465 {
17466 constexpr BlockLength offset = 48;
17467
17468 setOrdinary(offset, value);
17469 return *this;
17470 }
17471
17474 auto ordType() const noexcept
17475 {
17476 constexpr BlockLength offset = 52;
17477
17478 return enumeration<OrderTypeEnum>(offset);
17479 }
17480
17483 {
17484 constexpr BlockLength offset = 52;
17485
17486 setEnumeration<OrderTypeEnum>(offset, value);
17487 return *this;
17488 }
17489
17492 auto side() const noexcept
17493 {
17494 constexpr BlockLength offset = 53;
17495
17496 return enumeration<SideEnum>(offset);
17497 }
17498
17500 ThisType& side(SideEnum value) noexcept
17501 {
17502 constexpr BlockLength offset = 53;
17503
17504 setEnumeration<SideEnum>(offset, value);
17505 return *this;
17506 }
17507
17510 auto origOrderId() const noexcept
17511 {
17512 constexpr BlockLength offset = 54;
17513
17515 }
17516
17519 {
17520 constexpr BlockLength offset = 54;
17521
17522 setOrdinary(offset, value);
17523 return *this;
17524 }
17525
17527 {
17528 constexpr BlockLength offset = 54;
17529
17531 return *this;
17532 }
17533
17536 auto leavesQty() const noexcept
17537 {
17538 constexpr BlockLength offset = 70;
17539
17540 return ordinary<Decimal9>(offset);
17541 }
17542
17544 ThisType& leavesQty(Decimal9 value) noexcept
17545 {
17546 constexpr BlockLength offset = 70;
17547
17548 setOrdinary(offset, value);
17549 return *this;
17550 }
17551
17554 auto price() const noexcept
17555 {
17556 constexpr BlockLength offset = 78;
17557
17558 return ordinary<NullDecimal9>(offset, optional);
17559 }
17560
17562 ThisType& price(Decimal9 value) noexcept
17563 {
17564 constexpr BlockLength offset = 78;
17565
17566 setOrdinary(offset, value);
17567 return *this;
17568 }
17569
17571 {
17572 constexpr BlockLength offset = 78;
17573
17574 setOrdinary(offset, NullDecimal9());
17575 return *this;
17576 }
17577
17580 auto meAcceptanceTime() const noexcept(ticksToTimestamp::Nothrow)
17581 {
17582 constexpr BlockLength offset = 86;
17583 return convertible<ticksToTimestamp>(offset);
17584 }
17585
17587 ThisType& meAcceptanceTime(Timestamp value) noexcept(timestampToTicks::Nothrow)
17588 {
17589 constexpr BlockLength offset = 86;
17590
17591 setOrdinary(offset, convert<timestampToTicks>(value));
17592 return *this;
17593 }
17594
17597 auto timePriority() const noexcept(ticksToTimestamp::Nothrow)
17598 {
17599 constexpr BlockLength offset = 94;
17600 return convertible<ticksToTimestamp>(offset);
17601 }
17602
17604 ThisType& timePriority(Timestamp value) noexcept(timestampToTicks::Nothrow)
17605 {
17606 constexpr BlockLength offset = 94;
17607
17608 setOrdinary(offset, convert<timestampToTicks>(value));
17609 return *this;
17610 }
17611
17614 auto orderStatus() const noexcept
17615 {
17616 constexpr BlockLength offset = 102;
17617
17619 }
17620
17623 {
17624 constexpr BlockLength offset = 102;
17625
17626 setEnumeration<OrderStatusEnum>(offset, value);
17627 return *this;
17628 }
17629
17631 {
17632 constexpr BlockLength offset = 102;
17633
17634 setOrdinary(offset, NullUint8NULL());
17635 return *this;
17636 }
17637
17640 auto memo() const noexcept
17641 {
17642 constexpr BlockLength offset = 103;
17643 constexpr BlockLength length = 30;
17644
17645 return fixedStr<length>(offset, optional);
17646 }
17647
17649 ThisType& memo(StrRef value) noexcept
17650 {
17651 constexpr BlockLength offset = 103;
17652 constexpr BlockLength length = 30;
17653
17654 setFixedStr<length>(offset, value);
17655 return *this;
17656 }
17657
17659 {
17660 constexpr BlockLength offset = 103;
17661 constexpr BlockLength length = 30;
17662
17663 setFixedStr<length>(offset, StrRef());
17664 return *this;
17665 }
17666
17668 constexpr
17670 {
17671 return
17672 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
17673 133;
17674 }
17675
17677 constexpr
17679 {
17680 return
17681 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
17683 }
17684
17687 constexpr
17689 {
17690 return
17691 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
17692 0;
17693 }
17694
17697 constexpr
17699 {
17700 return
17701 static_cast<UInt64>(MessageHeaderBuilder::Size) +
17703 }
17704
17707 {
17708 return *this;
17709 }
17710
17712 ThisType& reset() noexcept
17713 {
17715 price(nullOpt);
17717 memo(nullOpt);
17718
17720 return *this;
17721 }
17722
17725 constexpr
17726 static StrRef className() noexcept
17727 {
17728 return constructStrRef("ExecutionReport_New");
17729 }
17730
17733 constexpr
17734 static StrRef fixType() noexcept
17735 {
17736 return constructStrRef("8");
17737 }
17738
17741 std::string toString() const;
17742
17745 const void* tail() const noexcept
17746 {
17747 return
17750 binary(),
17751 static_cast<ptrdiff_t>(SbeMessage::blockLength()) +
17753 }
17754
17758 {
17759 return
17761 }
17762
17763private:
17764 void checkLength(
17765 EncodedLength length, SchemaVersion version) const
17766 {
17767 const EncodedLength minimalRequiredLength =
17768 minimalBlockLength(version) +
17770 getMinimalVariableFieldsSize(version);
17771
17773 *this, length, minimalRequiredLength);
17774 }
17775
17776 void checkCompatibility() const
17777 {
17778 assert(TemplateId == templateId());
17779
17780 checkSchema<Schema>(schemaId(), version());
17781 checkLength(bufferSize(), version());
17782 }
17783};
17784
17786struct
17788: SbeMessage
17789{
17792
17795
17797 enum { TemplateId = 105 };
17798
17801
17804 : SbeMessage(data, length, version)
17805 {
17807 checkLength(length, version);
17809 reset();
17810 }
17811
17823
17826 : SbeMessage(data, length)
17827 {
17828 checkCompatibility();
17829 }
17830
17832 explicit
17834 : SbeMessage(message)
17835 {
17836 assert(message.valid());
17837
17838 checkCompatibility();
17839 }
17840
17844 : SbeMessage(data, length, NoCheck())
17845 {
17846 assert(schemaId() == Schema::Id);
17847 assert(version() >= Schema::MinimalVersion);
17848 assert(TemplateId == templateId());
17849 }
17850
17853 auto originatorUserId() const noexcept
17854 {
17855 constexpr BlockLength offset = 0;
17856 constexpr BlockLength length = 20;
17857
17858 return fixedStr<length>(offset);
17859 }
17860
17863 {
17864 constexpr BlockLength offset = 0;
17865 constexpr BlockLength length = 20;
17866
17867 setFixedStr<length>(offset, value);
17868 return *this;
17869 }
17870
17873 auto execId() const noexcept
17874 {
17875 constexpr BlockLength offset = 20;
17876
17877 return ordinary<OrderExecID>(offset);
17878 }
17879
17881 ThisType& execId(ChooseValueKind<OrderExecID> value) noexcept
17882 {
17883 constexpr BlockLength offset = 20;
17884
17885 setOrdinary(offset, value);
17886 return *this;
17887 }
17888
17891 auto clOrdId() const noexcept
17892 {
17893 constexpr BlockLength offset = 40;
17894
17895 return ordinary<Int64>(offset);
17896 }
17897
17899 ThisType& clOrdId(Int64 value) noexcept
17900 {
17901 constexpr BlockLength offset = 40;
17902
17903 setOrdinary(offset, value);
17904 return *this;
17905 }
17906
17909 auto symbol() const noexcept
17910 {
17911 constexpr BlockLength offset = 48;
17912
17913 return ordinary<Int32>(offset);
17914 }
17915
17917 ThisType& symbol(Int32 value) noexcept
17918 {
17919 constexpr BlockLength offset = 48;
17920
17921 setOrdinary(offset, value);
17922 return *this;
17923 }
17924
17927 auto ordType() const noexcept
17928 {
17929 constexpr BlockLength offset = 52;
17930
17931 return enumeration<OrderTypeEnum>(offset);
17932 }
17933
17936 {
17937 constexpr BlockLength offset = 52;
17938
17939 setEnumeration<OrderTypeEnum>(offset, value);
17940 return *this;
17941 }
17942
17945 auto side() const noexcept
17946 {
17947 constexpr BlockLength offset = 53;
17948
17949 return enumeration<SideEnum>(offset);
17950 }
17951
17953 ThisType& side(SideEnum value) noexcept
17954 {
17955 constexpr BlockLength offset = 53;
17956
17957 setEnumeration<SideEnum>(offset, value);
17958 return *this;
17959 }
17960
17963 auto origOrderId() const noexcept
17964 {
17965 constexpr BlockLength offset = 54;
17966
17968 }
17969
17972 {
17973 constexpr BlockLength offset = 54;
17974
17975 setOrdinary(offset, value);
17976 return *this;
17977 }
17978
17980 {
17981 constexpr BlockLength offset = 54;
17982
17984 return *this;
17985 }
17986
17989 auto origClOrdId() const noexcept
17990 {
17991 constexpr BlockLength offset = 70;
17992
17993 return ordinary<NullInt64NULL>(offset, optional);
17994 }
17995
17998 {
17999 constexpr BlockLength offset = 70;
18000
18001 setOrdinary(offset, value);
18002 return *this;
18003 }
18004
18006 {
18007 constexpr BlockLength offset = 70;
18008
18009 setOrdinary(offset, NullInt64NULL());
18010 return *this;
18011 }
18012
18015 auto leavesQty() const noexcept
18016 {
18017 constexpr BlockLength offset = 78;
18018
18019 return ordinary<Decimal9>(offset);
18020 }
18021
18023 ThisType& leavesQty(Decimal9 value) noexcept
18024 {
18025 constexpr BlockLength offset = 78;
18026
18027 setOrdinary(offset, value);
18028 return *this;
18029 }
18030
18033 auto cumQty() const noexcept
18034 {
18035 constexpr BlockLength offset = 86;
18036
18037 return ordinary<Decimal9>(offset);
18038 }
18039
18041 ThisType& cumQty(Decimal9 value) noexcept
18042 {
18043 constexpr BlockLength offset = 86;
18044
18045 setOrdinary(offset, value);
18046 return *this;
18047 }
18048
18051 auto price() const noexcept
18052 {
18053 constexpr BlockLength offset = 94;
18054
18055 return ordinary<NullDecimal9>(offset, optional);
18056 }
18057
18059 ThisType& price(Decimal9 value) noexcept
18060 {
18061 constexpr BlockLength offset = 94;
18062
18063 setOrdinary(offset, value);
18064 return *this;
18065 }
18066
18068 {
18069 constexpr BlockLength offset = 94;
18070
18071 setOrdinary(offset, NullDecimal9());
18072 return *this;
18073 }
18074
18077 auto meAcceptanceTime() const noexcept(ticksToTimestamp::Nothrow)
18078 {
18079 constexpr BlockLength offset = 102;
18080 return convertible<ticksToTimestamp>(offset);
18081 }
18082
18084 ThisType& meAcceptanceTime(Timestamp value) noexcept(timestampToTicks::Nothrow)
18085 {
18086 constexpr BlockLength offset = 102;
18087
18088 setOrdinary(offset, convert<timestampToTicks>(value));
18089 return *this;
18090 }
18091
18094 auto timePriority() const noexcept(ticksToTimestamp::Nothrow)
18095 {
18096 constexpr BlockLength offset = 110;
18097 return convertible<ticksToTimestamp>(offset);
18098 }
18099
18101 ThisType& timePriority(Timestamp value) noexcept(timestampToTicks::Nothrow)
18102 {
18103 constexpr BlockLength offset = 110;
18104
18105 setOrdinary(offset, convert<timestampToTicks>(value));
18106 return *this;
18107 }
18108
18111 auto execType() const noexcept
18112 {
18113 constexpr BlockLength offset = 118;
18114
18115 return enumeration<ExecTypeEnum>(offset);
18116 }
18117
18120 {
18121 constexpr BlockLength offset = 118;
18122
18123 setEnumeration<ExecTypeEnum>(offset, value);
18124 return *this;
18125 }
18126
18129 auto orderStatus() const noexcept
18130 {
18131 constexpr BlockLength offset = 119;
18132
18134 }
18135
18138 {
18139 constexpr BlockLength offset = 119;
18140
18141 setEnumeration<OrderStatusEnum>(offset, value);
18142 return *this;
18143 }
18144
18146 {
18147 constexpr BlockLength offset = 119;
18148
18149 setOrdinary(offset, NullUint8NULL());
18150 return *this;
18151 }
18152
18155 auto orderState() const noexcept
18156 {
18157 constexpr BlockLength offset = 120;
18158
18160 }
18161
18164 {
18165 constexpr BlockLength offset = 120;
18166
18167 setEnumeration<OrderStateEnum>(offset, value);
18168 return *this;
18169 }
18170
18172 {
18173 constexpr BlockLength offset = 120;
18174
18175 setOrdinary(offset, NullUint8NULL());
18176 return *this;
18177 }
18178
18181 auto execRestatementReason() const noexcept
18182 {
18183 constexpr BlockLength offset = 121;
18184
18186 }
18187
18190 {
18191 constexpr BlockLength offset = 121;
18192
18194 return *this;
18195 }
18196
18198 {
18199 constexpr BlockLength offset = 121;
18200
18201 setOrdinary(offset, NullUint8NULL());
18202 return *this;
18203 }
18204
18207 auto orderModificationFlags() const noexcept
18208 {
18209 constexpr BlockLength offset = 122;
18210
18211 return enumeration<OrderFlags>(offset);
18212 }
18213
18216 {
18217 constexpr BlockLength offset = 122;
18218
18219 setOrdinary(offset, value);
18220 return *this;
18221 }
18222
18225 auto memo() const noexcept
18226 {
18227 constexpr BlockLength offset = 123;
18228 constexpr BlockLength length = 30;
18229
18230 return fixedStr<length>(offset, optional);
18231 }
18232
18234 ThisType& memo(StrRef value) noexcept
18235 {
18236 constexpr BlockLength offset = 123;
18237 constexpr BlockLength length = 30;
18238
18239 setFixedStr<length>(offset, value);
18240 return *this;
18241 }
18242
18244 {
18245 constexpr BlockLength offset = 123;
18246 constexpr BlockLength length = 30;
18247
18248 setFixedStr<length>(offset, StrRef());
18249 return *this;
18250 }
18251
18253 constexpr
18255 {
18256 return
18257 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
18258 153;
18259 }
18260
18262 constexpr
18264 {
18265 return
18266 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
18268 }
18269
18272 constexpr
18274 {
18275 return
18276 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
18277 0;
18278 }
18279
18282 constexpr
18284 {
18285 return
18286 static_cast<UInt64>(MessageHeaderBuilder::Size) +
18288 }
18289
18292 {
18293 return *this;
18294 }
18295
18297 ThisType& reset() noexcept
18298 {
18301 price(nullOpt);
18305 memo(nullOpt);
18306
18308 return *this;
18309 }
18310
18313 constexpr
18314 static StrRef className() noexcept
18315 {
18316 return constructStrRef("ExecutionReport_Modify");
18317 }
18318
18321 constexpr
18322 static StrRef fixType() noexcept
18323 {
18324 return constructStrRef("8");
18325 }
18326
18329 std::string toString() const;
18330
18333 const void* tail() const noexcept
18334 {
18335 return
18338 binary(),
18339 static_cast<ptrdiff_t>(SbeMessage::blockLength()) +
18341 }
18342
18346 {
18347 return
18349 }
18350
18351private:
18352 void checkLength(
18353 EncodedLength length, SchemaVersion version) const
18354 {
18355 const EncodedLength minimalRequiredLength =
18356 minimalBlockLength(version) +
18358 getMinimalVariableFieldsSize(version);
18359
18361 *this, length, minimalRequiredLength);
18362 }
18363
18364 void checkCompatibility() const
18365 {
18366 assert(TemplateId == templateId());
18367
18368 checkSchema<Schema>(schemaId(), version());
18369 checkLength(bufferSize(), version());
18370 }
18371};
18372
18374struct
18376: SbeMessage
18377{
18380
18383
18385 enum { TemplateId = 106 };
18386
18389
18392 : SbeMessage(data, length, version)
18393 {
18395 checkLength(length, version);
18397 reset();
18398 }
18399
18411
18414 : SbeMessage(data, length)
18415 {
18416 checkCompatibility();
18417 }
18418
18420 explicit
18422 : SbeMessage(message)
18423 {
18424 assert(message.valid());
18425
18426 checkCompatibility();
18427 }
18428
18432 : SbeMessage(data, length, NoCheck())
18433 {
18434 assert(schemaId() == Schema::Id);
18435 assert(version() >= Schema::MinimalVersion);
18436 assert(TemplateId == templateId());
18437 }
18438
18441 auto originatorUserId() const noexcept
18442 {
18443 constexpr BlockLength offset = 0;
18444 constexpr BlockLength length = 20;
18445
18446 return fixedStr<length>(offset);
18447 }
18448
18451 {
18452 constexpr BlockLength offset = 0;
18453 constexpr BlockLength length = 20;
18454
18455 setFixedStr<length>(offset, value);
18456 return *this;
18457 }
18458
18461 auto execId() const noexcept
18462 {
18463 constexpr BlockLength offset = 20;
18464
18465 return ordinary<OrderExecID>(offset);
18466 }
18467
18469 ThisType& execId(ChooseValueKind<OrderExecID> value) noexcept
18470 {
18471 constexpr BlockLength offset = 20;
18472
18473 setOrdinary(offset, value);
18474 return *this;
18475 }
18476
18479 auto clOrdId() const noexcept
18480 {
18481 constexpr BlockLength offset = 40;
18482
18483 return ordinary<Int64>(offset);
18484 }
18485
18487 ThisType& clOrdId(Int64 value) noexcept
18488 {
18489 constexpr BlockLength offset = 40;
18490
18491 setOrdinary(offset, value);
18492 return *this;
18493 }
18494
18497 auto symbol() const noexcept
18498 {
18499 constexpr BlockLength offset = 48;
18500
18501 return ordinary<Int32>(offset);
18502 }
18503
18505 ThisType& symbol(Int32 value) noexcept
18506 {
18507 constexpr BlockLength offset = 48;
18508
18509 setOrdinary(offset, value);
18510 return *this;
18511 }
18512
18515 auto ordType() const noexcept
18516 {
18517 constexpr BlockLength offset = 52;
18518
18519 return enumeration<OrderTypeEnum>(offset);
18520 }
18521
18524 {
18525 constexpr BlockLength offset = 52;
18526
18527 setEnumeration<OrderTypeEnum>(offset, value);
18528 return *this;
18529 }
18530
18533 auto side() const noexcept
18534 {
18535 constexpr BlockLength offset = 53;
18536
18537 return enumeration<SideEnum>(offset);
18538 }
18539
18541 ThisType& side(SideEnum value) noexcept
18542 {
18543 constexpr BlockLength offset = 53;
18544
18545 setEnumeration<SideEnum>(offset, value);
18546 return *this;
18547 }
18548
18551 auto origOrderId() const noexcept
18552 {
18553 constexpr BlockLength offset = 54;
18554
18556 }
18557
18560 {
18561 constexpr BlockLength offset = 54;
18562
18563 setOrdinary(offset, value);
18564 return *this;
18565 }
18566
18568 {
18569 constexpr BlockLength offset = 54;
18570
18572 return *this;
18573 }
18574
18577 auto origClOrdId() const noexcept
18578 {
18579 constexpr BlockLength offset = 70;
18580
18581 return ordinary<NullInt64NULL>(offset, optional);
18582 }
18583
18586 {
18587 constexpr BlockLength offset = 70;
18588
18589 setOrdinary(offset, value);
18590 return *this;
18591 }
18592
18594 {
18595 constexpr BlockLength offset = 70;
18596
18597 setOrdinary(offset, NullInt64NULL());
18598 return *this;
18599 }
18600
18603 auto meAcceptanceTime() const noexcept(ticksToTimestamp::Nothrow)
18604 {
18605 constexpr BlockLength offset = 78;
18606 return convertible<ticksToTimestamp>(offset);
18607 }
18608
18610 ThisType& meAcceptanceTime(Timestamp value) noexcept(timestampToTicks::Nothrow)
18611 {
18612 constexpr BlockLength offset = 78;
18613
18614 setOrdinary(offset, convert<timestampToTicks>(value));
18615 return *this;
18616 }
18617
18620 auto exchangeCode() const noexcept
18621 {
18622 constexpr BlockLength offset = 86;
18623
18624 return ordinary<NullInt32NULL>(offset, optional);
18625 }
18626
18629 {
18630 constexpr BlockLength offset = 86;
18631
18632 setOrdinary(offset, value);
18633 return *this;
18634 }
18635
18637 {
18638 constexpr BlockLength offset = 86;
18639
18640 setOrdinary(offset, NullInt32NULL());
18641 return *this;
18642 }
18643
18646 auto cancelReason() const noexcept
18647 {
18648 constexpr BlockLength offset = 90;
18649
18651 }
18652
18655 {
18656 constexpr BlockLength offset = 90;
18657
18658 setEnumeration<CancelReasonEnum>(offset, value);
18659 return *this;
18660 }
18661
18663 {
18664 constexpr BlockLength offset = 90;
18665
18666 setOrdinary(offset, NullUint8NULL());
18667 return *this;
18668 }
18669
18672 auto crossId() const noexcept
18673 {
18674 constexpr BlockLength offset = 91;
18675
18676 return ordinary<NullInt64NULL>(offset, optional);
18677 }
18678
18680 ThisType& crossId(Int64NULL value) noexcept
18681 {
18682 constexpr BlockLength offset = 91;
18683
18684 setOrdinary(offset, value);
18685 return *this;
18686 }
18687
18689 {
18690 constexpr BlockLength offset = 91;
18691
18692 setOrdinary(offset, NullInt64NULL());
18693 return *this;
18694 }
18695
18698 auto text() const noexcept
18699 {
18700 constexpr BlockLength offset = 99;
18701 constexpr BlockLength length = 100;
18702
18703 return fixedStr<length>(offset, optional);
18704 }
18705
18707 ThisType& text(StrRef value) noexcept
18708 {
18709 constexpr BlockLength offset = 99;
18710 constexpr BlockLength length = 100;
18711
18712 setFixedStr<length>(offset, value);
18713 return *this;
18714 }
18715
18717 {
18718 constexpr BlockLength offset = 99;
18719 constexpr BlockLength length = 100;
18720
18721 setFixedStr<length>(offset, StrRef());
18722 return *this;
18723 }
18724
18726 constexpr
18728 {
18729 return
18730 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
18731 199;
18732 }
18733
18735 constexpr
18737 {
18738 return
18739 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
18741 }
18742
18745 constexpr
18747 {
18748 return
18749 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
18750 0;
18751 }
18752
18755 constexpr
18757 {
18758 return
18759 static_cast<UInt64>(MessageHeaderBuilder::Size) +
18761 }
18762
18765 {
18766 return *this;
18767 }
18768
18770 ThisType& reset() noexcept
18771 {
18777 text(nullOpt);
18778
18780 return *this;
18781 }
18782
18785 constexpr
18786 static StrRef className() noexcept
18787 {
18788 return constructStrRef("ExecutionReport_Cancel");
18789 }
18790
18793 constexpr
18794 static StrRef fixType() noexcept
18795 {
18796 return constructStrRef("8");
18797 }
18798
18801 std::string toString() const;
18802
18805 const void* tail() const noexcept
18806 {
18807 return
18810 binary(),
18811 static_cast<ptrdiff_t>(SbeMessage::blockLength()) +
18813 }
18814
18818 {
18819 return
18821 }
18822
18823private:
18824 void checkLength(
18825 EncodedLength length, SchemaVersion version) const
18826 {
18827 const EncodedLength minimalRequiredLength =
18828 minimalBlockLength(version) +
18830 getMinimalVariableFieldsSize(version);
18831
18833 *this, length, minimalRequiredLength);
18834 }
18835
18836 void checkCompatibility() const
18837 {
18838 assert(TemplateId == templateId());
18839
18840 checkSchema<Schema>(schemaId(), version());
18841 checkLength(bufferSize(), version());
18842 }
18843};
18844
18846struct
18848: SbeMessage
18849{
18852
18855
18857 enum { TemplateId = 151 };
18858
18861
18864 : SbeMessage(data, length, version)
18865 {
18867 checkLength(length, version);
18869 reset();
18870 }
18871
18883
18886 : SbeMessage(data, length)
18887 {
18888 checkCompatibility();
18889 }
18890
18892 explicit
18894 : SbeMessage(message)
18895 {
18896 assert(message.valid());
18897
18898 checkCompatibility();
18899 }
18900
18904 : SbeMessage(data, length, NoCheck())
18905 {
18906 assert(schemaId() == Schema::Id);
18907 assert(version() >= Schema::MinimalVersion);
18908 assert(TemplateId == templateId());
18909 }
18910
18913 auto originatorUserId() const noexcept
18914 {
18915 constexpr BlockLength offset = 0;
18916 constexpr BlockLength length = 20;
18917
18918 return fixedStr<length>(offset);
18919 }
18920
18923 {
18924 constexpr BlockLength offset = 0;
18925 constexpr BlockLength length = 20;
18926
18927 setFixedStr<length>(offset, value);
18928 return *this;
18929 }
18930
18933 auto execId() const noexcept
18934 {
18935 constexpr BlockLength offset = 20;
18936
18937 return ordinary<OrderExecID>(offset);
18938 }
18939
18941 ThisType& execId(ChooseValueKind<OrderExecID> value) noexcept
18942 {
18943 constexpr BlockLength offset = 20;
18944
18945 setOrdinary(offset, value);
18946 return *this;
18947 }
18948
18951 auto clOrdId() const noexcept
18952 {
18953 constexpr BlockLength offset = 40;
18954
18955 return ordinary<Int64>(offset);
18956 }
18957
18959 ThisType& clOrdId(Int64 value) noexcept
18960 {
18961 constexpr BlockLength offset = 40;
18962
18963 setOrdinary(offset, value);
18964 return *this;
18965 }
18966
18969 auto symbol() const noexcept
18970 {
18971 constexpr BlockLength offset = 48;
18972
18973 return ordinary<Int32>(offset);
18974 }
18975
18977 ThisType& symbol(Int32 value) noexcept
18978 {
18979 constexpr BlockLength offset = 48;
18980
18981 setOrdinary(offset, value);
18982 return *this;
18983 }
18984
18987 auto ordType() const noexcept
18988 {
18989 constexpr BlockLength offset = 52;
18990
18992 }
18993
18996 {
18997 constexpr BlockLength offset = 52;
18998
18999 setEnumeration<OrderTypeEnum>(offset, value);
19000 return *this;
19001 }
19002
19004 {
19005 constexpr BlockLength offset = 52;
19006
19007 setOrdinary(offset, NullUint8NULL());
19008 return *this;
19009 }
19010
19013 auto side() const noexcept
19014 {
19015 constexpr BlockLength offset = 53;
19016
19017 return enumeration<SideEnum>(offset);
19018 }
19019
19021 ThisType& side(SideEnum value) noexcept
19022 {
19023 constexpr BlockLength offset = 53;
19024
19025 setEnumeration<SideEnum>(offset, value);
19026 return *this;
19027 }
19028
19031 auto origOrderId() const noexcept
19032 {
19033 constexpr BlockLength offset = 54;
19034
19036 }
19037
19040 {
19041 constexpr BlockLength offset = 54;
19042
19043 setOrdinary(offset, value);
19044 return *this;
19045 }
19046
19048 {
19049 constexpr BlockLength offset = 54;
19050
19052 return *this;
19053 }
19054
19057 auto origClOrdId() const noexcept
19058 {
19059 constexpr BlockLength offset = 70;
19060
19061 return ordinary<NullInt64NULL>(offset, optional);
19062 }
19063
19066 {
19067 constexpr BlockLength offset = 70;
19068
19069 setOrdinary(offset, value);
19070 return *this;
19071 }
19072
19074 {
19075 constexpr BlockLength offset = 70;
19076
19077 setOrdinary(offset, NullInt64NULL());
19078 return *this;
19079 }
19080
19083 auto orderStatus() const noexcept
19084 {
19085 constexpr BlockLength offset = 78;
19086
19088 }
19089
19092 {
19093 constexpr BlockLength offset = 78;
19094
19095 setEnumeration<OrderStatusEnum>(offset, value);
19096 return *this;
19097 }
19098
19100 {
19101 constexpr BlockLength offset = 78;
19102
19103 setOrdinary(offset, NullUint8NULL());
19104 return *this;
19105 }
19106
19109 auto rejectResponseTo() const noexcept
19110 {
19111 constexpr BlockLength offset = 79;
19112
19113 return enumeration<RejectResponseToEnum>(offset);
19114 }
19115
19118 {
19119 constexpr BlockLength offset = 79;
19120
19122 return *this;
19123 }
19124
19127 auto rejectReason() const noexcept
19128 {
19129 constexpr BlockLength offset = 80;
19130
19132 }
19133
19136 {
19137 constexpr BlockLength offset = 80;
19138
19139 setEnumeration<RejectEnum>(offset, value);
19140 return *this;
19141 }
19142
19144 {
19145 constexpr BlockLength offset = 80;
19146
19147 setOrdinary(offset, NullUint8NULL());
19148 return *this;
19149 }
19150
19153 auto exchangeCode() const noexcept
19154 {
19155 constexpr BlockLength offset = 81;
19156
19157 return ordinary<NullInt32NULL>(offset, optional);
19158 }
19159
19162 {
19163 constexpr BlockLength offset = 81;
19164
19165 setOrdinary(offset, value);
19166 return *this;
19167 }
19168
19170 {
19171 constexpr BlockLength offset = 81;
19172
19173 setOrdinary(offset, NullInt32NULL());
19174 return *this;
19175 }
19176
19179 auto memo() const noexcept
19180 {
19181 constexpr BlockLength offset = 85;
19182 constexpr BlockLength length = 30;
19183
19184 return fixedStr<length>(offset, optional);
19185 }
19186
19188 ThisType& memo(StrRef value) noexcept
19189 {
19190 constexpr BlockLength offset = 85;
19191 constexpr BlockLength length = 30;
19192
19193 setFixedStr<length>(offset, value);
19194 return *this;
19195 }
19196
19198 {
19199 constexpr BlockLength offset = 85;
19200 constexpr BlockLength length = 30;
19201
19202 setFixedStr<length>(offset, StrRef());
19203 return *this;
19204 }
19205
19208 auto text() const noexcept
19209 {
19210 constexpr BlockLength offset = 115;
19211 constexpr BlockLength length = 100;
19212
19213 return fixedStr<length>(offset, optional);
19214 }
19215
19217 ThisType& text(StrRef value) noexcept
19218 {
19219 constexpr BlockLength offset = 115;
19220 constexpr BlockLength length = 100;
19221
19222 setFixedStr<length>(offset, value);
19223 return *this;
19224 }
19225
19227 {
19228 constexpr BlockLength offset = 115;
19229 constexpr BlockLength length = 100;
19230
19231 setFixedStr<length>(offset, StrRef());
19232 return *this;
19233 }
19234
19236 constexpr
19238 {
19239 return
19240 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
19241 215;
19242 }
19243
19245 constexpr
19247 {
19248 return
19249 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
19251 }
19252
19255 constexpr
19257 {
19258 return
19259 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
19260 0;
19261 }
19262
19265 constexpr
19267 {
19268 return
19269 static_cast<UInt64>(MessageHeaderBuilder::Size) +
19271 }
19272
19275 {
19276 return *this;
19277 }
19278
19280 ThisType& reset() noexcept
19281 {
19288 memo(nullOpt);
19289 text(nullOpt);
19290
19292 return *this;
19293 }
19294
19297 constexpr
19298 static StrRef className() noexcept
19299 {
19300 return constructStrRef("ExecutionReport_Reject");
19301 }
19302
19305 constexpr
19306 static StrRef fixType() noexcept
19307 {
19308 return constructStrRef("8");
19309 }
19310
19313 std::string toString() const;
19314
19317 const void* tail() const noexcept
19318 {
19319 return
19322 binary(),
19323 static_cast<ptrdiff_t>(SbeMessage::blockLength()) +
19325 }
19326
19330 {
19331 return
19333 }
19334
19335private:
19336 void checkLength(
19337 EncodedLength length, SchemaVersion version) const
19338 {
19339 const EncodedLength minimalRequiredLength =
19340 minimalBlockLength(version) +
19342 getMinimalVariableFieldsSize(version);
19343
19345 *this, length, minimalRequiredLength);
19346 }
19347
19348 void checkCompatibility() const
19349 {
19350 assert(TemplateId == templateId());
19351
19352 checkSchema<Schema>(schemaId(), version());
19353 checkLength(bufferSize(), version());
19354 }
19355};
19356
19358struct
19360: SbeMessage
19361{
19364
19367
19369 enum { TemplateId = 152 };
19370
19373
19376 : SbeMessage(data, length, version)
19377 {
19379 checkLength(length, version);
19381 reset();
19382 }
19383
19395
19398 : SbeMessage(data, length)
19399 {
19400 checkCompatibility();
19401 }
19402
19404 explicit
19406 : SbeMessage(message)
19407 {
19408 assert(message.valid());
19409
19410 checkCompatibility();
19411 }
19412
19416 : SbeMessage(data, length, NoCheck())
19417 {
19418 assert(schemaId() == Schema::Id);
19419 assert(version() >= Schema::MinimalVersion);
19420 assert(TemplateId == templateId());
19421 }
19422
19425 auto originatorUserId() const noexcept
19426 {
19427 constexpr BlockLength offset = 0;
19428 constexpr BlockLength length = 20;
19429
19430 return fixedStr<length>(offset);
19431 }
19432
19435 {
19436 constexpr BlockLength offset = 0;
19437 constexpr BlockLength length = 20;
19438
19439 setFixedStr<length>(offset, value);
19440 return *this;
19441 }
19442
19445 auto execId() const noexcept
19446 {
19447 constexpr BlockLength offset = 20;
19448
19449 return ordinary<OrderExecID>(offset);
19450 }
19451
19453 ThisType& execId(ChooseValueKind<OrderExecID> value) noexcept
19454 {
19455 constexpr BlockLength offset = 20;
19456
19457 setOrdinary(offset, value);
19458 return *this;
19459 }
19460
19463 auto clOrdId() const noexcept
19464 {
19465 constexpr BlockLength offset = 40;
19466
19467 return ordinary<Int64>(offset);
19468 }
19469
19471 ThisType& clOrdId(Int64 value) noexcept
19472 {
19473 constexpr BlockLength offset = 40;
19474
19475 setOrdinary(offset, value);
19476 return *this;
19477 }
19478
19481 auto symbol() const noexcept
19482 {
19483 constexpr BlockLength offset = 48;
19484
19485 return ordinary<Int32>(offset);
19486 }
19487
19489 ThisType& symbol(Int32 value) noexcept
19490 {
19491 constexpr BlockLength offset = 48;
19492
19493 setOrdinary(offset, value);
19494 return *this;
19495 }
19496
19499 auto ordType() const noexcept
19500 {
19501 constexpr BlockLength offset = 52;
19502
19503 return enumeration<OrderTypeEnum>(offset);
19504 }
19505
19508 {
19509 constexpr BlockLength offset = 52;
19510
19511 setEnumeration<OrderTypeEnum>(offset, value);
19512 return *this;
19513 }
19514
19517 auto side() const noexcept
19518 {
19519 constexpr BlockLength offset = 53;
19520
19521 return enumeration<SideEnum>(offset);
19522 }
19523
19525 ThisType& side(SideEnum value) noexcept
19526 {
19527 constexpr BlockLength offset = 53;
19528
19529 setEnumeration<SideEnum>(offset, value);
19530 return *this;
19531 }
19532
19535 auto origOrderId() const noexcept
19536 {
19537 constexpr BlockLength offset = 54;
19538
19540 }
19541
19544 {
19545 constexpr BlockLength offset = 54;
19546
19547 setOrdinary(offset, value);
19548 return *this;
19549 }
19550
19552 {
19553 constexpr BlockLength offset = 54;
19554
19556 return *this;
19557 }
19558
19561 auto maxShow() const noexcept
19562 {
19563 constexpr BlockLength offset = 70;
19564
19565 return ordinary<NullDecimal9>(offset, optional);
19566 }
19567
19569 ThisType& maxShow(Decimal9 value) noexcept
19570 {
19571 constexpr BlockLength offset = 70;
19572
19573 setOrdinary(offset, value);
19574 return *this;
19575 }
19576
19578 {
19579 constexpr BlockLength offset = 70;
19580
19581 setOrdinary(offset, NullDecimal9());
19582 return *this;
19583 }
19584
19587 auto leavesQty() const noexcept
19588 {
19589 constexpr BlockLength offset = 78;
19590
19591 return ordinary<Decimal9>(offset);
19592 }
19593
19595 ThisType& leavesQty(Decimal9 value) noexcept
19596 {
19597 constexpr BlockLength offset = 78;
19598
19599 setOrdinary(offset, value);
19600 return *this;
19601 }
19602
19605 auto cumQty() const noexcept
19606 {
19607 constexpr BlockLength offset = 86;
19608
19609 return ordinary<Decimal9>(offset);
19610 }
19611
19613 ThisType& cumQty(Decimal9 value) noexcept
19614 {
19615 constexpr BlockLength offset = 86;
19616
19617 setOrdinary(offset, value);
19618 return *this;
19619 }
19620
19623 auto price() const noexcept
19624 {
19625 constexpr BlockLength offset = 94;
19626
19627 return ordinary<NullDecimal9>(offset, optional);
19628 }
19629
19631 ThisType& price(Decimal9 value) noexcept
19632 {
19633 constexpr BlockLength offset = 94;
19634
19635 setOrdinary(offset, value);
19636 return *this;
19637 }
19638
19640 {
19641 constexpr BlockLength offset = 94;
19642
19643 setOrdinary(offset, NullDecimal9());
19644 return *this;
19645 }
19646
19649 auto stopPx() const noexcept
19650 {
19651 constexpr BlockLength offset = 102;
19652
19653 return ordinary<NullDecimal9>(offset, optional);
19654 }
19655
19657 ThisType& stopPx(Decimal9 value) noexcept
19658 {
19659 constexpr BlockLength offset = 102;
19660
19661 setOrdinary(offset, value);
19662 return *this;
19663 }
19664
19666 {
19667 constexpr BlockLength offset = 102;
19668
19669 setOrdinary(offset, NullDecimal9());
19670 return *this;
19671 }
19672
19675 auto expireDate() const noexcept(dateToTimestamp::Nothrow)
19676 {
19677 constexpr BlockLength offset = 110;
19679 }
19680
19682 ThisType& expireDate(Timestamp value) noexcept(timestampToDate::Nothrow)
19683 {
19684 constexpr BlockLength offset = 110;
19685
19686 setOrdinary(offset, convert<timestampToDate>(value));
19687 return *this;
19688 }
19689
19691 {
19692 constexpr BlockLength offset = 110;
19693
19694 setOrdinary(offset, NullUTCDateOnly());
19695 return *this;
19696 }
19697
19700 auto timePriority() const noexcept(ticksToTimestamp::Nothrow)
19701 {
19702 constexpr BlockLength offset = 112;
19703 return convertible<ticksToTimestamp>(offset);
19704 }
19705
19707 ThisType& timePriority(Timestamp value) noexcept(timestampToTicks::Nothrow)
19708 {
19709 constexpr BlockLength offset = 112;
19710
19711 setOrdinary(offset, convert<timestampToTicks>(value));
19712 return *this;
19713 }
19714
19717 auto timeInForce() const noexcept
19718 {
19719 constexpr BlockLength offset = 120;
19720
19721 return enumeration<TimeInForceEnum>(offset);
19722 }
19723
19726 {
19727 constexpr BlockLength offset = 120;
19728
19729 setEnumeration<TimeInForceEnum>(offset, value);
19730 return *this;
19731 }
19732
19735 auto orderStatus() const noexcept
19736 {
19737 constexpr BlockLength offset = 121;
19738
19740 }
19741
19744 {
19745 constexpr BlockLength offset = 121;
19746
19747 setEnumeration<OrderStatusEnum>(offset, value);
19748 return *this;
19749 }
19750
19752 {
19753 constexpr BlockLength offset = 121;
19754
19755 setOrdinary(offset, NullUint8NULL());
19756 return *this;
19757 }
19758
19761 auto orderState() const noexcept
19762 {
19763 constexpr BlockLength offset = 122;
19764
19766 }
19767
19770 {
19771 constexpr BlockLength offset = 122;
19772
19773 setEnumeration<OrderStateEnum>(offset, value);
19774 return *this;
19775 }
19776
19778 {
19779 constexpr BlockLength offset = 122;
19780
19781 setOrdinary(offset, NullUint8NULL());
19782 return *this;
19783 }
19784
19787 auto giveUpClearingFirm() const noexcept
19788 {
19789 constexpr BlockLength offset = 123;
19790
19791 return ordinary<NullInt32NULL>(offset, optional);
19792 }
19793
19796 {
19797 constexpr BlockLength offset = 123;
19798
19799 setOrdinary(offset, value);
19800 return *this;
19801 }
19802
19804 {
19805 constexpr BlockLength offset = 123;
19806
19807 setOrdinary(offset, NullInt32NULL());
19808 return *this;
19809 }
19810
19813 auto clearingFirm() const noexcept
19814 {
19815 constexpr BlockLength offset = 127;
19816
19817 return ordinary<NullInt32NULL>(offset, optional);
19818 }
19819
19822 {
19823 constexpr BlockLength offset = 127;
19824
19825 setOrdinary(offset, value);
19826 return *this;
19827 }
19828
19830 {
19831 constexpr BlockLength offset = 127;
19832
19833 setOrdinary(offset, NullInt32NULL());
19834 return *this;
19835 }
19836
19839 auto directElectronicAccess() const noexcept
19840 {
19841 constexpr BlockLength offset = 131;
19842
19844 }
19845
19848 {
19849 constexpr BlockLength offset = 131;
19850
19851 setEnumeration<BooleanEnum>(offset, value);
19852 return *this;
19853 }
19854
19856 {
19857 constexpr BlockLength offset = 131;
19858
19859 setOrdinary(offset, NullUint8NULL());
19860 return *this;
19861 }
19862
19865 auto tradingCapacity() const noexcept
19866 {
19867 constexpr BlockLength offset = 132;
19868
19870 }
19871
19874 {
19875 constexpr BlockLength offset = 132;
19876
19878 return *this;
19879 }
19880
19882 {
19883 constexpr BlockLength offset = 132;
19884
19885 setOrdinary(offset, NullUint8NULL());
19886 return *this;
19887 }
19888
19891 auto liquidityProvision() const noexcept
19892 {
19893 constexpr BlockLength offset = 133;
19894
19896 }
19897
19900 {
19901 constexpr BlockLength offset = 133;
19902
19903 setEnumeration<BooleanEnum>(offset, value);
19904 return *this;
19905 }
19906
19908 {
19909 constexpr BlockLength offset = 133;
19910
19911 setOrdinary(offset, NullUint8NULL());
19912 return *this;
19913 }
19914
19917 auto commodityDerivIndicator() const noexcept
19918 {
19919 constexpr BlockLength offset = 134;
19920
19922 }
19923
19926 {
19927 constexpr BlockLength offset = 134;
19928
19929 setEnumeration<BooleanEnum>(offset, value);
19930 return *this;
19931 }
19932
19934 {
19935 constexpr BlockLength offset = 134;
19936
19937 setOrdinary(offset, NullUint8NULL());
19938 return *this;
19939 }
19940
19943 auto investmentDecision() const noexcept
19944 {
19945 constexpr BlockLength offset = 135;
19946
19947 return ordinary<NullInt64NULL>(offset, optional);
19948 }
19949
19952 {
19953 constexpr BlockLength offset = 135;
19954
19955 setOrdinary(offset, value);
19956 return *this;
19957 }
19958
19960 {
19961 constexpr BlockLength offset = 135;
19962
19963 setOrdinary(offset, NullInt64NULL());
19964 return *this;
19965 }
19966
19969 auto executionDecision() const noexcept
19970 {
19971 constexpr BlockLength offset = 143;
19972
19973 return ordinary<NullInt64NULL>(offset, optional);
19974 }
19975
19978 {
19979 constexpr BlockLength offset = 143;
19980
19981 setOrdinary(offset, value);
19982 return *this;
19983 }
19984
19986 {
19987 constexpr BlockLength offset = 143;
19988
19989 setOrdinary(offset, NullInt64NULL());
19990 return *this;
19991 }
19992
19995 auto clientIdCode() const noexcept
19996 {
19997 constexpr BlockLength offset = 151;
19998
19999 return ordinary<NullInt64NULL>(offset, optional);
20000 }
20001
20004 {
20005 constexpr BlockLength offset = 151;
20006
20007 setOrdinary(offset, value);
20008 return *this;
20009 }
20010
20012 {
20013 constexpr BlockLength offset = 151;
20014
20015 setOrdinary(offset, NullInt64NULL());
20016 return *this;
20017 }
20018
20021 auto mifidId() const noexcept
20022 {
20023 constexpr BlockLength offset = 159;
20024
20025 return ordinary<NullInt64NULL>(offset, optional);
20026 }
20027
20029 ThisType& mifidId(Int64NULL value) noexcept
20030 {
20031 constexpr BlockLength offset = 159;
20032
20033 setOrdinary(offset, value);
20034 return *this;
20035 }
20036
20038 {
20039 constexpr BlockLength offset = 159;
20040
20041 setOrdinary(offset, NullInt64NULL());
20042 return *this;
20043 }
20044
20047 auto selfMatchPreventionId() const noexcept
20048 {
20049 constexpr BlockLength offset = 167;
20050
20051 return ordinary<NullInt64NULL>(offset, optional);
20052 }
20053
20056 {
20057 constexpr BlockLength offset = 167;
20058
20059 setOrdinary(offset, value);
20060 return *this;
20061 }
20062
20064 {
20065 constexpr BlockLength offset = 167;
20066
20067 setOrdinary(offset, NullInt64NULL());
20068 return *this;
20069 }
20070
20074 {
20075 constexpr BlockLength offset = 175;
20076
20078 }
20079
20082 {
20083 constexpr BlockLength offset = 175;
20084
20086 return *this;
20087 }
20088
20090 {
20091 constexpr BlockLength offset = 175;
20092
20093 setOrdinary(offset, NullCharType());
20094 return *this;
20095 }
20096
20099 auto manualOrderIndicator() const noexcept
20100 {
20101 constexpr BlockLength offset = 176;
20102
20104 }
20105
20108 {
20109 constexpr BlockLength offset = 176;
20110
20111 setEnumeration<BooleanEnum>(offset, value);
20112 return *this;
20113 }
20114
20116 {
20117 constexpr BlockLength offset = 176;
20118
20119 setOrdinary(offset, NullUint8NULL());
20120 return *this;
20121 }
20122
20125 auto execInst() const noexcept
20126 {
20127 constexpr BlockLength offset = 177;
20128
20130 }
20131
20134 {
20135 constexpr BlockLength offset = 177;
20136
20137 setEnumeration<ExecInstEnum>(offset, value);
20138 return *this;
20139 }
20140
20142 {
20143 constexpr BlockLength offset = 177;
20144
20145 setOrdinary(offset, NullCharType());
20146 return *this;
20147 }
20148
20151 auto custOrderHandlingInst() const noexcept
20152 {
20153 constexpr BlockLength offset = 178;
20154
20156 }
20157
20160 {
20161 constexpr BlockLength offset = 178;
20162
20164 return *this;
20165 }
20166
20168 {
20169 constexpr BlockLength offset = 178;
20170
20171 setOrdinary(offset, NullCharType());
20172 return *this;
20173 }
20174
20177 auto positionEffect() const noexcept
20178 {
20179 constexpr BlockLength offset = 179;
20180
20182 }
20183
20186 {
20187 constexpr BlockLength offset = 179;
20188
20190 return *this;
20191 }
20192
20194 {
20195 constexpr BlockLength offset = 179;
20196
20197 setOrdinary(offset, NullCharType());
20198 return *this;
20199 }
20200
20203 auto allocHandlInst() const noexcept
20204 {
20205 constexpr BlockLength offset = 180;
20206
20208 }
20209
20212 {
20213 constexpr BlockLength offset = 180;
20214
20216 return *this;
20217 }
20218
20220 {
20221 constexpr BlockLength offset = 180;
20222
20223 setOrdinary(offset, NullCharType());
20224 return *this;
20225 }
20226
20229 auto clearingAccount() const noexcept
20230 {
20231 constexpr BlockLength offset = 181;
20232 constexpr BlockLength length = 14;
20233
20234 return fixedStr<length>(offset, optional);
20235 }
20236
20239 {
20240 constexpr BlockLength offset = 181;
20241 constexpr BlockLength length = 14;
20242
20243 setFixedStr<length>(offset, value);
20244 return *this;
20245 }
20246
20248 {
20249 constexpr BlockLength offset = 181;
20250 constexpr BlockLength length = 14;
20251
20252 setFixedStr<length>(offset, StrRef());
20253 return *this;
20254 }
20255
20258 auto customerAccountRefId() const noexcept
20259 {
20260 constexpr BlockLength offset = 195;
20261 constexpr BlockLength length = 12;
20262
20263 return fixedStr<length>(offset, optional);
20264 }
20265
20268 {
20269 constexpr BlockLength offset = 195;
20270 constexpr BlockLength length = 12;
20271
20272 setFixedStr<length>(offset, value);
20273 return *this;
20274 }
20275
20277 {
20278 constexpr BlockLength offset = 195;
20279 constexpr BlockLength length = 12;
20280
20281 setFixedStr<length>(offset, StrRef());
20282 return *this;
20283 }
20284
20287 auto memo() const noexcept
20288 {
20289 constexpr BlockLength offset = 207;
20290 constexpr BlockLength length = 30;
20291
20292 return fixedStr<length>(offset, optional);
20293 }
20294
20296 ThisType& memo(StrRef value) noexcept
20297 {
20298 constexpr BlockLength offset = 207;
20299 constexpr BlockLength length = 30;
20300
20301 setFixedStr<length>(offset, value);
20302 return *this;
20303 }
20304
20306 {
20307 constexpr BlockLength offset = 207;
20308 constexpr BlockLength length = 30;
20309
20310 setFixedStr<length>(offset, StrRef());
20311 return *this;
20312 }
20313
20316 auto allocationAccount() const noexcept
20317 {
20318 constexpr BlockLength offset = 237;
20319 constexpr BlockLength length = 20;
20320
20321 return fixedStr<length>(offset, optional);
20322 }
20323
20326 {
20327 constexpr BlockLength offset = 237;
20328 constexpr BlockLength length = 20;
20329
20330 setFixedStr<length>(offset, value);
20331 return *this;
20332 }
20333
20335 {
20336 constexpr BlockLength offset = 237;
20337 constexpr BlockLength length = 20;
20338
20339 setFixedStr<length>(offset, StrRef());
20340 return *this;
20341 }
20342
20345 auto onBehalfOfCompId() const noexcept
20346 {
20347 constexpr BlockLength offset = 257;
20348 constexpr BlockLength length = 41;
20349
20350 return fixedStr<length>(offset, optional);
20351 }
20352
20355 {
20356 constexpr BlockLength offset = 257;
20357 constexpr BlockLength length = 41;
20358
20359 setFixedStr<length>(offset, value);
20360 return *this;
20361 }
20362
20364 {
20365 constexpr BlockLength offset = 257;
20366 constexpr BlockLength length = 41;
20367
20368 setFixedStr<length>(offset, StrRef());
20369 return *this;
20370 }
20371
20374 auto onBehalfOfSubId() const noexcept
20375 {
20376 constexpr BlockLength offset = 298;
20377 constexpr BlockLength length = 41;
20378
20379 return fixedStr<length>(offset, optional);
20380 }
20381
20384 {
20385 constexpr BlockLength offset = 298;
20386 constexpr BlockLength length = 41;
20387
20388 setFixedStr<length>(offset, value);
20389 return *this;
20390 }
20391
20393 {
20394 constexpr BlockLength offset = 298;
20395 constexpr BlockLength length = 41;
20396
20397 setFixedStr<length>(offset, StrRef());
20398 return *this;
20399 }
20400
20403 auto onBehalfOfLocationId() const noexcept
20404 {
20405 constexpr BlockLength offset = 339;
20406 constexpr BlockLength length = 41;
20407
20408 return fixedStr<length>(offset, optional);
20409 }
20410
20413 {
20414 constexpr BlockLength offset = 339;
20415 constexpr BlockLength length = 41;
20416
20417 setFixedStr<length>(offset, value);
20418 return *this;
20419 }
20420
20422 {
20423 constexpr BlockLength offset = 339;
20424 constexpr BlockLength length = 41;
20425
20426 setFixedStr<length>(offset, StrRef());
20427 return *this;
20428 }
20429
20431 constexpr
20433 {
20434 return
20435 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
20436 380;
20437 }
20438
20440 constexpr
20442 {
20443 return
20444 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
20446 }
20447
20450 constexpr
20452 {
20453 return
20454 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
20455 0;
20456 }
20457
20460 constexpr
20462 {
20463 return
20464 static_cast<UInt64>(MessageHeaderBuilder::Size) +
20466 }
20467
20470 {
20471 return *this;
20472 }
20473
20512
20515 constexpr
20516 static StrRef className() noexcept
20517 {
20518 return constructStrRef("ExecutionReport_Snapshot");
20519 }
20520
20523 constexpr
20524 static StrRef fixType() noexcept
20525 {
20526 return constructStrRef("8");
20527 }
20528
20531 std::string toString() const;
20532
20535 const void* tail() const noexcept
20536 {
20537 return
20540 binary(),
20541 static_cast<ptrdiff_t>(SbeMessage::blockLength()) +
20543 }
20544
20548 {
20549 return
20551 }
20552
20553private:
20554 void checkLength(
20555 EncodedLength length, SchemaVersion version) const
20556 {
20557 const EncodedLength minimalRequiredLength =
20558 minimalBlockLength(version) +
20560 getMinimalVariableFieldsSize(version);
20561
20563 *this, length, minimalRequiredLength);
20564 }
20565
20566 void checkCompatibility() const
20567 {
20568 assert(TemplateId == templateId());
20569
20570 checkSchema<Schema>(schemaId(), version());
20571 checkLength(bufferSize(), version());
20572 }
20573};
20574
20576struct
20578: SbeMessage
20579{
20582
20585
20587 enum { TemplateId = 153 };
20588
20591
20594 : SbeMessage(data, length, version)
20595 {
20597 checkLength(length, version);
20599 reset();
20600 }
20601
20613
20616 : SbeMessage(data, length)
20617 {
20618 checkCompatibility();
20619 }
20620
20622 explicit
20624 : SbeMessage(message)
20625 {
20626 assert(message.valid());
20627
20628 checkCompatibility();
20629 }
20630
20633 ExecutionReport_Trade(void* data, EncodedLength length, NoInit, NoCheck) noexcept
20634 : SbeMessage(data, length, NoCheck())
20635 {
20636 assert(schemaId() == Schema::Id);
20637 assert(version() >= Schema::MinimalVersion);
20638 assert(TemplateId == templateId());
20639 }
20640
20643 auto originatorUserId() const noexcept
20644 {
20645 constexpr BlockLength offset = 0;
20646 constexpr BlockLength length = 20;
20647
20648 return fixedStr<length>(offset);
20649 }
20650
20653 {
20654 constexpr BlockLength offset = 0;
20655 constexpr BlockLength length = 20;
20656
20657 setFixedStr<length>(offset, value);
20658 return *this;
20659 }
20660
20663 auto execId() const noexcept
20664 {
20665 constexpr BlockLength offset = 20;
20666
20667 return ordinary<Int64>(offset);
20668 }
20669
20671 ThisType& execId(Int64 value) noexcept
20672 {
20673 constexpr BlockLength offset = 20;
20674
20675 setOrdinary(offset, value);
20676 return *this;
20677 }
20678
20681 auto clOrdId() const noexcept
20682 {
20683 constexpr BlockLength offset = 28;
20684
20685 return ordinary<Int64>(offset);
20686 }
20687
20689 ThisType& clOrdId(Int64 value) noexcept
20690 {
20691 constexpr BlockLength offset = 28;
20692
20693 setOrdinary(offset, value);
20694 return *this;
20695 }
20696
20699 auto symbol() const noexcept
20700 {
20701 constexpr BlockLength offset = 36;
20702
20703 return ordinary<Int32>(offset);
20704 }
20705
20707 ThisType& symbol(Int32 value) noexcept
20708 {
20709 constexpr BlockLength offset = 36;
20710
20711 setOrdinary(offset, value);
20712 return *this;
20713 }
20714
20717 auto ordType() const noexcept
20718 {
20719 constexpr BlockLength offset = 40;
20720
20721 return enumeration<OrderTypeEnum>(offset);
20722 }
20723
20726 {
20727 constexpr BlockLength offset = 40;
20728
20729 setEnumeration<OrderTypeEnum>(offset, value);
20730 return *this;
20731 }
20732
20735 auto side() const noexcept
20736 {
20737 constexpr BlockLength offset = 41;
20738
20739 return enumeration<SideEnum>(offset);
20740 }
20741
20743 ThisType& side(SideEnum value) noexcept
20744 {
20745 constexpr BlockLength offset = 41;
20746
20747 setEnumeration<SideEnum>(offset, value);
20748 return *this;
20749 }
20750
20753 auto orderId() const noexcept
20754 {
20755 constexpr BlockLength offset = 42;
20756
20757 return ordinary<Int64>(offset);
20758 }
20759
20761 ThisType& orderId(Int64 value) noexcept
20762 {
20763 constexpr BlockLength offset = 42;
20764
20765 setOrdinary(offset, value);
20766 return *this;
20767 }
20768
20771 auto origOrderId() const noexcept
20772 {
20773 constexpr BlockLength offset = 50;
20774
20776 }
20777
20780 {
20781 constexpr BlockLength offset = 50;
20782
20783 setOrdinary(offset, value);
20784 return *this;
20785 }
20786
20788 {
20789 constexpr BlockLength offset = 50;
20790
20792 return *this;
20793 }
20794
20797 auto leavesQty() const noexcept
20798 {
20799 constexpr BlockLength offset = 66;
20800
20801 return ordinary<Decimal9>(offset);
20802 }
20803
20805 ThisType& leavesQty(Decimal9 value) noexcept
20806 {
20807 constexpr BlockLength offset = 66;
20808
20809 setOrdinary(offset, value);
20810 return *this;
20811 }
20812
20815 auto cumQty() const noexcept
20816 {
20817 constexpr BlockLength offset = 74;
20818
20819 return ordinary<Decimal9>(offset);
20820 }
20821
20823 ThisType& cumQty(Decimal9 value) noexcept
20824 {
20825 constexpr BlockLength offset = 74;
20826
20827 setOrdinary(offset, value);
20828 return *this;
20829 }
20830
20833 auto lastPx() const noexcept
20834 {
20835 constexpr BlockLength offset = 82;
20836
20837 return ordinary<NullDecimal9>(offset, optional);
20838 }
20839
20841 ThisType& lastPx(Decimal9 value) noexcept
20842 {
20843 constexpr BlockLength offset = 82;
20844
20845 setOrdinary(offset, value);
20846 return *this;
20847 }
20848
20850 {
20851 constexpr BlockLength offset = 82;
20852
20853 setOrdinary(offset, NullDecimal9());
20854 return *this;
20855 }
20856
20859 auto lastShares() const noexcept
20860 {
20861 constexpr BlockLength offset = 90;
20862
20863 return ordinary<Decimal9>(offset);
20864 }
20865
20868 {
20869 constexpr BlockLength offset = 90;
20870
20871 setOrdinary(offset, value);
20872 return *this;
20873 }
20874
20877 auto transactTime() const noexcept(ticksToTimestamp::Nothrow)
20878 {
20879 constexpr BlockLength offset = 98;
20880 return convertible<ticksToTimestamp>(offset);
20881 }
20882
20884 ThisType& transactTime(Timestamp value) noexcept(timestampToTicks::Nothrow)
20885 {
20886 constexpr BlockLength offset = 98;
20887
20888 setOrdinary(offset, convert<timestampToTicks>(value));
20889 return *this;
20890 }
20891
20894 auto numOfLots() const noexcept
20895 {
20896 constexpr BlockLength offset = 106;
20897
20898 return ordinary<NullInt64NULL>(offset, optional);
20899 }
20900
20903 {
20904 constexpr BlockLength offset = 106;
20905
20906 setOrdinary(offset, value);
20907 return *this;
20908 }
20909
20911 {
20912 constexpr BlockLength offset = 106;
20913
20914 setOrdinary(offset, NullInt64NULL());
20915 return *this;
20916 }
20917
20920 auto execType() const noexcept
20921 {
20922 constexpr BlockLength offset = 114;
20923
20924 return enumeration<ExecTypeEnum>(offset);
20925 }
20926
20929 {
20930 constexpr BlockLength offset = 114;
20931
20932 setEnumeration<ExecTypeEnum>(offset, value);
20933 return *this;
20934 }
20935
20938 auto tradeFlags() const noexcept
20939 {
20940 constexpr BlockLength offset = 115;
20941
20942 return enumeration<TradeFlags>(offset);
20943 }
20944
20947 {
20948 constexpr BlockLength offset = 115;
20949
20950 setOrdinary(offset, value);
20951 return *this;
20952 }
20953
20956 auto clearingFirm() const noexcept
20957 {
20958 constexpr BlockLength offset = 116;
20959
20960 return ordinary<NullInt32NULL>(offset, optional);
20961 }
20962
20965 {
20966 constexpr BlockLength offset = 116;
20967
20968 setOrdinary(offset, value);
20969 return *this;
20970 }
20971
20973 {
20974 constexpr BlockLength offset = 116;
20975
20976 setOrdinary(offset, NullInt32NULL());
20977 return *this;
20978 }
20979
20982 auto clearingAccount() const noexcept
20983 {
20984 constexpr BlockLength offset = 120;
20985 constexpr BlockLength length = 14;
20986
20987 return fixedStr<length>(offset, optional);
20988 }
20989
20992 {
20993 constexpr BlockLength offset = 120;
20994 constexpr BlockLength length = 14;
20995
20996 setFixedStr<length>(offset, value);
20997 return *this;
20998 }
20999
21001 {
21002 constexpr BlockLength offset = 120;
21003 constexpr BlockLength length = 14;
21004
21005 setFixedStr<length>(offset, StrRef());
21006 return *this;
21007 }
21008
21011 auto memo() const noexcept
21012 {
21013 constexpr BlockLength offset = 134;
21014 constexpr BlockLength length = 30;
21015
21016 return fixedStr<length>(offset, optional);
21017 }
21018
21020 ThisType& memo(StrRef value) noexcept
21021 {
21022 constexpr BlockLength offset = 134;
21023 constexpr BlockLength length = 30;
21024
21025 setFixedStr<length>(offset, value);
21026 return *this;
21027 }
21028
21030 {
21031 constexpr BlockLength offset = 134;
21032 constexpr BlockLength length = 30;
21033
21034 setFixedStr<length>(offset, StrRef());
21035 return *this;
21036 }
21037
21040 auto execRefId() const noexcept
21041 {
21042 constexpr BlockLength offset = 164;
21043
21044 return ordinary<NullInt64NULL>(offset, optional);
21045 }
21046
21049 {
21050 constexpr BlockLength offset = 164;
21051
21052 setOrdinary(offset, value);
21053 return *this;
21054 }
21055
21057 {
21058 constexpr BlockLength offset = 164;
21059
21060 setOrdinary(offset, NullInt64NULL());
21061 return *this;
21062 }
21063
21066 auto legExecutions() const noexcept
21067 {
21068 constexpr BlockLength offset = 172;
21069
21070 return ordinary<NullInt16NULL>(offset, optional);
21071 }
21072
21075 {
21076 constexpr BlockLength offset = 172;
21077
21078 setOrdinary(offset, value);
21079 return *this;
21080 }
21081
21083 {
21084 constexpr BlockLength offset = 172;
21085
21086 setOrdinary(offset, NullInt16NULL());
21087 return *this;
21088 }
21089
21092 auto secondaryExecId() const noexcept
21093 {
21094 constexpr BlockLength offset = 174;
21095
21096 return ordinary<NullInt64NULL>(offset, optional);
21097 }
21098
21101 {
21102 constexpr BlockLength offset = 174;
21103
21104 setOrdinary(offset, value);
21105 return *this;
21106 }
21107
21109 {
21110 constexpr BlockLength offset = 174;
21111
21112 setOrdinary(offset, NullInt64NULL());
21113 return *this;
21114 }
21115
21118 auto linkExecId() const noexcept
21119 {
21120 constexpr BlockLength offset = 182;
21121
21122 return ordinary<NullInt64NULL>(offset, optional);
21123 }
21124
21127 {
21128 constexpr BlockLength offset = 182;
21129
21130 setOrdinary(offset, value);
21131 return *this;
21132 }
21133
21135 {
21136 constexpr BlockLength offset = 182;
21137
21138 setOrdinary(offset, NullInt64NULL());
21139 return *this;
21140 }
21141
21144 auto lastParPx() const noexcept
21145 {
21146 constexpr BlockLength offset = 190;
21147
21148 return ordinary<NullDecimal9>(offset, optional);
21149 }
21150
21152 ThisType& lastParPx(Decimal9 value) noexcept
21153 {
21154 constexpr BlockLength offset = 190;
21155
21156 setOrdinary(offset, value);
21157 return *this;
21158 }
21159
21161 {
21162 constexpr BlockLength offset = 190;
21163
21164 setOrdinary(offset, NullDecimal9());
21165 return *this;
21166 }
21167
21170 auto deliveryStartDate() const noexcept(ticksToTimestamp::Nothrow)
21171 {
21172 constexpr BlockLength offset = 198;
21174 }
21175
21177 ThisType& deliveryStartDate(Timestamp value) noexcept(timestampToTicks::Nothrow)
21178 {
21179 constexpr BlockLength offset = 198;
21180
21181 setOrdinary(offset, convert<timestampToTicks>(value));
21182 return *this;
21183 }
21184
21186 {
21187 constexpr BlockLength offset = 198;
21188
21189 setOrdinary(offset, NullUTCTimestamp());
21190 return *this;
21191 }
21192
21195 auto deliveryEndDate() const noexcept(ticksToTimestamp::Nothrow)
21196 {
21197 constexpr BlockLength offset = 206;
21199 }
21200
21202 ThisType& deliveryEndDate(Timestamp value) noexcept(timestampToTicks::Nothrow)
21203 {
21204 constexpr BlockLength offset = 206;
21205
21206 setOrdinary(offset, convert<timestampToTicks>(value));
21207 return *this;
21208 }
21209
21211 {
21212 constexpr BlockLength offset = 206;
21213
21214 setOrdinary(offset, NullUTCTimestamp());
21215 return *this;
21216 }
21217
21220 auto crossId() const noexcept
21221 {
21222 constexpr BlockLength offset = 214;
21223
21224 return ordinary<NullInt64NULL>(offset, optional);
21225 }
21226
21228 ThisType& crossId(Int64NULL value) noexcept
21229 {
21230 constexpr BlockLength offset = 214;
21231
21232 setOrdinary(offset, value);
21233 return *this;
21234 }
21235
21237 {
21238 constexpr BlockLength offset = 214;
21239
21240 setOrdinary(offset, NullInt64NULL());
21241 return *this;
21242 }
21243
21246 auto crossType() const noexcept
21247 {
21248 constexpr BlockLength offset = 222;
21249
21251 }
21252
21255 {
21256 constexpr BlockLength offset = 222;
21257
21258 setEnumeration<CrossTypeEnum>(offset, value);
21259 return *this;
21260 }
21261
21263 {
21264 constexpr BlockLength offset = 222;
21265
21266 setOrdinary(offset, NullCharType());
21267 return *this;
21268 }
21269
21272 auto waiverIndicator() const noexcept
21273 {
21274 constexpr BlockLength offset = 223;
21275
21277 }
21278
21281 {
21282 constexpr BlockLength offset = 223;
21283
21285 return *this;
21286 }
21287
21289 {
21290 constexpr BlockLength offset = 223;
21291
21292 setOrdinary(offset, NullUint8NULL());
21293 return *this;
21294 }
21295
21298 auto tradeType() const noexcept
21299 {
21300 constexpr BlockLength offset = 224;
21301 constexpr BlockLength length = 3;
21302
21303 return fixedStr<length>(offset, optional);
21304 }
21305
21307 ThisType& tradeType(StrRef value) noexcept
21308 {
21309 constexpr BlockLength offset = 224;
21310 constexpr BlockLength length = 3;
21311
21312 setFixedStr<length>(offset, value);
21313 return *this;
21314 }
21315
21317 {
21318 constexpr BlockLength offset = 224;
21319 constexpr BlockLength length = 3;
21320
21321 setFixedStr<length>(offset, StrRef());
21322 return *this;
21323 }
21324
21326 constexpr
21328 {
21329 return
21330 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
21331 227;
21332 }
21333
21335 constexpr
21337 {
21338 return
21339 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
21341 }
21342
21345 constexpr
21347 {
21348 return
21349 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
21350 0;
21351 }
21352
21355 constexpr
21357 {
21358 return
21359 static_cast<UInt64>(MessageHeaderBuilder::Size) +
21361 }
21362
21365 {
21366 return *this;
21367 }
21368
21370 ThisType& reset() noexcept
21371 {
21373 lastPx(nullOpt);
21377 memo(nullOpt);
21389
21391 return *this;
21392 }
21393
21396 constexpr
21397 static StrRef className() noexcept
21398 {
21399 return constructStrRef("ExecutionReport_Trade");
21400 }
21401
21404 constexpr
21405 static StrRef fixType() noexcept
21406 {
21407 return constructStrRef("8");
21408 }
21409
21412 std::string toString() const;
21413
21416 const void* tail() const noexcept
21417 {
21418 return
21421 binary(),
21422 static_cast<ptrdiff_t>(SbeMessage::blockLength()) +
21424 }
21425
21429 {
21430 return
21432 }
21433
21434private:
21435 void checkLength(
21436 EncodedLength length, SchemaVersion version) const
21437 {
21438 const EncodedLength minimalRequiredLength =
21439 minimalBlockLength(version) +
21441 getMinimalVariableFieldsSize(version);
21442
21444 *this, length, minimalRequiredLength);
21445 }
21446
21447 void checkCompatibility() const
21448 {
21449 assert(TemplateId == templateId());
21450
21451 checkSchema<Schema>(schemaId(), version());
21452 checkLength(bufferSize(), version());
21453 }
21454};
21455
21457struct
21459: SbeMessage
21460{
21463
21466
21468 enum { TemplateId = 107 };
21469
21471 QuoteReport() = default;
21472
21475 : SbeMessage(data, length, version)
21476 {
21478 checkLength(length, version);
21480 reset();
21481 }
21482
21487 : SbeMessage(data, length, version)
21488 {
21490 checkLength(length, version);
21493 }
21494
21496 QuoteReport(void* data, EncodedLength length, NoInit)
21497 : SbeMessage(data, length)
21498 {
21499 checkCompatibility();
21500 }
21501
21503 explicit
21504 QuoteReport(const SbeMessage& message)
21505 : SbeMessage(message)
21506 {
21507 assert(message.valid());
21508
21509 checkCompatibility();
21510 }
21511
21514 QuoteReport(void* data, EncodedLength length, NoInit, NoCheck) noexcept
21515 : SbeMessage(data, length, NoCheck())
21516 {
21517 assert(schemaId() == Schema::Id);
21518 assert(version() >= Schema::MinimalVersion);
21519 assert(TemplateId == templateId());
21520 }
21521
21524 auto originatorUserId() const noexcept
21525 {
21526 constexpr BlockLength offset = 0;
21527 constexpr BlockLength length = 20;
21528
21529 return fixedStr<length>(offset);
21530 }
21531
21534 {
21535 constexpr BlockLength offset = 0;
21536 constexpr BlockLength length = 20;
21537
21538 setFixedStr<length>(offset, value);
21539 return *this;
21540 }
21541
21544 auto side() const noexcept
21545 {
21546 constexpr BlockLength offset = 20;
21547
21549 }
21550
21552 ThisType& side(SideEnum value) noexcept
21553 {
21554 constexpr BlockLength offset = 20;
21555
21556 setEnumeration<SideEnum>(offset, value);
21557 return *this;
21558 }
21559
21561 {
21562 constexpr BlockLength offset = 20;
21563
21564 setOrdinary(offset, NullUint8NULL());
21565 return *this;
21566 }
21567
21570 auto symbol() const noexcept
21571 {
21572 constexpr BlockLength offset = 21;
21573
21574 return ordinary<Int32>(offset);
21575 }
21576
21578 ThisType& symbol(Int32 value) noexcept
21579 {
21580 constexpr BlockLength offset = 21;
21581
21582 setOrdinary(offset, value);
21583 return *this;
21584 }
21585
21588 auto rfqReqId() const noexcept
21589 {
21590 constexpr BlockLength offset = 25;
21591
21592 return ordinary<Int64>(offset);
21593 }
21594
21596 ThisType& rfqReqId(Int64 value) noexcept
21597 {
21598 constexpr BlockLength offset = 25;
21599
21600 setOrdinary(offset, value);
21601 return *this;
21602 }
21603
21606 auto rfqSystemId() const noexcept
21607 {
21608 constexpr BlockLength offset = 33;
21609
21610 return ordinary<Int64>(offset);
21611 }
21612
21614 ThisType& rfqSystemId(Int64 value) noexcept
21615 {
21616 constexpr BlockLength offset = 33;
21617
21618 setOrdinary(offset, value);
21619 return *this;
21620 }
21621
21624 auto transactTime() const noexcept(ticksToTimestamp::Nothrow)
21625 {
21626 constexpr BlockLength offset = 41;
21627 return convertible<ticksToTimestamp>(offset);
21628 }
21629
21631 ThisType& transactTime(Timestamp value) noexcept(timestampToTicks::Nothrow)
21632 {
21633 constexpr BlockLength offset = 41;
21634
21635 setOrdinary(offset, convert<timestampToTicks>(value));
21636 return *this;
21637 }
21638
21641 auto orderQty() const noexcept
21642 {
21643 constexpr BlockLength offset = 49;
21644
21645 return ordinary<NullDecimal9>(offset, optional);
21646 }
21647
21649 ThisType& orderQty(Decimal9 value) noexcept
21650 {
21651 constexpr BlockLength offset = 49;
21652
21653 setOrdinary(offset, value);
21654 return *this;
21655 }
21656
21658 {
21659 constexpr BlockLength offset = 49;
21660
21661 setOrdinary(offset, NullDecimal9());
21662 return *this;
21663 }
21664
21667 auto quoteAckStatus() const noexcept
21668 {
21669 constexpr BlockLength offset = 57;
21670
21671 return enumeration<QuoteAckStatusEnum>(offset);
21672 }
21673
21676 {
21677 constexpr BlockLength offset = 57;
21678
21680 return *this;
21681 }
21682
21685 auto quoteRejectReason() const noexcept
21686 {
21687 constexpr BlockLength offset = 59;
21688
21690 }
21691
21694 {
21695 constexpr BlockLength offset = 59;
21696
21698 return *this;
21699 }
21700
21702 {
21703 constexpr BlockLength offset = 59;
21704
21705 setOrdinary(offset, NullUint8NULL());
21706 return *this;
21707 }
21708
21710 constexpr
21712 {
21713 return
21714 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
21715 60;
21716 }
21717
21719 constexpr
21721 {
21722 return
21723 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
21725 }
21726
21729 constexpr
21731 {
21732 return
21733 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
21734 0;
21735 }
21736
21739 constexpr
21741 {
21742 return
21743 static_cast<UInt64>(MessageHeaderBuilder::Size) +
21745 }
21746
21749 {
21750 return *this;
21751 }
21752
21754 ThisType& reset() noexcept
21755 {
21756 side(nullOpt);
21759
21761 return *this;
21762 }
21763
21766 constexpr
21767 static StrRef className() noexcept
21768 {
21769 return constructStrRef("QuoteReport");
21770 }
21771
21774 constexpr
21775 static StrRef fixType() noexcept
21776 {
21777 return constructStrRef("QuoteReport");
21778 }
21779
21782 std::string toString() const;
21783
21786 const void* tail() const noexcept
21787 {
21788 return
21791 binary(),
21792 static_cast<ptrdiff_t>(SbeMessage::blockLength()) +
21794 }
21795
21799 {
21800 return
21802 }
21803
21804private:
21805 void checkLength(
21806 EncodedLength length, SchemaVersion version) const
21807 {
21808 const EncodedLength minimalRequiredLength =
21809 minimalBlockLength(version) +
21811 getMinimalVariableFieldsSize(version);
21812
21814 *this, length, minimalRequiredLength);
21815 }
21816
21817 void checkCompatibility() const
21818 {
21819 assert(TemplateId == templateId());
21820
21821 checkSchema<Schema>(schemaId(), version());
21822 checkLength(bufferSize(), version());
21823 }
21824};
21825
21827struct
21829: SbeMessage
21830{
21833
21836
21838 enum { TemplateId = 108 };
21839
21842
21845 : SbeMessage(data, length, version)
21846 {
21848 checkLength(length, version);
21850 reset();
21851 }
21852
21864
21867 : SbeMessage(data, length)
21868 {
21869 checkCompatibility();
21870 }
21871
21873 explicit
21875 : SbeMessage(message)
21876 {
21877 assert(message.valid());
21878
21879 checkCompatibility();
21880 }
21881
21884 NewOrderCrossReport(void* data, EncodedLength length, NoInit, NoCheck) noexcept
21885 : SbeMessage(data, length, NoCheck())
21886 {
21887 assert(schemaId() == Schema::Id);
21888 assert(version() >= Schema::MinimalVersion);
21889 assert(TemplateId == templateId());
21890 }
21891
21894 auto originatorUserId() const noexcept
21895 {
21896 constexpr BlockLength offset = 0;
21897 constexpr BlockLength length = 20;
21898
21899 return fixedStr<length>(offset);
21900 }
21901
21904 {
21905 constexpr BlockLength offset = 0;
21906 constexpr BlockLength length = 20;
21907
21908 setFixedStr<length>(offset, value);
21909 return *this;
21910 }
21911
21914 auto symbol() const noexcept
21915 {
21916 constexpr BlockLength offset = 20;
21917
21918 return ordinary<Int32>(offset);
21919 }
21920
21922 ThisType& symbol(Int32 value) noexcept
21923 {
21924 constexpr BlockLength offset = 20;
21925
21926 setOrdinary(offset, value);
21927 return *this;
21928 }
21929
21932 auto crossId() const noexcept
21933 {
21934 constexpr BlockLength offset = 24;
21935
21936 return ordinary<Int64>(offset);
21937 }
21938
21940 ThisType& crossId(Int64 value) noexcept
21941 {
21942 constexpr BlockLength offset = 24;
21943
21944 setOrdinary(offset, value);
21945 return *this;
21946 }
21947
21950 auto transactTime() const noexcept(ticksToTimestamp::Nothrow)
21951 {
21952 constexpr BlockLength offset = 32;
21953 return convertible<ticksToTimestamp>(offset);
21954 }
21955
21957 ThisType& transactTime(Timestamp value) noexcept(timestampToTicks::Nothrow)
21958 {
21959 constexpr BlockLength offset = 32;
21960
21961 setOrdinary(offset, convert<timestampToTicks>(value));
21962 return *this;
21963 }
21964
21967 auto rfcStatus() const noexcept
21968 {
21969 constexpr BlockLength offset = 40;
21970
21971 return enumeration<RFCStatusEnum>(offset);
21972 }
21973
21976 {
21977 constexpr BlockLength offset = 40;
21978
21979 setEnumeration<RFCStatusEnum>(offset, value);
21980 return *this;
21981 }
21982
21985 auto exchangeCode() const noexcept
21986 {
21987 constexpr BlockLength offset = 41;
21988
21989 return ordinary<NullInt32NULL>(offset, optional);
21990 }
21991
21994 {
21995 constexpr BlockLength offset = 41;
21996
21997 setOrdinary(offset, value);
21998 return *this;
21999 }
22000
22002 {
22003 constexpr BlockLength offset = 41;
22004
22005 setOrdinary(offset, NullInt32NULL());
22006 return *this;
22007 }
22008
22011 auto text() const noexcept
22012 {
22013 constexpr BlockLength offset = 45;
22014 constexpr BlockLength length = 100;
22015
22016 return fixedStr<length>(offset, optional);
22017 }
22018
22020 ThisType& text(StrRef value) noexcept
22021 {
22022 constexpr BlockLength offset = 45;
22023 constexpr BlockLength length = 100;
22024
22025 setFixedStr<length>(offset, value);
22026 return *this;
22027 }
22028
22030 {
22031 constexpr BlockLength offset = 45;
22032 constexpr BlockLength length = 100;
22033
22034 setFixedStr<length>(offset, StrRef());
22035 return *this;
22036 }
22037
22039 constexpr
22041 {
22042 return
22043 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
22044 145;
22045 }
22046
22048 constexpr
22050 {
22051 return
22052 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
22054 }
22055
22058 constexpr
22060 {
22061 return
22062 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
22063 0;
22064 }
22065
22068 constexpr
22070 {
22071 return
22072 static_cast<UInt64>(MessageHeaderBuilder::Size) +
22074 }
22075
22078 {
22079 return *this;
22080 }
22081
22083 ThisType& reset() noexcept
22084 {
22086 text(nullOpt);
22087
22089 return *this;
22090 }
22091
22094 constexpr
22095 static StrRef className() noexcept
22096 {
22097 return constructStrRef("NewOrderCrossReport");
22098 }
22099
22102 constexpr
22103 static StrRef fixType() noexcept
22104 {
22105 return constructStrRef("NewOrderCrossReport");
22106 }
22107
22110 std::string toString() const;
22111
22114 const void* tail() const noexcept
22115 {
22116 return
22119 binary(),
22120 static_cast<ptrdiff_t>(SbeMessage::blockLength()) +
22122 }
22123
22127 {
22128 return
22130 }
22131
22132private:
22133 void checkLength(
22134 EncodedLength length, SchemaVersion version) const
22135 {
22136 const EncodedLength minimalRequiredLength =
22137 minimalBlockLength(version) +
22139 getMinimalVariableFieldsSize(version);
22140
22142 *this, length, minimalRequiredLength);
22143 }
22144
22145 void checkCompatibility() const
22146 {
22147 assert(TemplateId == templateId());
22148
22149 checkSchema<Schema>(schemaId(), version());
22150 checkLength(bufferSize(), version());
22151 }
22152};
22153
22155struct
22157: SbeMessage
22158{
22161
22164
22166 enum { TemplateId = 109 };
22167
22170
22173 : SbeMessage(data, length, version)
22174 {
22176 checkLength(length, version);
22178 reset();
22179 }
22180
22192
22195 : SbeMessage(data, length)
22196 {
22197 checkCompatibility();
22198 }
22199
22201 explicit
22203 : SbeMessage(message)
22204 {
22205 assert(message.valid());
22206
22207 checkCompatibility();
22208 }
22209
22212 OrderMassCancelReport(void* data, EncodedLength length, NoInit, NoCheck) noexcept
22213 : SbeMessage(data, length, NoCheck())
22214 {
22215 assert(schemaId() == Schema::Id);
22216 assert(version() >= Schema::MinimalVersion);
22217 assert(TemplateId == templateId());
22218 }
22219
22222 auto originatorUserId() const noexcept
22223 {
22224 constexpr BlockLength offset = 0;
22225 constexpr BlockLength length = 20;
22226
22227 return fixedStr<length>(offset);
22228 }
22229
22232 {
22233 constexpr BlockLength offset = 0;
22234 constexpr BlockLength length = 20;
22235
22236 setFixedStr<length>(offset, value);
22237 return *this;
22238 }
22239
22242 auto symbol() const noexcept
22243 {
22244 constexpr BlockLength offset = 20;
22245
22246 return ordinary<NullInt32NULL>(offset, optional);
22247 }
22248
22250 ThisType& symbol(Int32NULL value) noexcept
22251 {
22252 constexpr BlockLength offset = 20;
22253
22254 setOrdinary(offset, value);
22255 return *this;
22256 }
22257
22259 {
22260 constexpr BlockLength offset = 20;
22261
22262 setOrdinary(offset, NullInt32NULL());
22263 return *this;
22264 }
22265
22268 auto clOrdId() const noexcept
22269 {
22270 constexpr BlockLength offset = 24;
22271
22272 return ordinary<Int64>(offset);
22273 }
22274
22276 ThisType& clOrdId(Int64 value) noexcept
22277 {
22278 constexpr BlockLength offset = 24;
22279
22280 setOrdinary(offset, value);
22281 return *this;
22282 }
22283
22286 auto transactTime() const noexcept(ticksToTimestamp::Nothrow)
22287 {
22288 constexpr BlockLength offset = 32;
22289 return convertible<ticksToTimestamp>(offset);
22290 }
22291
22293 ThisType& transactTime(Timestamp value) noexcept(timestampToTicks::Nothrow)
22294 {
22295 constexpr BlockLength offset = 32;
22296
22297 setOrdinary(offset, convert<timestampToTicks>(value));
22298 return *this;
22299 }
22300
22303 auto marketTypeId() const noexcept
22304 {
22305 constexpr BlockLength offset = 40;
22306
22307 return ordinary<NullInt32NULL>(offset, optional);
22308 }
22309
22312 {
22313 constexpr BlockLength offset = 40;
22314
22315 setOrdinary(offset, value);
22316 return *this;
22317 }
22318
22320 {
22321 constexpr BlockLength offset = 40;
22322
22323 setOrdinary(offset, NullInt32NULL());
22324 return *this;
22325 }
22326
22329 auto massCancelRequestType() const noexcept
22330 {
22331 constexpr BlockLength offset = 44;
22332
22334 }
22335
22338 {
22339 constexpr BlockLength offset = 44;
22340
22342 return *this;
22343 }
22344
22347 auto massCancelResponse() const noexcept
22348 {
22349 constexpr BlockLength offset = 45;
22350
22352 }
22353
22356 {
22357 constexpr BlockLength offset = 45;
22358
22360 return *this;
22361 }
22362
22365 auto massCancelRejectReason() const noexcept
22366 {
22367 constexpr BlockLength offset = 46;
22368
22370 }
22371
22374 {
22375 constexpr BlockLength offset = 46;
22376
22378 return *this;
22379 }
22380
22382 {
22383 constexpr BlockLength offset = 46;
22384
22385 setOrdinary(offset, NullUint8NULL());
22386 return *this;
22387 }
22388
22391 auto exchangeCode() const noexcept
22392 {
22393 constexpr BlockLength offset = 47;
22394
22395 return ordinary<NullInt32NULL>(offset, optional);
22396 }
22397
22400 {
22401 constexpr BlockLength offset = 47;
22402
22403 setOrdinary(offset, value);
22404 return *this;
22405 }
22406
22408 {
22409 constexpr BlockLength offset = 47;
22410
22411 setOrdinary(offset, NullInt32NULL());
22412 return *this;
22413 }
22414
22417 auto text() const noexcept
22418 {
22419 constexpr BlockLength offset = 51;
22420 constexpr BlockLength length = 100;
22421
22422 return fixedStr<length>(offset, optional);
22423 }
22424
22426 ThisType& text(StrRef value) noexcept
22427 {
22428 constexpr BlockLength offset = 51;
22429 constexpr BlockLength length = 100;
22430
22431 setFixedStr<length>(offset, value);
22432 return *this;
22433 }
22434
22436 {
22437 constexpr BlockLength offset = 51;
22438 constexpr BlockLength length = 100;
22439
22440 setFixedStr<length>(offset, StrRef());
22441 return *this;
22442 }
22443
22445 constexpr
22447 {
22448 return
22449 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
22450 151;
22451 }
22452
22454 constexpr
22456 {
22457 return
22458 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
22460 }
22461
22464 constexpr
22466 {
22467 return
22468 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
22469 0;
22470 }
22471
22474 constexpr
22476 {
22477 return
22478 static_cast<UInt64>(MessageHeaderBuilder::Size) +
22480 }
22481
22484 {
22485 return *this;
22486 }
22487
22489 ThisType& reset() noexcept
22490 {
22491 symbol(nullOpt);
22495 text(nullOpt);
22496
22498 return *this;
22499 }
22500
22503 constexpr
22504 static StrRef className() noexcept
22505 {
22506 return constructStrRef("OrderMassCancelReport");
22507 }
22508
22511 constexpr
22512 static StrRef fixType() noexcept
22513 {
22514 return constructStrRef("r");
22515 }
22516
22519 std::string toString() const;
22520
22523 const void* tail() const noexcept
22524 {
22525 return
22528 binary(),
22529 static_cast<ptrdiff_t>(SbeMessage::blockLength()) +
22531 }
22532
22536 {
22537 return
22539 }
22540
22541private:
22542 void checkLength(
22543 EncodedLength length, SchemaVersion version) const
22544 {
22545 const EncodedLength minimalRequiredLength =
22546 minimalBlockLength(version) +
22548 getMinimalVariableFieldsSize(version);
22549
22551 *this, length, minimalRequiredLength);
22552 }
22553
22554 void checkCompatibility() const
22555 {
22556 assert(TemplateId == templateId());
22557
22558 checkSchema<Schema>(schemaId(), version());
22559 checkLength(bufferSize(), version());
22560 }
22561};
22562
22564struct
22566: SbeMessage
22567{
22570
22573
22575 enum { TemplateId = 110 };
22576
22579 struct
22581 <
22583 >
22584 {
22586 typedef
22588 <
22590 >
22592
22595
22599 : Base(data, numericCast<Base::BlockLength>(length), version)
22600 {
22602 assert(length >= minimalBlockLength(version));
22603 }
22604
22607 {
22608 return *this;
22609 }
22610
22612 ThisType& reset() noexcept
22613 {
22617
22619 return *this;
22620 }
22621
22624 auto quoteSetId() const noexcept
22625 {
22626 constexpr BlockLength offset = 0;
22627
22628 return ordinary<Int32>(offset);
22629 }
22630
22632 ThisType& quoteSetId(Int32 value) noexcept
22633 {
22634 constexpr BlockLength offset = 0;
22635
22636 setOrdinary(offset, value);
22637 return *this;
22638 }
22639
22642 auto underlyingSymbol() const noexcept
22643 {
22644 constexpr BlockLength offset = 4;
22645
22646 return ordinary<Int32>(offset);
22647 }
22648
22651 {
22652 constexpr BlockLength offset = 4;
22653
22654 setOrdinary(offset, value);
22655 return *this;
22656 }
22657
22660 auto quoteEntryId() const noexcept
22661 {
22662 constexpr BlockLength offset = 8;
22663
22664 return ordinary<Int32>(offset);
22665 }
22666
22668 ThisType& quoteEntryId(Int32 value) noexcept
22669 {
22670 constexpr BlockLength offset = 8;
22671
22672 setOrdinary(offset, value);
22673 return *this;
22674 }
22675
22678 auto symbol() const noexcept
22679 {
22680 constexpr BlockLength offset = 12;
22681
22682 return ordinary<Int32>(offset);
22683 }
22684
22686 ThisType& symbol(Int32 value) noexcept
22687 {
22688 constexpr BlockLength offset = 12;
22689
22690 setOrdinary(offset, value);
22691 return *this;
22692 }
22693
22696 auto quoteEntryRejectReason() const noexcept
22697 {
22698 constexpr BlockLength offset = 16;
22699
22701 }
22702
22705 {
22706 constexpr BlockLength offset = 16;
22707
22709 return *this;
22710 }
22711
22713 {
22714 constexpr BlockLength offset = 16;
22715
22716 setOrdinary(offset, NullUint8NULL());
22717 return *this;
22718 }
22719
22722 auto quoteEntryExchangeCode() const noexcept
22723 {
22724 constexpr BlockLength offset = 17;
22725
22726 return ordinary<NullInt32NULL>(offset, optional);
22727 }
22728
22731 {
22732 constexpr BlockLength offset = 17;
22733
22734 setOrdinary(offset, value);
22735 return *this;
22736 }
22737
22739 {
22740 constexpr BlockLength offset = 17;
22741
22742 setOrdinary(offset, NullInt32NULL());
22743 return *this;
22744 }
22745
22748 auto quoteEntryRejectReasonText() const noexcept
22749 {
22750 constexpr BlockLength offset = 21;
22751 constexpr BlockLength length = 100;
22752
22753 return fixedStr<length>(offset, optional);
22754 }
22755
22758 {
22759 constexpr BlockLength offset = 21;
22760 constexpr BlockLength length = 100;
22761
22762 setFixedStr<length>(offset, value);
22763 return *this;
22764 }
22765
22767 {
22768 constexpr BlockLength offset = 21;
22769 constexpr BlockLength length = 100;
22770
22771 setFixedStr<length>(offset, StrRef());
22772 return *this;
22773 }
22774
22777 constexpr
22779 {
22780 return
22781 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
22783 }
22784
22787 constexpr
22789 {
22790 return
22791 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
22792 121;
22793 }
22794
22797 constexpr
22798 static StrRef className() noexcept
22799 {
22800 return constructStrRef("MassQuoteReport.QuoteSetsEntry");
22801 }
22802 };
22803
22805 typedef
22808
22810 MassQuoteReport() = default;
22811
22814 : SbeMessage(data, length, version)
22815 {
22817 checkLength(length, version);
22819 reset();
22820 }
22821
22833
22836 : SbeMessage(data, length)
22837 {
22838 checkCompatibility();
22839 }
22840
22842 explicit
22844 : SbeMessage(message)
22845 {
22846 assert(message.valid());
22847
22848 checkCompatibility();
22849 }
22850
22853 MassQuoteReport(void* data, EncodedLength length, NoInit, NoCheck) noexcept
22854 : SbeMessage(data, length, NoCheck())
22855 {
22856 assert(schemaId() == Schema::Id);
22857 assert(version() >= Schema::MinimalVersion);
22858 assert(TemplateId == templateId());
22859 }
22860
22863 auto quoteId() const noexcept
22864 {
22865 constexpr BlockLength offset = 0;
22866
22867 return ordinary<Int64>(offset);
22868 }
22869
22871 ThisType& quoteId(Int64 value) noexcept
22872 {
22873 constexpr BlockLength offset = 0;
22874
22875 setOrdinary(offset, value);
22876 return *this;
22877 }
22878
22881 auto originatorUserId() const noexcept
22882 {
22883 constexpr BlockLength offset = 8;
22884 constexpr BlockLength length = 20;
22885
22886 return fixedStr<length>(offset);
22887 }
22888
22891 {
22892 constexpr BlockLength offset = 8;
22893 constexpr BlockLength length = 20;
22894
22895 setFixedStr<length>(offset, value);
22896 return *this;
22897 }
22898
22901 auto riskProtectionReset() const noexcept
22902 {
22903 constexpr BlockLength offset = 28;
22904
22906 }
22907
22910 {
22911 constexpr BlockLength offset = 28;
22912
22913 setEnumeration<BooleanEnum>(offset, value);
22914 return *this;
22915 }
22916
22918 {
22919 constexpr BlockLength offset = 28;
22920
22921 setOrdinary(offset, NullUint8NULL());
22922 return *this;
22923 }
22924
22927 auto quoteAckStatus() const noexcept
22928 {
22929 constexpr BlockLength offset = 29;
22930
22931 return enumeration<QuoteAckStatusEnum>(offset);
22932 }
22933
22936 {
22937 constexpr BlockLength offset = 29;
22938
22940 return *this;
22941 }
22942
22945 auto quoteRejectReason() const noexcept
22946 {
22947 constexpr BlockLength offset = 31;
22948
22950 }
22951
22954 {
22955 constexpr BlockLength offset = 31;
22956
22958 return *this;
22959 }
22960
22962 {
22963 constexpr BlockLength offset = 31;
22964
22965 setOrdinary(offset, NullUint8NULL());
22966 return *this;
22967 }
22968
22971 auto transactTime() const noexcept(ticksToTimestamp::Nothrow)
22972 {
22973 constexpr BlockLength offset = 32;
22975 }
22976
22978 ThisType& transactTime(Timestamp value) noexcept(timestampToTicks::Nothrow)
22979 {
22980 constexpr BlockLength offset = 32;
22981
22982 setOrdinary(offset, convert<timestampToTicks>(value));
22983 return *this;
22984 }
22985
22987 {
22988 constexpr BlockLength offset = 32;
22989
22990 setOrdinary(offset, NullUTCTimestamp());
22991 return *this;
22992 }
22993
22996 auto meAcceptanceTime() const noexcept(ticksToTimestamp::Nothrow)
22997 {
22998 constexpr BlockLength offset = 40;
23000 }
23001
23003 ThisType& meAcceptanceTime(Timestamp value) noexcept(timestampToTicks::Nothrow)
23004 {
23005 constexpr BlockLength offset = 40;
23006
23007 setOrdinary(offset, convert<timestampToTicks>(value));
23008 return *this;
23009 }
23010
23012 {
23013 constexpr BlockLength offset = 40;
23014
23015 setOrdinary(offset, NullUTCTimestamp());
23016 return *this;
23017 }
23018
23021 auto exchangeCode() const noexcept
23022 {
23023 constexpr BlockLength offset = 48;
23024
23025 return ordinary<NullInt32NULL>(offset, optional);
23026 }
23027
23030 {
23031 constexpr BlockLength offset = 48;
23032
23033 setOrdinary(offset, value);
23034 return *this;
23035 }
23036
23038 {
23039 constexpr BlockLength offset = 48;
23040
23041 setOrdinary(offset, NullInt32NULL());
23042 return *this;
23043 }
23044
23047 auto text() const noexcept
23048 {
23049 constexpr BlockLength offset = 52;
23050 constexpr BlockLength length = 100;
23051
23052 return fixedStr<length>(offset, optional);
23053 }
23054
23056 ThisType& text(StrRef value) noexcept
23057 {
23058 constexpr BlockLength offset = 52;
23059 constexpr BlockLength length = 100;
23060
23061 setFixedStr<length>(offset, value);
23062 return *this;
23063 }
23064
23066 {
23067 constexpr BlockLength offset = 52;
23068 constexpr BlockLength length = 100;
23069
23070 setFixedStr<length>(offset, StrRef());
23071 return *this;
23072 }
23073
23076 QuoteSets quoteSets() const noexcept
23077 {
23078 return getGroup<QuoteSets>(QuoteSetsAccess(), *this);
23079 }
23080
23084 {
23085 return getGroup<QuoteSets>(QuoteSetsAccess(), *this);
23086 }
23087
23092 {
23094 QuoteSetsAccess(),
23095 length,
23096 *this);
23097 }
23098
23102 {
23103 return setupGroup<QuoteSets>(
23104 QuoteSetsAccess(),
23105 length,
23106 *this);
23107 }
23108
23110 constexpr
23112 {
23113 return
23114 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
23115 152;
23116 }
23117
23119 constexpr
23121 {
23122 return
23123 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
23125 }
23126
23129 constexpr
23131 {
23132 return
23133 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
23134 static_cast<MessageSize>(QuoteSets::EmptySize);
23135 }
23136
23139 constexpr
23140 static UInt64 getMaxMessageSize(UInt8 maxGroupItems = 255) noexcept
23141 {
23142 return
23143 static_cast<UInt64>(MessageHeaderBuilder::Size) +
23146 }
23147
23150 {
23152 return *this;
23153 }
23154
23156 ThisType& reset() noexcept
23157 {
23163 text(nullOpt);
23164
23166 return *this;
23167 }
23168
23171 constexpr
23172 static StrRef className() noexcept
23173 {
23174 return constructStrRef("MassQuoteReport");
23175 }
23176
23179 constexpr
23180 static StrRef fixType() noexcept
23181 {
23182 return constructStrRef("b");
23183 }
23184
23187 std::string toString() const;
23188
23191 const void* tail() const noexcept
23192 {
23193 return
23194 quoteSets().tail();
23195 }
23196
23200 {
23201 return
23203 }
23204
23205private:
23206 void checkLength(
23207 EncodedLength length, SchemaVersion version) const
23208 {
23209 const EncodedLength minimalRequiredLength =
23210 minimalBlockLength(version) +
23212 getMinimalVariableFieldsSize(version);
23213
23215 *this, length, minimalRequiredLength);
23216 }
23217
23219 void checkVarLenFields() const
23220 {
23221 groups().
23222 checkTail<QuoteSets>();
23223 }
23224
23225 void checkCompatibility() const
23226 {
23227 assert(TemplateId == templateId());
23228
23229 checkSchema<Schema>(schemaId(), version());
23230 checkLength(bufferSize(), version());
23231 checkVarLenFields();
23232 }
23233
23235 struct QuoteSetsAccess
23236 {
23237 QuoteSets operator()(const MassQuoteReport& obj) const noexcept
23238 {
23239 return obj.
23240 groups().
23241 head<QuoteSets>();
23242 }
23243 };
23244
23247 void quoteSets(NullOpt) noexcept
23248 {
23249 resetGroup<QuoteSets>(QuoteSetsAccess(), *this);
23250 }
23251};
23252
23254struct
23256: SbeMessage
23257{
23260
23263
23265 enum { TemplateId = 16 };
23266
23268 ResendRequest() = default;
23269
23272 : SbeMessage(data, length, version)
23273 {
23275 checkLength(length, version);
23277 reset();
23278 }
23279
23291
23294 : SbeMessage(data, length)
23295 {
23296 checkCompatibility();
23297 }
23298
23300 explicit
23302 : SbeMessage(message)
23303 {
23304 assert(message.valid());
23305
23306 checkCompatibility();
23307 }
23308
23311 ResendRequest(void* data, EncodedLength length, NoInit, NoCheck) noexcept
23312 : SbeMessage(data, length, NoCheck())
23313 {
23314 assert(schemaId() == Schema::Id);
23315 assert(version() >= Schema::MinimalVersion);
23316 assert(TemplateId == templateId());
23317 }
23318
23322 auto beginSeqNo() const noexcept
23323 {
23324 constexpr BlockLength offset = 0;
23325
23326 return ordinary<UInt32>(offset);
23327 }
23328
23331 ThisType& beginSeqNo(UInt32 value) noexcept
23332 {
23333 constexpr BlockLength offset = 0;
23334
23335 setOrdinary(offset, value);
23336 return *this;
23337 }
23338
23342 auto endSeqNo() const noexcept
23343 {
23344 constexpr BlockLength offset = 4;
23345
23346 return ordinary<UInt32>(offset);
23347 }
23348
23351 ThisType& endSeqNo(UInt32 value) noexcept
23352 {
23353 constexpr BlockLength offset = 4;
23354
23355 setOrdinary(offset, value);
23356 return *this;
23357 }
23358
23360 constexpr
23362 {
23363 return
23364 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
23365 8;
23366 }
23367
23369 constexpr
23371 {
23372 return
23373 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
23375 }
23376
23379 constexpr
23381 {
23382 return
23383 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
23384 0;
23385 }
23386
23389 constexpr
23391 {
23392 return
23393 static_cast<UInt64>(MessageHeaderBuilder::Size) +
23395 }
23396
23399 {
23400 return *this;
23401 }
23402
23404 ThisType& reset() noexcept
23405 {
23407 return *this;
23408 }
23409
23412 constexpr
23413 static StrRef className() noexcept
23414 {
23415 return constructStrRef("ResendRequest");
23416 }
23417
23420 constexpr
23421 static StrRef fixType() noexcept
23422 {
23423 return constructStrRef("ResendRequest");
23424 }
23425
23428 std::string toString() const;
23429
23432 const void* tail() const noexcept
23433 {
23434 return
23437 binary(),
23438 static_cast<ptrdiff_t>(SbeMessage::blockLength()) +
23440 }
23441
23445 {
23446 return
23448 }
23449
23450private:
23451 void checkLength(
23452 EncodedLength length, SchemaVersion version) const
23453 {
23454 const EncodedLength minimalRequiredLength =
23455 minimalBlockLength(version) +
23457 getMinimalVariableFieldsSize(version);
23458
23460 *this, length, minimalRequiredLength);
23461 }
23462
23463 void checkCompatibility() const
23464 {
23465 assert(TemplateId == templateId());
23466
23467 checkSchema<Schema>(schemaId(), version());
23468 checkLength(bufferSize(), version());
23469 }
23470};
23471
23473struct
23475: SbeMessage
23476{
23479
23482
23484 enum { TemplateId = 117 };
23485
23487 ResendReport() = default;
23488
23491 : SbeMessage(data, length, version)
23492 {
23494 checkLength(length, version);
23496 reset();
23497 }
23498
23510
23512 ResendReport(void* data, EncodedLength length, NoInit)
23513 : SbeMessage(data, length)
23514 {
23515 checkCompatibility();
23516 }
23517
23519 explicit
23520 ResendReport(const SbeMessage& message)
23521 : SbeMessage(message)
23522 {
23523 assert(message.valid());
23524
23525 checkCompatibility();
23526 }
23527
23530 ResendReport(void* data, EncodedLength length, NoInit, NoCheck) noexcept
23531 : SbeMessage(data, length, NoCheck())
23532 {
23533 assert(schemaId() == Schema::Id);
23534 assert(version() >= Schema::MinimalVersion);
23535 assert(TemplateId == templateId());
23536 }
23537
23541 auto beginSeqNo() const noexcept
23542 {
23543 constexpr BlockLength offset = 0;
23544
23545 return ordinary<UInt32>(offset);
23546 }
23547
23550 ThisType& beginSeqNo(UInt32 value) noexcept
23551 {
23552 constexpr BlockLength offset = 0;
23553
23554 setOrdinary(offset, value);
23555 return *this;
23556 }
23557
23561 auto endSeqNo() const noexcept
23562 {
23563 constexpr BlockLength offset = 4;
23564
23565 return ordinary<UInt32>(offset);
23566 }
23567
23570 ThisType& endSeqNo(UInt32 value) noexcept
23571 {
23572 constexpr BlockLength offset = 4;
23573
23574 setOrdinary(offset, value);
23575 return *this;
23576 }
23577
23580 auto status() const noexcept
23581 {
23582 constexpr BlockLength offset = 8;
23583
23584 return enumeration<RequestStatusEnum>(offset);
23585 }
23586
23589 {
23590 constexpr BlockLength offset = 8;
23591
23592 setEnumeration<RequestStatusEnum>(offset, value);
23593 return *this;
23594 }
23595
23598 auto exchangeCode() const noexcept
23599 {
23600 constexpr BlockLength offset = 9;
23601
23602 return ordinary<NullInt32NULL>(offset, optional);
23603 }
23604
23607 {
23608 constexpr BlockLength offset = 9;
23609
23610 setOrdinary(offset, value);
23611 return *this;
23612 }
23613
23615 {
23616 constexpr BlockLength offset = 9;
23617
23618 setOrdinary(offset, NullInt32NULL());
23619 return *this;
23620 }
23621
23624 auto text() const noexcept
23625 {
23626 constexpr BlockLength offset = 13;
23627 constexpr BlockLength length = 100;
23628
23629 return fixedStr<length>(offset, optional);
23630 }
23631
23633 ThisType& text(StrRef value) noexcept
23634 {
23635 constexpr BlockLength offset = 13;
23636 constexpr BlockLength length = 100;
23637
23638 setFixedStr<length>(offset, value);
23639 return *this;
23640 }
23641
23643 {
23644 constexpr BlockLength offset = 13;
23645 constexpr BlockLength length = 100;
23646
23647 setFixedStr<length>(offset, StrRef());
23648 return *this;
23649 }
23650
23652 constexpr
23654 {
23655 return
23656 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
23657 113;
23658 }
23659
23661 constexpr
23663 {
23664 return
23665 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
23667 }
23668
23671 constexpr
23673 {
23674 return
23675 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
23676 0;
23677 }
23678
23681 constexpr
23683 {
23684 return
23685 static_cast<UInt64>(MessageHeaderBuilder::Size) +
23687 }
23688
23691 {
23692 return *this;
23693 }
23694
23696 ThisType& reset() noexcept
23697 {
23699 text(nullOpt);
23700
23702 return *this;
23703 }
23704
23707 constexpr
23708 static StrRef className() noexcept
23709 {
23710 return constructStrRef("ResendReport");
23711 }
23712
23715 constexpr
23716 static StrRef fixType() noexcept
23717 {
23718 return constructStrRef("ResendReport");
23719 }
23720
23723 std::string toString() const;
23724
23727 const void* tail() const noexcept
23728 {
23729 return
23732 binary(),
23733 static_cast<ptrdiff_t>(SbeMessage::blockLength()) +
23735 }
23736
23740 {
23741 return
23743 }
23744
23745private:
23746 void checkLength(
23747 EncodedLength length, SchemaVersion version) const
23748 {
23749 const EncodedLength minimalRequiredLength =
23750 minimalBlockLength(version) +
23752 getMinimalVariableFieldsSize(version);
23753
23755 *this, length, minimalRequiredLength);
23756 }
23757
23758 void checkCompatibility() const
23759 {
23760 assert(TemplateId == templateId());
23761
23762 checkSchema<Schema>(schemaId(), version());
23763 checkLength(bufferSize(), version());
23764 }
23765};
23766
23768struct
23770: SbeMessage
23771{
23774
23777
23779 enum { TemplateId = 111 };
23780
23782 SequenceReset() = default;
23783
23786 : SbeMessage(data, length, version)
23787 {
23789 checkLength(length, version);
23791 reset();
23792 }
23793
23805
23808 : SbeMessage(data, length)
23809 {
23810 checkCompatibility();
23811 }
23812
23814 explicit
23816 : SbeMessage(message)
23817 {
23818 assert(message.valid());
23819
23820 checkCompatibility();
23821 }
23822
23825 SequenceReset(void* data, EncodedLength length, NoInit, NoCheck) noexcept
23826 : SbeMessage(data, length, NoCheck())
23827 {
23828 assert(schemaId() == Schema::Id);
23829 assert(version() >= Schema::MinimalVersion);
23830 assert(TemplateId == templateId());
23831 }
23832
23835 auto newSeqNo() const noexcept
23836 {
23837 constexpr BlockLength offset = 0;
23838
23839 return ordinary<UInt32>(offset);
23840 }
23841
23843 ThisType& newSeqNo(UInt32 value) noexcept
23844 {
23845 constexpr BlockLength offset = 0;
23846
23847 setOrdinary(offset, value);
23848 return *this;
23849 }
23850
23853 auto gapFillFlag() const noexcept
23854 {
23855 constexpr BlockLength offset = 4;
23856
23858 }
23859
23862 {
23863 constexpr BlockLength offset = 4;
23864
23865 setEnumeration<BooleanEnum>(offset, value);
23866 return *this;
23867 }
23868
23870 {
23871 constexpr BlockLength offset = 4;
23872
23873 setOrdinary(offset, NullUint8NULL());
23874 return *this;
23875 }
23876
23878 constexpr
23880 {
23881 return
23882 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
23883 5;
23884 }
23885
23887 constexpr
23889 {
23890 return
23891 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
23893 }
23894
23897 constexpr
23899 {
23900 return
23901 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
23902 0;
23903 }
23904
23907 constexpr
23909 {
23910 return
23911 static_cast<UInt64>(MessageHeaderBuilder::Size) +
23913 }
23914
23917 {
23918 return *this;
23919 }
23920
23922 ThisType& reset() noexcept
23923 {
23925
23927 return *this;
23928 }
23929
23932 constexpr
23933 static StrRef className() noexcept
23934 {
23935 return constructStrRef("SequenceReset");
23936 }
23937
23940 constexpr
23941 static StrRef fixType() noexcept
23942 {
23943 return constructStrRef("SequenceReset");
23944 }
23945
23948 std::string toString() const;
23949
23952 const void* tail() const noexcept
23953 {
23954 return
23957 binary(),
23958 static_cast<ptrdiff_t>(SbeMessage::blockLength()) +
23960 }
23961
23965 {
23966 return
23968 }
23969
23970private:
23971 void checkLength(
23972 EncodedLength length, SchemaVersion version) const
23973 {
23974 const EncodedLength minimalRequiredLength =
23975 minimalBlockLength(version) +
23977 getMinimalVariableFieldsSize(version);
23978
23980 *this, length, minimalRequiredLength);
23981 }
23982
23983 void checkCompatibility() const
23984 {
23985 assert(TemplateId == templateId());
23986
23987 checkSchema<Schema>(schemaId(), version());
23988 checkLength(bufferSize(), version());
23989 }
23990};
23991
23992
#define ONIXS_ICEBOE_MESSAGING_NAMESPACE_BEGIN
Definition ABI.h:102
#define ONIXS_ICEBOE_MESSAGING_NAMESPACE_END
Definition ABI.h:106
#define ONIXS_ICEBOE_UNUSED
Definition Compiler.h:162
#define ONIXS_ICEBOE_NODISCARD
Definition Compiler.h:154
ONIXS_ICEBOE_FORCEINLINE Enumeration enumeration(MessageSize offset) const noexcept
Definition SbeMessage.h:141
ONIXS_ICEBOE_FORCEINLINE Value ordinary(MessageSize offset) const noexcept
Definition SbeMessage.h:81
ONIXS_ICEBOE_FORCEINLINE StrRef fixedStr(MessageSize offset) const noexcept
Definition SbeMessage.h:170
ONIXS_ICEBOE_FORCEINLINE std::enable_if<!isComposite< typenameNullValue::Value >::value, SbeOptionalConverted< decltype(std::declval< Callable >()(std::declval< typenameArgType< Callable >::type >()))> >::type convertible(MessageSize offset, OptionalTag) const noexcept(noexcept(Callable::Nothrow))
Definition SbeMessage.h:230
UInt16 BlockLength
Type alias for the BlockLength.
Definition Composites.h:358
ONIXS_ICEBOE_FORCEINLINE void setEnumeration(MessageSize offset, Enumeration value) noexcept
Definition SbeMessage.h:307
ONIXS_ICEBOE_FORCEINLINE void setOrdinary(MessageSize offset, FieldValue value) noexcept
Definition SbeMessage.h:285
ONIXS_ICEBOE_FORCEINLINE void setFixedStr(MessageSize offset, StrRef value) noexcept
Definition SbeMessage.h:325
SBE-encoded repeating group.
Definition SbeMessage.h:694
const void * binary() const noexcept
MessageTemplateId templateId() const noexcept
SchemaId schemaId() const noexcept
MessageSize EncodedLength
Length of the message binary data.
void setupGroup(Group &group, typename Group::Size entryCount, const void *messageTail)
Initializes the group header.
SchemaVersion version() const noexcept
static constexpr MessageSize getMaxMessageSize() noexcept
Maximal message size.
BlockLength blockLength() const noexcept
SbeMessage() noexcept
Initializes a blank instance.
void setVariableLengthField(Callable callable, StrRef value, Owner &owner)
Sets the value of the variable length field.
void init(MessageHeader::TemplateId value, MessageHeader::BlockLength minimalBlockLength, MessageHeader::BlockLength blockLength, SchemaId id) noexcept
ONIXS_ICEBOE_FORCEINLINE Group getGroup(Callable callable, Owner &owner) const noexcept
MessageSize BlockLength
Length of the message body representing a block of fixed-length fields.
StrRef getVariableLengthField(Callable callable, const Owner &owner) const noexcept
MessageSize calculateBinarySize(const void *tail) const noexcept
void constructGroup(Group &group, typename Group::Size entryCount, const void *messageTail)
Initializes the group header, sets all optional fields to null.
The time point without the time-zone information.
Definition Time.h:470
ONIXS_ICEBOE_WRAP_F(ticksToTimestampImpl) ticksToTimestamp
Definition Fields.h:1044
IntegralConstant< Int8, -128 > NullInt8NULL
Null value for an optional Int8NULL field.
Definition Fields.h:982
PriceTypeEnum
PriceTypeEnumNULL type.
Definition Fields.h:220
Char CharType
Type alias for the CharType.
Definition Fields.h:62
OrderFlags
OrderFlags type.
Definition Fields.h:857
RFCStatusEnum
RFCStatusEnum type.
Definition Fields.h:446
OrderStateEnum
OrderStateEnumNULL type.
Definition Fields.h:316
BenchmarkPriceTypeEnum
BenchmarkPriceTypeEnumNULL type.
Definition Fields.h:244
IntegralConstant< UInt16, 65535 > NullUint16NULL
Null value for an optional Uint16NULL field.
Definition Fields.h:1012
IntegralConstant< Int32, -2147483647-1 > NullInt32NULL
Null value for an optional Int32NULL field.
Definition Fields.h:994
OrderTypeEnum
OrderTypeEnum type.
Definition Fields.h:202
constexpr StrRef constructStrRef(const char(&value)[Size]) noexcept
Definition StrRef.h:414
TradeFlags
TradeFlags type.
Definition Fields.h:890
MassCancelResponseEnum
MassCancelResponseEnum type.
Definition Fields.h:711
SecurityResponseTypeEnum
SecurityResponseTypeEnum type.
Definition Fields.h:813
MassCancelRejectEnum
MassCancelRejectEnumNULL type.
Definition Fields.h:726
BooleanEnum
BooleanEnum type.
Definition Fields.h:406
void checkBinaryLength(const Message &, MessageSize length, MessageSize minimalRequiredLength)
Definition SbeMessage.h:45
WaiverIndicatorEnum
WaiverIndicatorEnumNULL type.
Definition Fields.h:844
IntegralConstant< UInt8, 255 > NullUint8NULL
Null value for an optional Uint8NULL field.
Definition Fields.h:1006
MassCancelRequestTypeEnum
MassCancelRequestTypeEnum type.
Definition Fields.h:701
QuoteEntryRejectReasonEnum
QuoteEntryRejectReasonEnumNULL type.
Definition Fields.h:688
Int8 Int8NULL
int8NULL.
Definition Fields.h:68
ExchangeSiloEnum
ExchangeSiloEnum type.
Definition Fields.h:499
SideEnum
SideEnum type.
Definition Fields.h:394
IntegralConstant< Char, '\x0'> NullCharType
Null value for an optional CharType field.
Definition Fields.h:976
Int32 Int32NULL
int32NULL.
Definition Fields.h:80
ExecTypeEnum
ExecTypeEnum type.
Definition Fields.h:337
ExecRestatementReasonEnum
ExecRestatementReasonEnumNULL type.
Definition Fields.h:154
CancelReasonEnum
CancelReasonEnumNULL type.
Definition Fields.h:418
ExecInstEnum
ExecInstEnumNULL type.
Definition Fields.h:139
MessageHeader::Version SchemaVersion
SBE-encoded data version type.
IntegralConstant< UInt64, 0ULL > NullUTCTimestamp
Null value for an optional UTCTimestamp field.
Definition Fields.h:970
Int64 Decimal9
Quantity, Price with constant exponent -9.
Definition Fields.h:32
AllocHandlInstEnum
AllocHandlInstEnumNULL type.
Definition Fields.h:166
SelfMatchPreventionInstructionEnum
SelfMatchPreventionInstructionEnumNULL type.
Definition Fields.h:280
IntegralConstant< Int64, -9223372036854775807LL-1 > NullInt64NULL
Null value for an optional Int64NULL field.
Definition Fields.h:1000
ONIXS_ICEBOE_FORCEINLINE void * toOpaquePtr(Type *ptr) noexcept
Makes the pointer an opaque one.
Definition Memory.h:51
SettlMethodEnum
SettlMethodEnum type.
Definition Fields.h:609
SeverityLevelEnum
SeverityLevelEnumNULL type.
Definition Fields.h:744
IntegralConstant< Int64, -9223372036854775807LL-1 > NullDecimal9
Null value for an optional Decimal9 field.
Definition Fields.h:958
ONIXS_ICEBOE_FORCEINLINE Type * advanceByBytes(Type *pointer, ptrdiff_t distance) noexcept
Advances the pointer to a given offset (distance) in bytes.
Definition Memory.h:110
BlockTypeEnum
BlockTypeEnum type.
Definition Fields.h:483
TradingCapacityEnum
TradingCapacityEnumNULL type.
Definition Fields.h:265
CrossTypeEnum
CrossTypeEnum type.
Definition Fields.h:597
SecurityRequestTypeEnum
SecurityRequestTypeEnum type.
Definition Fields.h:773
Int16 Int16NULL
int16NULL.
Definition Fields.h:74
CustOrderHandlingInstEnum
CustOrderHandlingInstEnumNULL type.
Definition Fields.h:178
QuoteCancelTypeEnum
QuoteCancelTypeEnum type.
Definition Fields.h:760
UInt16 MessageSize
Message length type.
Definition Aliases.h:29
TimeInForceEnum
TimeInForceEnum type.
Definition Fields.h:295
PositionEffectEnum
PositionEffectEnum type.
Definition Fields.h:253
QuoteAckStatusEnum
QuoteAckStatusEnum type.
Definition Fields.h:619
SecurityTypeEnum
SecurityTypeEnum type.
Definition Fields.h:467
StrikeExerciseStyleEnum
StrikeExerciseStyleEnumNULL type.
Definition Fields.h:800
std::basic_string_view< Char > StrRef
Definition StrRef.h:46
void checkVersion(SchemaVersion version)
Checks the compatibility with the provided SBE Schema version.
SecurityTradingStatusEnum
SecurityTradingStatusEnum type.
Definition Fields.h:512
void checkSchema(SchemaId id, SchemaVersion version)
Checks the compatibility with the provided SBE Schema version.
OrderStatusEnum
OrderStatusEnumNULL type.
Definition Fields.h:370
RejectResponseToEnum
RejectResponseToEnum type.
Definition Fields.h:540
IntegralConstant< Int16, -32768 > NullInt16NULL
Null value for an optional Int16NULL field.
Definition Fields.h:988
RejectEnum
RejectEnumNULL type.
Definition Fields.h:555
QuoteRejectReasonEnum
QuoteRejectReasonEnumNULL type.
Definition Fields.h:640
Int64 Int64NULL
int64NULL.
Definition Fields.h:86
constexpr OptionalTag optional
ONIXS_ICEBOE_WRAP_F(dateToTimestampImpl) dateToTimestamp
Definition Fields.h:1032
ONIXS_ICEBOE_FORCEINLINE auto convert(typename ArgType< Callable >::type value) noexcept(noexcept(Callable::Nothrow)) -> decltype(std::declval< Callable >()(std::declval< typename ArgType< Callable >::type >()))
Definition Composites.h:35
UInt16 Uint16NULL
uint16NULL.
Definition Fields.h:98
RequestStatusEnum
RequestStatusEnum type.
Definition Fields.h:829
IntegralConstant< UInt16, 0 > NullUTCDateOnly
Null value for an optional UTCDateOnly field.
Definition Fields.h:964
ThisType & clientIdCode(Int64NULL value) noexcept
int64NULL.
Definition Messages.h:11846
static constexpr UInt64 getMaxMessageSize(UInt8) noexcept
Maximal message size.
Definition Messages.h:12147
auto maxShow() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:11483
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:12118
ThisType & onBehalfOfCompId(NullOpt) noexcept
Definition Messages.h:12067
ThisType & allocationAccount(StrRef value) noexcept
Provides access to allocationAccount field.
Definition Messages.h:12029
auto clOrdId() const noexcept
Provides access to clOrdID field.
Definition Messages.h:11447
ThisType & clearingAccount(StrRef value) noexcept
Provides access to clearingAccount field.
Definition Messages.h:11951
ThisType & directElectronicAccess(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:11690
ThisType & symbol(Int32 value) noexcept
Provides access to symbol field.
Definition Messages.h:11337
ThisType & timeInForce(TimeInForceEnum value) noexcept
Provides access to timeInForce field.
Definition Messages.h:11355
CancelReplaceRequest(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:11247
auto clearingAccount() const noexcept
Provides access to clearingAccount field.
Definition Messages.h:11942
ThisType & manualOrderIndicator(NullOpt) noexcept
Definition Messages.h:11437
ThisType & expireDate(Timestamp value) noexcept(timestampToDate::Nothrow)
UTC days since Unix epoch (January 1st, 1970).
Definition Messages.h:11612
ThisType & clOrdId(Int64 value) noexcept
Provides access to clOrdID field.
Definition Messages.h:11455
ThisType & origClOrdId(Int64 value) noexcept
Provides access to origClOrdID field.
Definition Messages.h:11473
ThisType & side(SideEnum value) noexcept
Provides access to side field.
Definition Messages.h:11373
ThisType & clearingFirm(Int32 value) noexcept
Provides access to clearingFirm field.
Definition Messages.h:11569
auto allocationAccount() const noexcept
Provides access to allocationAccount field.
Definition Messages.h:12020
ThisType & tradingCapacity(NullOpt) noexcept
Definition Messages.h:11724
SchemaTraits Schema
Used template schema.
Definition Messages.h:11223
auto origClOrdId() const noexcept
Provides access to origClOrdID field.
Definition Messages.h:11465
auto priceType() const noexcept
uint8NULL.
Definition Messages.h:11916
CancelReplaceRequest(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:11257
ThisType & onBehalfOfSubId(StrRef value) noexcept
Provides access to onBehalfOfSubID field.
Definition Messages.h:12087
ThisType & directElectronicAccess(NullOpt) noexcept
Definition Messages.h:11698
ThisType & giveUpClearingFirm(Int32NULL value) noexcept
int32NULL.
Definition Messages.h:11543
ThisType & allocationAccount(NullOpt) noexcept
Definition Messages.h:12038
ThisType & tradingCapacity(TradingCapacityEnum value) noexcept
uint8NULL.
Definition Messages.h:11716
ThisType & giveUpClearingFirm(NullOpt) noexcept
Definition Messages.h:11551
auto timeInForce() const noexcept
Provides access to timeInForce field.
Definition Messages.h:11347
CancelReplaceRequest(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:11275
CancelReplaceRequest(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:11235
ThisType & customerAccountRefId(StrRef value) noexcept
Provides access to customerAccountRefID field.
Definition Messages.h:11971
ThisType & mifidId(Int64NULL value) noexcept
int64NULL.
Definition Messages.h:11872
ThisType & price(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:11293
ThisType & ordType(OrderTypeEnum value) noexcept
Provides access to ordType field.
Definition Messages.h:11411
CancelReplaceRequest ThisType
This type alias.
Definition Messages.h:11226
ThisType & manualOrderIndicator(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:11429
ThisType & executionDecision(Int64NULL value) noexcept
int64NULL.
Definition Messages.h:11820
auto expireDate() const noexcept(dateToTimestamp::Nothrow)
UTC days since Unix epoch (January 1st, 1970).
Definition Messages.h:11605
ThisType & customerAccountRefId(NullOpt) noexcept
Definition Messages.h:11980
ThisType & maxShow(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:11491
ThisType & selfMatchPreventionInstruction(SelfMatchPreventionInstructionEnum value) noexcept
Provides access to selfMatchPreventionInstruction field.
Definition Messages.h:11638
ThisType & stopPx(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:11517
ThisType & orderQty(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:11319
auto executionDecision() const noexcept
int64NULL.
Definition Messages.h:11812
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:12137
ThisType & selfMatchPreventionId(NullOpt) noexcept
Definition Messages.h:11595
ThisType & clientIdCode(NullOpt) noexcept
Definition Messages.h:11854
CancelReplaceRequest()=default
Initializes a blank instance.
auto side() const noexcept
Provides access to side field.
Definition Messages.h:11365
ThisType & liquidityProvision(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:11742
auto mifidId() const noexcept
int64NULL.
Definition Messages.h:11864
auto onBehalfOfSubId() const noexcept
Provides access to onBehalfOfSubID field.
Definition Messages.h:12078
static constexpr StrRef className() noexcept
Definition Messages.h:12194
auto originatorUserId() const noexcept
Provides access to originatorUserID field.
Definition Messages.h:11383
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:12127
auto giveUpClearingFirm() const noexcept
int32NULL.
Definition Messages.h:11535
ThisType & originatorUserId(StrRef value) noexcept
Provides access to originatorUserID field.
Definition Messages.h:11392
ThisType & memo(StrRef value) noexcept
Provides access to memo field.
Definition Messages.h:12000
ThisType & onBehalfOfCompId(StrRef value) noexcept
Provides access to onBehalfOfCompId field.
Definition Messages.h:12058
auto allocHandlInst() const noexcept
Provides access to allocHandlInst field.
Definition Messages.h:11890
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:12202
auto memo() const noexcept
Provides access to memo field.
Definition Messages.h:11991
auto customerAccountRefId() const noexcept
Provides access to customerAccountRefID field.
Definition Messages.h:11962
auto directElectronicAccess() const noexcept
uint8NULL.
Definition Messages.h:11682
CancelReplaceRequest(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:11265
auto symbol() const noexcept
Provides access to symbol field.
Definition Messages.h:11329
ThisType & execInst(ExecInstEnum value) noexcept
Provides access to execInst field.
Definition Messages.h:11664
auto selfMatchPreventionId() const noexcept
int64NULL.
Definition Messages.h:11579
auto tradingCapacity() const noexcept
uint8NULL.
Definition Messages.h:11708
ThisType & commodityDerivIndicator(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:11768
auto orderQty() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:11311
auto clearingFirm() const noexcept
Provides access to clearingFirm field.
Definition Messages.h:11561
ThisType & investmentDecision(Int64NULL value) noexcept
int64NULL.
Definition Messages.h:11794
auto selfMatchPreventionInstruction() const noexcept
Provides access to selfMatchPreventionInstruction field.
Definition Messages.h:11630
ThisType & commodityDerivIndicator(NullOpt) noexcept
Definition Messages.h:11776
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:12161
ThisType & allocHandlInst(NullOpt) noexcept
Definition Messages.h:11906
ThisType & liquidityProvision(NullOpt) noexcept
Definition Messages.h:11750
auto onBehalfOfCompId() const noexcept
Provides access to onBehalfOfCompId field.
Definition Messages.h:12049
auto liquidityProvision() const noexcept
uint8NULL.
Definition Messages.h:11734
ThisType & onBehalfOfLocationId(StrRef value) noexcept
Provides access to onBehalfOfLocationID field.
Definition Messages.h:12107
ThisType & selfMatchPreventionInstruction(NullOpt) noexcept
Definition Messages.h:11646
ThisType & executionDecision(NullOpt) noexcept
Definition Messages.h:11828
EncodedLength calculateBinarySize() const noexcept
Definition Messages.h:12225
auto onBehalfOfLocationId() const noexcept
Provides access to onBehalfOfLocationID field.
Definition Messages.h:12098
auto ordType() const noexcept
Provides access to ordType field.
Definition Messages.h:11403
auto clientIdCode() const noexcept
int64NULL.
Definition Messages.h:11838
auto stopPx() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:11509
ThisType & priceType(PriceTypeEnum value) noexcept
uint8NULL.
Definition Messages.h:11924
ThisType & investmentDecision(NullOpt) noexcept
Definition Messages.h:11802
auto price() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:11285
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:12155
ThisType & selfMatchPreventionId(Int64NULL value) noexcept
int64NULL.
Definition Messages.h:11587
auto manualOrderIndicator() const noexcept
uint8NULL.
Definition Messages.h:11421
auto commodityDerivIndicator() const noexcept
uint8NULL.
Definition Messages.h:11760
ThisType & allocHandlInst(AllocHandlInstEnum value) noexcept
Provides access to allocHandlInst field.
Definition Messages.h:11898
auto execInst() const noexcept
Provides access to execInst field.
Definition Messages.h:11656
auto investmentDecision() const noexcept
int64NULL.
Definition Messages.h:11786
static constexpr UInt64 getMaxMessageSize(UInt8) noexcept
Maximal message size.
Definition Messages.h:12442
CancelRequest(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:12301
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:12413
const void * tail() const noexcept
Definition Messages.h:12484
CancelRequest(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:12271
auto clOrdId() const noexcept
Provides access to clOrdID field.
Definition Messages.h:12359
ThisType & symbol(Int32 value) noexcept
Provides access to symbol field.
Definition Messages.h:12329
ThisType & clOrdId(Int64 value) noexcept
Provides access to clOrdID field.
Definition Messages.h:12367
ThisType & origClOrdId(Int64 value) noexcept
Provides access to origClOrdID field.
Definition Messages.h:12385
CancelRequest(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:12311
ThisType & side(SideEnum value) noexcept
Provides access to side field.
Definition Messages.h:12403
SchemaTraits Schema
Used template schema.
Definition Messages.h:12259
auto origClOrdId() const noexcept
Provides access to origClOrdID field.
Definition Messages.h:12377
CancelRequest(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:12293
CancelRequest ThisType
This type alias.
Definition Messages.h:12262
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:12432
auto side() const noexcept
Provides access to side field.
Definition Messages.h:12395
static constexpr StrRef className() noexcept
Definition Messages.h:12465
auto originatorUserId() const noexcept
Provides access to originatorUserID field.
Definition Messages.h:12339
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:12422
ThisType & originatorUserId(StrRef value) noexcept
Provides access to originatorUserID field.
Definition Messages.h:12348
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:12473
auto symbol() const noexcept
Provides access to symbol field.
Definition Messages.h:12321
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:12456
EncodedLength calculateBinarySize() const noexcept
Definition Messages.h:12496
CancelRequest()=default
Initializes a blank instance.
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:12450
CancelRequest(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:12283
static constexpr UInt64 getMaxMessageSize(UInt8) noexcept
Maximal message size.
Definition Messages.h:1551
ThisType & refSequenceId(UInt32 value) noexcept
Provides access to refSequenceId field.
Definition Messages.h:1411
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:1522
const void * tail() const noexcept
Definition Messages.h:1597
ThisType & severityLevel(SeverityLevelEnum value) noexcept
uint8NULL.
Definition Messages.h:1429
Error()=default
Initializes a blank instance.
auto exchangeCode() const noexcept
int32NULL.
Definition Messages.h:1467
Error ThisType
This type alias.
Definition Messages.h:1344
Error(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:1375
auto supportedSchemaVersion() const noexcept
Provides access to supportedSchemaVersion field.
Definition Messages.h:1447
ThisType & severityLevel(NullOpt) noexcept
Definition Messages.h:1437
ThisType & supportedSchemaVersion(StrRef value) noexcept
Provides access to supportedSchemaVersion field.
Definition Messages.h:1456
SchemaTraits Schema
Used template schema.
Definition Messages.h:1341
auto severityLevel() const noexcept
uint8NULL.
Definition Messages.h:1421
ThisType & text(StrRef value) noexcept
Provides access to text field.
Definition Messages.h:1502
Error(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:1365
ThisType & exchangeCode(NullOpt) noexcept
Definition Messages.h:1483
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:1541
static constexpr StrRef className() noexcept
Definition Messages.h:1578
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:1531
Error(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:1383
auto text() const noexcept
Provides access to text field.
Definition Messages.h:1493
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:1586
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:1565
auto refSequenceId() const noexcept
Provides access to refSequenceId field.
Definition Messages.h:1403
ThisType & exchangeCode(Int32NULL value) noexcept
int32NULL.
Definition Messages.h:1475
Error(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:1393
Error(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:1353
ThisType & text(NullOpt) noexcept
Definition Messages.h:1511
EncodedLength calculateBinarySize() const noexcept
Definition Messages.h:1609
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:1559
static constexpr UInt64 getMaxMessageSize(UInt8) noexcept
Maximal message size.
Definition Messages.h:18756
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:18727
auto execId() const noexcept
Provides access to execID field.
Definition Messages.h:18461
ThisType & origOrderId(OriginalOrderID value) noexcept
Provides access to origOrderID field.
Definition Messages.h:18559
auto clOrdId() const noexcept
Provides access to clOrdID field.
Definition Messages.h:18479
auto exchangeCode() const noexcept
int32NULL.
Definition Messages.h:18620
ThisType & symbol(Int32 value) noexcept
Provides access to symbol field.
Definition Messages.h:18505
ExecutionReport_Cancel(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:18413
ThisType & clOrdId(Int64 value) noexcept
Provides access to clOrdID field.
Definition Messages.h:18487
ThisType & origClOrdId(Int64NULL value) noexcept
int64NULL.
Definition Messages.h:18585
ThisType & side(SideEnum value) noexcept
Provides access to side field.
Definition Messages.h:18541
ExecutionReport_Cancel(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:18391
SchemaTraits Schema
Used template schema.
Definition Messages.h:18379
ExecutionReport_Cancel ThisType
This type alias.
Definition Messages.h:18382
auto origClOrdId() const noexcept
int64NULL.
Definition Messages.h:18577
ThisType & text(StrRef value) noexcept
Provides access to text field.
Definition Messages.h:18707
ThisType & cancelReason(CancelReasonEnum value) noexcept
uint8NULL.
Definition Messages.h:18654
ExecutionReport_Cancel()=default
Initializes a blank instance.
ThisType & ordType(OrderTypeEnum value) noexcept
Provides access to ordType field.
Definition Messages.h:18523
ThisType & meAcceptanceTime(Timestamp value) noexcept(timestampToTicks::Nothrow)
Nanoseconds since Unix epoch (January 1st, 1970).
Definition Messages.h:18610
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:18746
ExecutionReport_Cancel(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:18421
ExecutionReport_Cancel(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:18403
auto side() const noexcept
Provides access to side field.
Definition Messages.h:18533
static constexpr StrRef className() noexcept
Definition Messages.h:18786
auto originatorUserId() const noexcept
Provides access to originatorUserID field.
Definition Messages.h:18441
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:18736
ThisType & originatorUserId(StrRef value) noexcept
Provides access to originatorUserID field.
Definition Messages.h:18450
auto meAcceptanceTime() const noexcept(ticksToTimestamp::Nothrow)
Nanoseconds since Unix epoch (January 1st, 1970).
Definition Messages.h:18603
auto text() const noexcept
Provides access to text field.
Definition Messages.h:18698
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:18794
auto symbol() const noexcept
Provides access to symbol field.
Definition Messages.h:18497
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:18770
ThisType & execId(ChooseValueKind< OrderExecID > value) noexcept
Provides access to execID field.
Definition Messages.h:18469
ThisType & crossId(Int64NULL value) noexcept
int64NULL.
Definition Messages.h:18680
ExecutionReport_Cancel(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:18431
ThisType & exchangeCode(Int32NULL value) noexcept
int32NULL.
Definition Messages.h:18628
EncodedLength calculateBinarySize() const noexcept
Definition Messages.h:18817
auto ordType() const noexcept
Provides access to ordType field.
Definition Messages.h:18515
auto crossId() const noexcept
int64NULL.
Definition Messages.h:18672
auto cancelReason() const noexcept
uint8NULL.
Definition Messages.h:18646
auto origOrderId() const noexcept
Provides access to origOrderID field.
Definition Messages.h:18551
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:18764
ExecutionReport_Modify()=default
Initializes a blank instance.
ThisType & orderState(OrderStateEnum value) noexcept
uint8NULL.
Definition Messages.h:18163
ThisType & orderModificationFlags(OrderFlags value) noexcept
Provides access to orderModificationFlags field.
Definition Messages.h:18215
static constexpr UInt64 getMaxMessageSize(UInt8) noexcept
Maximal message size.
Definition Messages.h:18283
ExecutionReport_Modify(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:17803
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:18254
auto execId() const noexcept
Provides access to execID field.
Definition Messages.h:17873
ThisType & origOrderId(OriginalOrderID value) noexcept
Provides access to origOrderID field.
Definition Messages.h:17971
auto clOrdId() const noexcept
Provides access to clOrdID field.
Definition Messages.h:17891
auto orderModificationFlags() const noexcept
Provides access to orderModificationFlags field.
Definition Messages.h:18207
auto leavesQty() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:18015
ThisType & symbol(Int32 value) noexcept
Provides access to symbol field.
Definition Messages.h:17917
ExecutionReport_Modify(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:17825
ThisType & clOrdId(Int64 value) noexcept
Provides access to clOrdID field.
Definition Messages.h:17899
auto orderStatus() const noexcept
uint8NULL.
Definition Messages.h:18129
ThisType & origClOrdId(Int64NULL value) noexcept
int64NULL.
Definition Messages.h:17997
ThisType & side(SideEnum value) noexcept
Provides access to side field.
Definition Messages.h:17953
auto execRestatementReason() const noexcept
uint8NULL.
Definition Messages.h:18181
SchemaTraits Schema
Used template schema.
Definition Messages.h:17791
auto origClOrdId() const noexcept
int64NULL.
Definition Messages.h:17989
ExecutionReport_Modify ThisType
This type alias.
Definition Messages.h:17794
ThisType & price(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:18059
auto timePriority() const noexcept(ticksToTimestamp::Nothrow)
Nanoseconds since Unix epoch (January 1st, 1970).
Definition Messages.h:18094
ThisType & ordType(OrderTypeEnum value) noexcept
Provides access to ordType field.
Definition Messages.h:17935
ThisType & meAcceptanceTime(Timestamp value) noexcept(timestampToTicks::Nothrow)
Nanoseconds since Unix epoch (January 1st, 1970).
Definition Messages.h:18084
ThisType & timePriority(Timestamp value) noexcept(timestampToTicks::Nothrow)
Nanoseconds since Unix epoch (January 1st, 1970).
Definition Messages.h:18101
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:18273
auto side() const noexcept
Provides access to side field.
Definition Messages.h:17945
static constexpr StrRef className() noexcept
Definition Messages.h:18314
auto originatorUserId() const noexcept
Provides access to originatorUserID field.
Definition Messages.h:17853
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:18263
ThisType & originatorUserId(StrRef value) noexcept
Provides access to originatorUserID field.
Definition Messages.h:17862
ThisType & memo(StrRef value) noexcept
Provides access to memo field.
Definition Messages.h:18234
auto meAcceptanceTime() const noexcept(ticksToTimestamp::Nothrow)
Nanoseconds since Unix epoch (January 1st, 1970).
Definition Messages.h:18077
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:18322
auto memo() const noexcept
Provides access to memo field.
Definition Messages.h:18225
ExecutionReport_Modify(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:17815
ExecutionReport_Modify(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:17843
ThisType & execRestatementReason(NullOpt) noexcept
Definition Messages.h:18197
auto execType() const noexcept
Provides access to execType field.
Definition Messages.h:18111
auto symbol() const noexcept
Provides access to symbol field.
Definition Messages.h:17909
ThisType & leavesQty(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:18023
auto orderState() const noexcept
uint8NULL.
Definition Messages.h:18155
auto cumQty() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:18033
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:18297
ThisType & execId(ChooseValueKind< OrderExecID > value) noexcept
Provides access to execID field.
Definition Messages.h:17881
EncodedLength calculateBinarySize() const noexcept
Definition Messages.h:18345
auto ordType() const noexcept
Provides access to ordType field.
Definition Messages.h:17927
ThisType & execRestatementReason(ExecRestatementReasonEnum value) noexcept
uint8NULL.
Definition Messages.h:18189
ExecutionReport_Modify(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:17833
ThisType & execType(ExecTypeEnum value) noexcept
Provides access to execType field.
Definition Messages.h:18119
auto origOrderId() const noexcept
Provides access to origOrderID field.
Definition Messages.h:17963
ThisType & orderStatus(OrderStatusEnum value) noexcept
uint8NULL.
Definition Messages.h:18137
auto price() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:18051
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:18291
ThisType & cumQty(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:18041
ExecutionReport_New()=default
Initializes a blank instance.
static constexpr UInt64 getMaxMessageSize(UInt8) noexcept
Maximal message size.
Definition Messages.h:17698
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:17669
auto execId() const noexcept
Provides access to execID field.
Definition Messages.h:17420
ThisType & origOrderId(OriginalOrderID value) noexcept
Provides access to origOrderID field.
Definition Messages.h:17518
auto clOrdId() const noexcept
Provides access to clOrdID field.
Definition Messages.h:17438
auto leavesQty() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:17536
ThisType & symbol(Int32 value) noexcept
Provides access to symbol field.
Definition Messages.h:17464
ThisType & clOrdId(Int64 value) noexcept
Provides access to clOrdID field.
Definition Messages.h:17446
ExecutionReport_New ThisType
This type alias.
Definition Messages.h:17341
auto orderStatus() const noexcept
uint8NULL.
Definition Messages.h:17614
ThisType & side(SideEnum value) noexcept
Provides access to side field.
Definition Messages.h:17500
ExecutionReport_New(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:17390
SchemaTraits Schema
Used template schema.
Definition Messages.h:17338
ExecutionReport_New(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:17372
ThisType & price(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:17562
auto timePriority() const noexcept(ticksToTimestamp::Nothrow)
Nanoseconds since Unix epoch (January 1st, 1970).
Definition Messages.h:17597
ThisType & ordType(OrderTypeEnum value) noexcept
Provides access to ordType field.
Definition Messages.h:17482
ThisType & meAcceptanceTime(Timestamp value) noexcept(timestampToTicks::Nothrow)
Nanoseconds since Unix epoch (January 1st, 1970).
Definition Messages.h:17587
ExecutionReport_New(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:17362
ThisType & origOrderId(NullOpt) noexcept
Definition Messages.h:17526
ThisType & timePriority(Timestamp value) noexcept(timestampToTicks::Nothrow)
Nanoseconds since Unix epoch (January 1st, 1970).
Definition Messages.h:17604
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:17688
auto side() const noexcept
Provides access to side field.
Definition Messages.h:17492
static constexpr StrRef className() noexcept
Definition Messages.h:17726
auto originatorUserId() const noexcept
Provides access to originatorUserID field.
Definition Messages.h:17400
ExecutionReport_New(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:17350
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:17678
ThisType & originatorUserId(StrRef value) noexcept
Provides access to originatorUserID field.
Definition Messages.h:17409
ThisType & memo(StrRef value) noexcept
Provides access to memo field.
Definition Messages.h:17649
auto meAcceptanceTime() const noexcept(ticksToTimestamp::Nothrow)
Nanoseconds since Unix epoch (January 1st, 1970).
Definition Messages.h:17580
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:17734
auto memo() const noexcept
Provides access to memo field.
Definition Messages.h:17640
auto symbol() const noexcept
Provides access to symbol field.
Definition Messages.h:17456
ThisType & leavesQty(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:17544
ExecutionReport_New(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:17380
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:17712
ThisType & execId(ChooseValueKind< OrderExecID > value) noexcept
Provides access to execID field.
Definition Messages.h:17428
ThisType & orderStatus(NullOpt) noexcept
Definition Messages.h:17630
EncodedLength calculateBinarySize() const noexcept
Definition Messages.h:17757
auto ordType() const noexcept
Provides access to ordType field.
Definition Messages.h:17474
auto origOrderId() const noexcept
Provides access to origOrderID field.
Definition Messages.h:17510
ThisType & orderStatus(OrderStatusEnum value) noexcept
uint8NULL.
Definition Messages.h:17622
auto price() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:17554
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:17706
static constexpr UInt64 getMaxMessageSize(UInt8) noexcept
Maximal message size.
Definition Messages.h:19266
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:19237
ExecutionReport_Reject(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:18903
ExecutionReport_Reject(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:18893
auto rejectResponseTo() const noexcept
Provides access to rejectResponseTo field.
Definition Messages.h:19109
auto execId() const noexcept
Provides access to execID field.
Definition Messages.h:18933
ThisType & rejectReason(RejectEnum value) noexcept
uint8NULL.
Definition Messages.h:19135
ThisType & origOrderId(OriginalOrderID value) noexcept
Provides access to origOrderID field.
Definition Messages.h:19039
auto clOrdId() const noexcept
Provides access to clOrdID field.
Definition Messages.h:18951
ExecutionReport_Reject(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:18875
auto exchangeCode() const noexcept
int32NULL.
Definition Messages.h:19153
ThisType & symbol(Int32 value) noexcept
Provides access to symbol field.
Definition Messages.h:18977
ThisType & clOrdId(Int64 value) noexcept
Provides access to clOrdID field.
Definition Messages.h:18959
auto orderStatus() const noexcept
uint8NULL.
Definition Messages.h:19083
ThisType & origClOrdId(Int64NULL value) noexcept
int64NULL.
Definition Messages.h:19065
ThisType & side(SideEnum value) noexcept
Provides access to side field.
Definition Messages.h:19021
SchemaTraits Schema
Used template schema.
Definition Messages.h:18851
ExecutionReport_Reject(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:18885
auto origClOrdId() const noexcept
int64NULL.
Definition Messages.h:19057
ThisType & text(StrRef value) noexcept
Provides access to text field.
Definition Messages.h:19217
ExecutionReport_Reject ThisType
This type alias.
Definition Messages.h:18854
ThisType & ordType(OrderTypeEnum value) noexcept
uint8NULL.
Definition Messages.h:18995
auto rejectReason() const noexcept
uint8NULL.
Definition Messages.h:19127
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:19256
auto side() const noexcept
Provides access to side field.
Definition Messages.h:19013
static constexpr StrRef className() noexcept
Definition Messages.h:19298
auto originatorUserId() const noexcept
Provides access to originatorUserID field.
Definition Messages.h:18913
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:19246
ThisType & originatorUserId(StrRef value) noexcept
Provides access to originatorUserID field.
Definition Messages.h:18922
ThisType & memo(StrRef value) noexcept
Provides access to memo field.
Definition Messages.h:19188
auto text() const noexcept
Provides access to text field.
Definition Messages.h:19208
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:19306
auto memo() const noexcept
Provides access to memo field.
Definition Messages.h:19179
ThisType & rejectResponseTo(RejectResponseToEnum value) noexcept
Provides access to rejectResponseTo field.
Definition Messages.h:19117
auto symbol() const noexcept
Provides access to symbol field.
Definition Messages.h:18969
ExecutionReport_Reject()=default
Initializes a blank instance.
ExecutionReport_Reject(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:18863
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:19280
ThisType & execId(ChooseValueKind< OrderExecID > value) noexcept
Provides access to execID field.
Definition Messages.h:18941
ThisType & exchangeCode(Int32NULL value) noexcept
int32NULL.
Definition Messages.h:19161
EncodedLength calculateBinarySize() const noexcept
Definition Messages.h:19329
auto ordType() const noexcept
uint8NULL.
Definition Messages.h:18987
auto origOrderId() const noexcept
Provides access to origOrderID field.
Definition Messages.h:19031
ThisType & orderStatus(OrderStatusEnum value) noexcept
uint8NULL.
Definition Messages.h:19091
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:19274
ThisType & orderState(OrderStateEnum value) noexcept
uint8NULL.
Definition Messages.h:19769
ThisType & clientIdCode(Int64NULL value) noexcept
int64NULL.
Definition Messages.h:20003
static constexpr UInt64 getMaxMessageSize(UInt8) noexcept
Maximal message size.
Definition Messages.h:20461
auto maxShow() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:19561
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:20432
ThisType & allocationAccount(StrRef value) noexcept
Provides access to allocationAccount field.
Definition Messages.h:20325
auto execId() const noexcept
Provides access to execID field.
Definition Messages.h:19445
ExecutionReport_Snapshot(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:19415
ThisType & origOrderId(OriginalOrderID value) noexcept
Provides access to origOrderID field.
Definition Messages.h:19543
auto clOrdId() const noexcept
Provides access to clOrdID field.
Definition Messages.h:19463
ThisType & clearingAccount(StrRef value) noexcept
Provides access to clearingAccount field.
Definition Messages.h:20238
ThisType & directElectronicAccess(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:19847
auto leavesQty() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:19587
ThisType & symbol(Int32 value) noexcept
Provides access to symbol field.
Definition Messages.h:19489
ThisType & timeInForce(TimeInForceEnum value) noexcept
Provides access to timeInForce field.
Definition Messages.h:19725
auto clearingAccount() const noexcept
Provides access to clearingAccount field.
Definition Messages.h:20229
ThisType & manualOrderIndicator(NullOpt) noexcept
Definition Messages.h:20115
ThisType & expireDate(Timestamp value) noexcept(timestampToDate::Nothrow)
UTC days since Unix epoch (January 1st, 1970).
Definition Messages.h:19682
ThisType & clOrdId(Int64 value) noexcept
Provides access to clOrdID field.
Definition Messages.h:19471
auto orderStatus() const noexcept
uint8NULL.
Definition Messages.h:19735
ThisType & side(SideEnum value) noexcept
Provides access to side field.
Definition Messages.h:19525
auto allocationAccount() const noexcept
Provides access to allocationAccount field.
Definition Messages.h:20316
SchemaTraits Schema
Used template schema.
Definition Messages.h:19363
ThisType & custOrderHandlingInst(CustOrderHandlingInstEnum value) noexcept
Provides access to custOrderHandlingInst field.
Definition Messages.h:20159
ThisType & onBehalfOfSubId(StrRef value) noexcept
Provides access to onBehalfOfSubID field.
Definition Messages.h:20383
ThisType & directElectronicAccess(NullOpt) noexcept
Definition Messages.h:19855
ThisType & giveUpClearingFirm(Int32NULL value) noexcept
int32NULL.
Definition Messages.h:19795
ThisType & tradingCapacity(TradingCapacityEnum value) noexcept
uint8NULL.
Definition Messages.h:19873
auto timeInForce() const noexcept
Provides access to timeInForce field.
Definition Messages.h:19717
ThisType & customerAccountRefId(StrRef value) noexcept
Provides access to customerAccountRefID field.
Definition Messages.h:20267
ThisType & mifidId(Int64NULL value) noexcept
int64NULL.
Definition Messages.h:20029
ThisType & price(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:19631
auto timePriority() const noexcept(ticksToTimestamp::Nothrow)
Nanoseconds since Unix epoch (January 1st, 1970).
Definition Messages.h:19700
ThisType & ordType(OrderTypeEnum value) noexcept
Provides access to ordType field.
Definition Messages.h:19507
ThisType & manualOrderIndicator(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:20107
ThisType & executionDecision(Int64NULL value) noexcept
int64NULL.
Definition Messages.h:19977
auto expireDate() const noexcept(dateToTimestamp::Nothrow)
UTC days since Unix epoch (January 1st, 1970).
Definition Messages.h:19675
ThisType & customerAccountRefId(NullOpt) noexcept
Definition Messages.h:20276
ThisType & timePriority(Timestamp value) noexcept(timestampToTicks::Nothrow)
Nanoseconds since Unix epoch (January 1st, 1970).
Definition Messages.h:19707
ThisType & maxShow(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:19569
ThisType & selfMatchPreventionInstruction(SelfMatchPreventionInstructionEnum value) noexcept
Provides access to selfMatchPreventionInstruction field.
Definition Messages.h:20081
ThisType & stopPx(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:19657
auto executionDecision() const noexcept
int64NULL.
Definition Messages.h:19969
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:20451
ThisType & selfMatchPreventionId(NullOpt) noexcept
Definition Messages.h:20063
ExecutionReport_Snapshot(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:19375
auto side() const noexcept
Provides access to side field.
Definition Messages.h:19517
ThisType & liquidityProvision(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:19899
auto onBehalfOfSubId() const noexcept
Provides access to onBehalfOfSubID field.
Definition Messages.h:20374
static constexpr StrRef className() noexcept
Definition Messages.h:20516
ThisType & positionEffect(PositionEffectEnum value) noexcept
Provides access to positionEffect field.
Definition Messages.h:20185
auto originatorUserId() const noexcept
Provides access to originatorUserID field.
Definition Messages.h:19425
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:20441
auto giveUpClearingFirm() const noexcept
int32NULL.
Definition Messages.h:19787
ExecutionReport_Snapshot(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:19387
ThisType & originatorUserId(StrRef value) noexcept
Provides access to originatorUserID field.
Definition Messages.h:19434
ExecutionReport_Snapshot(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:19405
ThisType & memo(StrRef value) noexcept
Provides access to memo field.
Definition Messages.h:20296
ThisType & onBehalfOfCompId(StrRef value) noexcept
Provides access to onBehalfOfCompId field.
Definition Messages.h:20354
auto allocHandlInst() const noexcept
Provides access to allocHandlInst field.
Definition Messages.h:20203
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:20524
auto memo() const noexcept
Provides access to memo field.
Definition Messages.h:20287
ExecutionReport_Snapshot()=default
Initializes a blank instance.
auto positionEffect() const noexcept
Provides access to positionEffect field.
Definition Messages.h:20177
auto customerAccountRefId() const noexcept
Provides access to customerAccountRefID field.
Definition Messages.h:20258
auto directElectronicAccess() const noexcept
uint8NULL.
Definition Messages.h:19839
auto symbol() const noexcept
Provides access to symbol field.
Definition Messages.h:19481
ExecutionReport_Snapshot(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:19397
ThisType & execInst(ExecInstEnum value) noexcept
Provides access to execInst field.
Definition Messages.h:20133
auto selfMatchPreventionId() const noexcept
int64NULL.
Definition Messages.h:20047
ThisType & leavesQty(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:19595
auto tradingCapacity() const noexcept
uint8NULL.
Definition Messages.h:19865
ThisType & commodityDerivIndicator(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:19925
auto clearingFirm() const noexcept
int32NULL.
Definition Messages.h:19813
ThisType & investmentDecision(Int64NULL value) noexcept
int64NULL.
Definition Messages.h:19951
ThisType & custOrderHandlingInst(NullOpt) noexcept
Definition Messages.h:20167
auto selfMatchPreventionInstruction() const noexcept
Provides access to selfMatchPreventionInstruction field.
Definition Messages.h:20073
auto cumQty() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:19605
ThisType & commodityDerivIndicator(NullOpt) noexcept
Definition Messages.h:19933
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:20475
ThisType & execId(ChooseValueKind< OrderExecID > value) noexcept
Provides access to execID field.
Definition Messages.h:19453
ThisType & clearingFirm(Int32NULL value) noexcept
int32NULL.
Definition Messages.h:19821
auto onBehalfOfCompId() const noexcept
Provides access to onBehalfOfCompId field.
Definition Messages.h:20345
auto liquidityProvision() const noexcept
uint8NULL.
Definition Messages.h:19891
ThisType & onBehalfOfLocationId(StrRef value) noexcept
Provides access to onBehalfOfLocationID field.
Definition Messages.h:20412
ThisType & selfMatchPreventionInstruction(NullOpt) noexcept
Definition Messages.h:20089
ThisType & onBehalfOfLocationId(NullOpt) noexcept
Definition Messages.h:20421
ExecutionReport_Snapshot ThisType
This type alias.
Definition Messages.h:19366
EncodedLength calculateBinarySize() const noexcept
Definition Messages.h:20547
auto onBehalfOfLocationId() const noexcept
Provides access to onBehalfOfLocationID field.
Definition Messages.h:20403
auto ordType() const noexcept
Provides access to ordType field.
Definition Messages.h:19499
auto clientIdCode() const noexcept
int64NULL.
Definition Messages.h:19995
auto stopPx() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:19649
auto custOrderHandlingInst() const noexcept
Provides access to custOrderHandlingInst field.
Definition Messages.h:20151
auto origOrderId() const noexcept
Provides access to origOrderID field.
Definition Messages.h:19535
ThisType & orderStatus(OrderStatusEnum value) noexcept
uint8NULL.
Definition Messages.h:19743
auto price() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:19623
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:20469
ThisType & cumQty(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:19613
ThisType & selfMatchPreventionId(Int64NULL value) noexcept
int64NULL.
Definition Messages.h:20055
auto manualOrderIndicator() const noexcept
uint8NULL.
Definition Messages.h:20099
auto commodityDerivIndicator() const noexcept
uint8NULL.
Definition Messages.h:19917
ThisType & allocHandlInst(AllocHandlInstEnum value) noexcept
Provides access to allocHandlInst field.
Definition Messages.h:20211
auto execInst() const noexcept
Provides access to execInst field.
Definition Messages.h:20125
auto investmentDecision() const noexcept
int64NULL.
Definition Messages.h:19943
auto deliveryEndDate() const noexcept(ticksToTimestamp::Nothrow)
Nanoseconds since Unix epoch (January 1st, 1970).
Definition Messages.h:21195
static constexpr UInt64 getMaxMessageSize(UInt8) noexcept
Maximal message size.
Definition Messages.h:21356
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:21327
auto waiverIndicator() const noexcept
uint8NULL.
Definition Messages.h:21272
ThisType & secondaryExecId(NullOpt) noexcept
Definition Messages.h:21108
ThisType & legExecutions(Int16NULL value) noexcept
int16NULL.
Definition Messages.h:21074
auto execId() const noexcept
Provides access to execID field.
Definition Messages.h:20663
auto transactTime() const noexcept(ticksToTimestamp::Nothrow)
Nanoseconds since Unix epoch (January 1st, 1970).
Definition Messages.h:20877
ThisType & linkExecId(Int64NULL value) noexcept
int64NULL.
Definition Messages.h:21126
ThisType & origOrderId(OriginalOrderID value) noexcept
Provides access to origOrderID field.
Definition Messages.h:20779
auto legExecutions() const noexcept
int16NULL.
Definition Messages.h:21066
ExecutionReport_Trade ThisType
This type alias.
Definition Messages.h:20584
auto clOrdId() const noexcept
Provides access to clOrdID field.
Definition Messages.h:20681
auto lastShares() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:20859
ThisType & clearingAccount(StrRef value) noexcept
Provides access to clearingAccount field.
Definition Messages.h:20991
ThisType & execId(Int64 value) noexcept
Provides access to execID field.
Definition Messages.h:20671
auto leavesQty() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:20797
ExecutionReport_Trade(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:20615
ThisType & symbol(Int32 value) noexcept
Provides access to symbol field.
Definition Messages.h:20707
ExecutionReport_Trade(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:20623
auto clearingAccount() const noexcept
Provides access to clearingAccount field.
Definition Messages.h:20982
ThisType & deliveryStartDate(Timestamp value) noexcept(timestampToTicks::Nothrow)
Nanoseconds since Unix epoch (January 1st, 1970).
Definition Messages.h:21177
ThisType & clOrdId(Int64 value) noexcept
Provides access to clOrdID field.
Definition Messages.h:20689
auto linkExecId() const noexcept
int64NULL.
Definition Messages.h:21118
ThisType & transactTime(Timestamp value) noexcept(timestampToTicks::Nothrow)
Nanoseconds since Unix epoch (January 1st, 1970).
Definition Messages.h:20884
ThisType & deliveryStartDate(NullOpt) noexcept
Definition Messages.h:21185
ThisType & side(SideEnum value) noexcept
Provides access to side field.
Definition Messages.h:20743
auto lastParPx() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:21144
SchemaTraits Schema
Used template schema.
Definition Messages.h:20581
ThisType & waiverIndicator(WaiverIndicatorEnum value) noexcept
uint8NULL.
Definition Messages.h:21280
auto execRefId() const noexcept
int64NULL.
Definition Messages.h:21040
ThisType & clearingAccount(NullOpt) noexcept
Definition Messages.h:21000
ExecutionReport_Trade(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:20633
ThisType & crossType(CrossTypeEnum value) noexcept
Provides access to crossType field.
Definition Messages.h:21254
ThisType & numOfLots(Int64NULL value) noexcept
int64NULL.
Definition Messages.h:20902
ThisType & execRefId(Int64NULL value) noexcept
int64NULL.
Definition Messages.h:21048
auto numOfLots() const noexcept
int64NULL.
Definition Messages.h:20894
auto lastPx() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:20833
ThisType & tradeFlags(TradeFlags value) noexcept
Provides access to tradeFlags field.
Definition Messages.h:20946
ThisType & ordType(OrderTypeEnum value) noexcept
Provides access to ordType field.
Definition Messages.h:20725
ThisType & waiverIndicator(NullOpt) noexcept
Definition Messages.h:21288
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:21346
auto side() const noexcept
Provides access to side field.
Definition Messages.h:20735
static constexpr StrRef className() noexcept
Definition Messages.h:21397
auto originatorUserId() const noexcept
Provides access to originatorUserID field.
Definition Messages.h:20643
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:21336
ThisType & originatorUserId(StrRef value) noexcept
Provides access to originatorUserID field.
Definition Messages.h:20652
ThisType & memo(StrRef value) noexcept
Provides access to memo field.
Definition Messages.h:21020
auto crossType() const noexcept
Provides access to crossType field.
Definition Messages.h:21246
ExecutionReport_Trade(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:20593
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:21405
auto memo() const noexcept
Provides access to memo field.
Definition Messages.h:21011
ThisType & lastParPx(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:21152
auto execType() const noexcept
Provides access to execType field.
Definition Messages.h:20920
auto symbol() const noexcept
Provides access to symbol field.
Definition Messages.h:20699
auto deliveryStartDate() const noexcept(ticksToTimestamp::Nothrow)
Nanoseconds since Unix epoch (January 1st, 1970).
Definition Messages.h:21170
ThisType & leavesQty(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:20805
ThisType & lastShares(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:20867
ThisType & secondaryExecId(Int64NULL value) noexcept
int64NULL.
Definition Messages.h:21100
auto clearingFirm() const noexcept
int32NULL.
Definition Messages.h:20956
auto cumQty() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:20815
ExecutionReport_Trade()=default
Initializes a blank instance.
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:21370
auto orderId() const noexcept
Provides access to orderID field.
Definition Messages.h:20753
ThisType & deliveryEndDate(NullOpt) noexcept
Definition Messages.h:21210
ThisType & crossId(Int64NULL value) noexcept
int64NULL.
Definition Messages.h:21228
ThisType & clearingFirm(Int32NULL value) noexcept
int32NULL.
Definition Messages.h:20964
ThisType & lastPx(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:20841
auto tradeType() const noexcept
Provides access to tradeType field.
Definition Messages.h:21298
ThisType & deliveryEndDate(Timestamp value) noexcept(timestampToTicks::Nothrow)
Nanoseconds since Unix epoch (January 1st, 1970).
Definition Messages.h:21202
ExecutionReport_Trade(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:20605
EncodedLength calculateBinarySize() const noexcept
Definition Messages.h:21428
auto ordType() const noexcept
Provides access to ordType field.
Definition Messages.h:20717
auto crossId() const noexcept
int64NULL.
Definition Messages.h:21220
ThisType & orderId(Int64 value) noexcept
Provides access to orderID field.
Definition Messages.h:20761
ThisType & execType(ExecTypeEnum value) noexcept
Provides access to execType field.
Definition Messages.h:20928
auto origOrderId() const noexcept
Provides access to origOrderID field.
Definition Messages.h:20771
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:21364
ThisType & tradeType(StrRef value) noexcept
Provides access to tradeType field.
Definition Messages.h:21307
auto secondaryExecId() const noexcept
int64NULL.
Definition Messages.h:21092
ThisType & cumQty(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:20823
auto tradeFlags() const noexcept
Provides access to tradeFlags field.
Definition Messages.h:20938
HeartBeat(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:1214
static constexpr UInt64 getMaxMessageSize(UInt8) noexcept
Maximal message size.
Definition Messages.h:1253
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:1224
const void * tail() const noexcept
Definition Messages.h:1295
HeartBeat()=default
Initializes a blank instance.
SchemaTraits Schema
Used template schema.
Definition Messages.h:1162
HeartBeat ThisType
This type alias.
Definition Messages.h:1165
HeartBeat(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:1186
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:1243
static constexpr StrRef className() noexcept
Definition Messages.h:1276
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:1233
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:1284
HeartBeat(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:1174
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:1267
HeartBeat(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:1204
EncodedLength calculateBinarySize() const noexcept
Definition Messages.h:1307
HeartBeat(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:1196
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:1261
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Definition Messages.h:8675
auto success() const noexcept
uint8NULL.
Definition Messages.h:8552
auto port() const noexcept
int16NULL.
Definition Messages.h:8607
auto userId() const noexcept
Provides access to userID field.
Definition Messages.h:8532
ThisType & port(Int16NULL value) noexcept
int16NULL.
Definition Messages.h:8615
SbeGroupEntry< GroupSizeEncoding::BlockLength > Base
Base class type.
Definition Messages.h:8498
auto ipSessionToken() const noexcept
ipSessionToken for the Gateway ID for assigned ipAddress and port for use in Binary Order Gateway Log...
Definition Messages.h:8634
ThisType & ipSessionToken(NullOpt) noexcept
Definition Messages.h:8653
static constexpr StrRef className() noexcept
Entity class name.
Definition Messages.h:8685
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Definition Messages.h:8665
UsersEntry(void *data, EncodedLength length, SchemaVersion version)
Initializes instance of given version over given memory block.
Definition Messages.h:8505
auto ipAddress() const noexcept
Provides access to ipAddress field.
Definition Messages.h:8578
ThisType & success(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:8560
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:8519
ThisType & ipSessionToken(StrRef value) noexcept
ipSessionToken for the Gateway ID for assigned ipAddress and port for use in Binary Order Gateway Log...
Definition Messages.h:8644
ThisType & ipAddress(StrRef value) noexcept
Provides access to ipAddress field.
Definition Messages.h:8587
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:8513
ThisType & userId(StrRef value) noexcept
Provides access to userID field.
Definition Messages.h:8541
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:8840
const void * tail() const noexcept
Definition Messages.h:8916
IPReport()=default
Initializes a blank instance.
auto exchangeCode() const noexcept
int32NULL.
Definition Messages.h:8750
IPReport(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:8722
Users users(Users::Size length)
Setup repeating group with the given number of entries.
Definition Messages.h:8820
SchemaTraits Schema
Used template schema.
Definition Messages.h:8476
ThisType & text(StrRef value) noexcept
Provides access to text field.
Definition Messages.h:8785
Users users() const noexcept
Definition Messages.h:8805
ThisType & exchangeCode(NullOpt) noexcept
Definition Messages.h:8766
IPReport ThisType
This type alias.
Definition Messages.h:8479
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:8859
static constexpr StrRef className() noexcept
Definition Messages.h:8897
IPReport(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:8730
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:8849
static constexpr UInt64 getMaxMessageSize(UInt8 maxGroupItems=255) noexcept
Maximal message size.
Definition Messages.h:8869
auto text() const noexcept
Provides access to text field.
Definition Messages.h:8776
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:8905
IPReport(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:8700
Users users(Users::Size length, NoFieldsInit)
Setup repeating group with the given number of entries.
Definition Messages.h:8830
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:8885
ThisType & exchangeCode(Int32NULL value) noexcept
int32NULL.
Definition Messages.h:8758
IPReport(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:8712
ThisType & text(NullOpt) noexcept
Definition Messages.h:8794
EncodedLength calculateBinarySize() const noexcept
Definition Messages.h:8924
SbeGroup< UsersEntry, GroupSizeEncoding, MessageSize > Users
Repeating group containing UsersEntry entries.
Definition Messages.h:8694
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:8878
IPReport(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:8740
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Definition Messages.h:8207
auto userId() const noexcept
Provides access to userID field.
Definition Messages.h:8176
SbeGroupEntry< GroupSizeEncoding::BlockLength > Base
Base class type.
Definition Messages.h:8147
static constexpr StrRef className() noexcept
Entity class name.
Definition Messages.h:8217
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Definition Messages.h:8197
UsersEntry(void *data, EncodedLength length, SchemaVersion version)
Initializes instance of given version over given memory block.
Definition Messages.h:8154
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:8168
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:8162
ThisType & userId(StrRef value) noexcept
Provides access to userID field.
Definition Messages.h:8185
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:8335
const void * tail() const noexcept
Definition Messages.h:8408
IPRequest()=default
Initializes a blank instance.
Users users(Users::Size length)
Setup repeating group with the given number of entries.
Definition Messages.h:8315
SchemaTraits Schema
Used template schema.
Definition Messages.h:8125
IPRequest(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:8254
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:8354
static constexpr StrRef className() noexcept
Definition Messages.h:8389
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:8344
static constexpr UInt64 getMaxMessageSize(UInt8 maxGroupItems=255) noexcept
Maximal message size.
Definition Messages.h:8364
IPRequest(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:8262
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:8397
IPRequest(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:8272
IPRequest(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:8244
auto clientId() const noexcept
Company ID of Gateway ID.
Definition Messages.h:8282
Users users(Users::Size length, NoFieldsInit)
Setup repeating group with the given number of entries.
Definition Messages.h:8325
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:8380
EncodedLength calculateBinarySize() const noexcept
Definition Messages.h:8416
IPRequest ThisType
This type alias.
Definition Messages.h:8128
IPRequest(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:8232
SbeGroup< UsersEntry, GroupSizeEncoding, MessageSize > Users
Repeating group containing UsersEntry entries.
Definition Messages.h:8226
ThisType & clientId(Int32 value) noexcept
Company ID of Gateway ID.
Definition Messages.h:8290
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:8373
static constexpr UInt64 getMaxMessageSize(UInt8) noexcept
Maximal message size.
Definition Messages.h:613
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:584
const void * tail() const noexcept
Definition Messages.h:660
LogonReport(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:429
LogonReport(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:437
ThisType & severityLevel(SeverityLevelEnum value) noexcept
uint8NULL.
Definition Messages.h:511
auto exchangeCode() const noexcept
int32NULL.
Definition Messages.h:529
ThisType & severityLevel(NullOpt) noexcept
Definition Messages.h:519
ThisType & heartBeatInterval(NullOpt) noexcept
Definition Messages.h:493
SchemaTraits Schema
Used template schema.
Definition Messages.h:395
LogonReport()=default
Initializes a blank instance.
auto severityLevel() const noexcept
uint8NULL.
Definition Messages.h:503
ThisType & text(StrRef value) noexcept
Warning text if using a deprecated schema version.
Definition Messages.h:564
auto userId() const noexcept
Provides access to userID field.
Definition Messages.h:457
LogonReport(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:447
ThisType & exchangeCode(NullOpt) noexcept
Definition Messages.h:545
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:603
static constexpr StrRef className() noexcept
Definition Messages.h:641
LogonReport ThisType
This type alias.
Definition Messages.h:398
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:593
ThisType & heartBeatInterval(Uint16NULL value) noexcept
uint16NULL.
Definition Messages.h:485
auto text() const noexcept
Warning text if using a deprecated schema version.
Definition Messages.h:555
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:649
LogonReport(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:407
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:627
auto heartBeatInterval() const noexcept
uint16NULL.
Definition Messages.h:477
ThisType & exchangeCode(Int32NULL value) noexcept
int32NULL.
Definition Messages.h:537
LogonReport(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:419
ThisType & text(NullOpt) noexcept
Definition Messages.h:573
EncodedLength calculateBinarySize() const noexcept
Definition Messages.h:672
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:621
ThisType & userId(StrRef value) noexcept
Provides access to userID field.
Definition Messages.h:466
static constexpr UInt64 getMaxMessageSize(UInt8) noexcept
Maximal message size.
Definition Messages.h:304
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:275
const void * tail() const noexcept
Definition Messages.h:349
auto applicationVendor() const noexcept
Vendor of client application.
Definition Messages.h:204
ThisType & applicationName(StrRef value) noexcept
Name of client application.
Definition Messages.h:173
ThisType & heartBeatInterval(NullOpt) noexcept
Definition Messages.h:154
SchemaTraits Schema
Used template schema.
Definition Messages.h:38
auto userId() const noexcept
Gateway ID.
Definition Messages.h:100
LogonRequest(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:50
auto ipSessionToken() const noexcept
ipSessionToken from Binary Utility Service Gateway (BUS).
Definition Messages.h:245
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:294
ThisType & ipSessionToken(NullOpt) noexcept
Definition Messages.h:264
ThisType & applicationVersion(StrRef value) noexcept
Version of client application.
Definition Messages.h:193
ThisType & rawData(StrRef value) noexcept
Password of Gateway ID.
Definition Messages.h:233
static constexpr StrRef className() noexcept
Definition Messages.h:330
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:284
LogonRequest(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:80
ThisType & heartBeatInterval(Uint16NULL value) noexcept
Default of 30 seconds.
Definition Messages.h:146
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:338
LogonRequest(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:90
LogonRequest(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:72
LogonRequest()=default
Initializes a blank instance.
ThisType & applicationVendor(StrRef value) noexcept
Vendor of client application.
Definition Messages.h:213
auto clientId() const noexcept
Company ID of Gateway ID.
Definition Messages.h:120
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:318
auto applicationVersion() const noexcept
Version of client application.
Definition Messages.h:184
LogonRequest ThisType
This type alias.
Definition Messages.h:41
auto heartBeatInterval() const noexcept
Default of 30 seconds.
Definition Messages.h:138
LogonRequest(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:62
ThisType & ipSessionToken(StrRef value) noexcept
ipSessionToken from Binary Utility Service Gateway (BUS).
Definition Messages.h:255
auto applicationName() const noexcept
Name of client application.
Definition Messages.h:164
auto rawData() const noexcept
Password of Gateway ID.
Definition Messages.h:224
EncodedLength calculateBinarySize() const noexcept
Definition Messages.h:361
ThisType & clientId(Int32 value) noexcept
Company ID of Gateway ID.
Definition Messages.h:128
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:312
ThisType & userId(StrRef value) noexcept
Gateway ID.
Definition Messages.h:109
static constexpr UInt64 getMaxMessageSize(UInt8) noexcept
Maximal message size.
Definition Messages.h:1071
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:1042
const void * tail() const noexcept
Definition Messages.h:1116
LogoutReport(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:917
auto exchangeCode() const noexcept
int32NULL.
Definition Messages.h:987
LogoutReport(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:947
SchemaTraits Schema
Used template schema.
Definition Messages.h:905
ThisType & text(StrRef value) noexcept
Provides access to text field.
Definition Messages.h:1022
auto userId() const noexcept
Gateway ID.
Definition Messages.h:967
LogoutReport(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:929
ThisType & exchangeCode(NullOpt) noexcept
Definition Messages.h:1003
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:1061
LogoutReport ThisType
This type alias.
Definition Messages.h:908
static constexpr StrRef className() noexcept
Definition Messages.h:1097
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:1051
auto text() const noexcept
Provides access to text field.
Definition Messages.h:1013
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:1105
LogoutReport(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:939
LogoutReport()=default
Initializes a blank instance.
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:1085
LogoutReport(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:957
ThisType & exchangeCode(Int32NULL value) noexcept
int32NULL.
Definition Messages.h:995
ThisType & text(NullOpt) noexcept
Definition Messages.h:1031
EncodedLength calculateBinarySize() const noexcept
Definition Messages.h:1128
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:1079
ThisType & userId(StrRef value) noexcept
Gateway ID.
Definition Messages.h:976
static constexpr UInt64 getMaxMessageSize(UInt8) noexcept
Maximal message size.
Definition Messages.h:817
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:788
const void * tail() const noexcept
Definition Messages.h:859
LogoutRequest(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:730
LogoutRequest(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:758
LogoutRequest(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:740
SchemaTraits Schema
Used template schema.
Definition Messages.h:706
auto userId() const noexcept
Gateway ID.
Definition Messages.h:768
LogoutRequest ThisType
This type alias.
Definition Messages.h:709
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:807
static constexpr StrRef className() noexcept
Definition Messages.h:840
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:797
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:848
LogoutRequest()=default
Initializes a blank instance.
LogoutRequest(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:718
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:831
EncodedLength calculateBinarySize() const noexcept
Definition Messages.h:871
LogoutRequest(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:748
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:825
ThisType & userId(StrRef value) noexcept
Gateway ID.
Definition Messages.h:777
ThisType & quoteEntryId(Int32 value) noexcept
Provides access to quoteEntryID field.
Definition Messages.h:22668
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Definition Messages.h:22788
auto underlyingSymbol() const noexcept
Provides access to underlyingSymbol field.
Definition Messages.h:22642
ThisType & symbol(Int32 value) noexcept
Provides access to symbol field.
Definition Messages.h:22686
ThisType & quoteEntryRejectReason(QuoteEntryRejectReasonEnum value) noexcept
uint8NULL.
Definition Messages.h:22704
SbeGroupEntry< GroupSizeEncoding::BlockLength > Base
Base class type.
Definition Messages.h:22591
ThisType & quoteEntryExchangeCode(Int32NULL value) noexcept
int32NULL.
Definition Messages.h:22730
ThisType & quoteSetId(Int32 value) noexcept
Provides access to quoteSetID field.
Definition Messages.h:22632
QuoteSetsEntry(void *data, EncodedLength length, SchemaVersion version)
Initializes instance of given version over given memory block.
Definition Messages.h:22598
auto quoteSetId() const noexcept
Provides access to quoteSetID field.
Definition Messages.h:22624
static constexpr StrRef className() noexcept
Entity class name.
Definition Messages.h:22798
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Definition Messages.h:22778
auto symbol() const noexcept
Provides access to symbol field.
Definition Messages.h:22678
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:22612
ThisType & underlyingSymbol(Int32 value) noexcept
Provides access to underlyingSymbol field.
Definition Messages.h:22650
auto quoteEntryRejectReasonText() const noexcept
Provides access to quoteEntryRejectReasonText field.
Definition Messages.h:22748
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:22606
ThisType & quoteEntryRejectReasonText(StrRef value) noexcept
Provides access to quoteEntryRejectReasonText field.
Definition Messages.h:22757
auto quoteEntryId() const noexcept
Provides access to quoteEntryID field.
Definition Messages.h:22660
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:23111
const void * tail() const noexcept
Definition Messages.h:23191
auto transactTime() const noexcept(ticksToTimestamp::Nothrow)
Nanoseconds since Unix epoch (January 1st, 1970).
Definition Messages.h:22971
QuoteSets quoteSets() const noexcept
Definition Messages.h:23076
MassQuoteReport(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:22853
MassQuoteReport(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:22835
ThisType & riskProtectionReset(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:22909
auto quoteRejectReason() const noexcept
uint8NULL.
Definition Messages.h:22945
auto exchangeCode() const noexcept
int32NULL.
Definition Messages.h:23021
QuoteSets quoteSets(QuoteSets::Size length)
Setup repeating group with the given number of entries.
Definition Messages.h:23091
ThisType & transactTime(Timestamp value) noexcept(timestampToTicks::Nothrow)
Nanoseconds since Unix epoch (January 1st, 1970).
Definition Messages.h:22978
MassQuoteReport()=default
Initializes a blank instance.
SchemaTraits Schema
Used template schema.
Definition Messages.h:22569
MassQuoteReport(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:22843
ThisType & text(StrRef value) noexcept
Provides access to text field.
Definition Messages.h:23056
ThisType & exchangeCode(NullOpt) noexcept
Definition Messages.h:23037
ThisType & meAcceptanceTime(Timestamp value) noexcept(timestampToTicks::Nothrow)
Nanoseconds since Unix epoch (January 1st, 1970).
Definition Messages.h:23003
ThisType & transactTime(NullOpt) noexcept
Definition Messages.h:22986
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:23130
ThisType & quoteAckStatus(QuoteAckStatusEnum value) noexcept
Provides access to quoteAckStatus field.
Definition Messages.h:22935
SbeGroup< QuoteSetsEntry, GroupSizeEncoding, MessageSize > QuoteSets
Repeating group containing QuoteSetsEntry entries.
Definition Messages.h:22807
static constexpr StrRef className() noexcept
Definition Messages.h:23172
auto originatorUserId() const noexcept
Provides access to originatorUserID field.
Definition Messages.h:22881
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:23120
MassQuoteReport(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:22825
static constexpr UInt64 getMaxMessageSize(UInt8 maxGroupItems=255) noexcept
Maximal message size.
Definition Messages.h:23140
ThisType & originatorUserId(StrRef value) noexcept
Provides access to originatorUserID field.
Definition Messages.h:22890
auto meAcceptanceTime() const noexcept(ticksToTimestamp::Nothrow)
Nanoseconds since Unix epoch (January 1st, 1970).
Definition Messages.h:22996
QuoteSets quoteSets(QuoteSets::Size length, NoFieldsInit)
Setup repeating group with the given number of entries.
Definition Messages.h:23101
auto text() const noexcept
Provides access to text field.
Definition Messages.h:23047
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:23180
ThisType & quoteRejectReason(NullOpt) noexcept
Definition Messages.h:22961
ThisType & quoteRejectReason(QuoteRejectReasonEnum value) noexcept
uint8NULL.
Definition Messages.h:22953
MassQuoteReport ThisType
This type alias.
Definition Messages.h:22572
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:23156
auto quoteAckStatus() const noexcept
Provides access to quoteAckStatus field.
Definition Messages.h:22927
ThisType & exchangeCode(Int32NULL value) noexcept
int32NULL.
Definition Messages.h:23029
ThisType & meAcceptanceTime(NullOpt) noexcept
Definition Messages.h:23011
ThisType & quoteId(Int64 value) noexcept
Provides access to quoteID field.
Definition Messages.h:22871
ThisType & text(NullOpt) noexcept
Definition Messages.h:23065
EncodedLength calculateBinarySize() const noexcept
Definition Messages.h:23199
ThisType & riskProtectionReset(NullOpt) noexcept
Definition Messages.h:22917
MassQuoteReport(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:22813
auto riskProtectionReset() const noexcept
uint8NULL.
Definition Messages.h:22901
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:23149
auto quoteId() const noexcept
Provides access to quoteID field.
Definition Messages.h:22863
ThisType & quoteEntryId(Int32 value) noexcept
Provides access to quoteEntryID field.
Definition Messages.h:15157
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Definition Messages.h:15268
auto underlyingSymbol() const noexcept
Provides access to underlyingSymbol field.
Definition Messages.h:15131
ThisType & bidPx(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:15193
ThisType & symbol(Int32 value) noexcept
Provides access to symbol field.
Definition Messages.h:15175
SbeGroupEntry< GroupSizeEncoding::BlockLength > Base
Base class type.
Definition Messages.h:15084
auto offerPx() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:15203
ThisType & quoteSetId(Int32 value) noexcept
Provides access to quoteSetID field.
Definition Messages.h:15121
QuoteSetsEntry(void *data, EncodedLength length, SchemaVersion version)
Initializes instance of given version over given memory block.
Definition Messages.h:15091
auto quoteSetId() const noexcept
Provides access to quoteSetID field.
Definition Messages.h:15113
static constexpr StrRef className() noexcept
Entity class name.
Definition Messages.h:15278
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Definition Messages.h:15258
auto bidPx() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:15185
auto symbol() const noexcept
Provides access to symbol field.
Definition Messages.h:15167
auto offerSz() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:15239
ThisType & offerSz(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:15247
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:15105
auto bidSz() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:15221
ThisType & bidSz(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:15229
ThisType & offerPx(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:15211
ThisType & underlyingSymbol(Int32 value) noexcept
Provides access to underlyingSymbol field.
Definition Messages.h:15139
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:15099
auto quoteEntryId() const noexcept
Provides access to quoteEntryID field.
Definition Messages.h:15149
ThisType & clientIdCode(Int64NULL value) noexcept
int64NULL.
Definition Messages.h:15623
ThisType & mifidId(NullOpt) noexcept
Definition Messages.h:15657
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:15702
const void * tail() const noexcept
Definition Messages.h:15787
MassQuoteRequest ThisType
This type alias.
Definition Messages.h:15065
MassQuoteRequest(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:15305
ThisType & riskProtectionReset(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:15369
ThisType & directElectronicAccess(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:15467
QuoteSets quoteSets(QuoteSets::Size length)
Setup repeating group with the given number of entries.
Definition Messages.h:15682
ThisType & tradingCapacity(NullOpt) noexcept
Definition Messages.h:15501
SchemaTraits Schema
Used template schema.
Definition Messages.h:15062
MassQuoteRequest(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:15323
ThisType & directElectronicAccess(NullOpt) noexcept
Definition Messages.h:15475
MassQuoteRequest(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:15333
ThisType & tradingCapacity(TradingCapacityEnum value) noexcept
uint8NULL.
Definition Messages.h:15493
MassQuoteRequest()=default
Initializes a blank instance.
ThisType & mifidId(Int64NULL value) noexcept
int64NULL.
Definition Messages.h:15649
MassQuoteRequest(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:15293
ThisType & executionDecision(Int64NULL value) noexcept
int64NULL.
Definition Messages.h:15597
ThisType & selfMatchPreventionInstruction(SelfMatchPreventionInstructionEnum value) noexcept
Provides access to selfMatchPreventionInstruction field.
Definition Messages.h:15421
auto executionDecision() const noexcept
int64NULL.
Definition Messages.h:15589
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:15721
ThisType & selfMatchPreventionId(NullOpt) noexcept
Definition Messages.h:15403
ThisType & clientIdCode(NullOpt) noexcept
Definition Messages.h:15631
ThisType & liquidityProvision(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:15519
auto mifidId() const noexcept
int64NULL.
Definition Messages.h:15641
SbeGroup< QuoteSetsEntry, GroupSizeEncoding, MessageSize > QuoteSets
Repeating group containing QuoteSetsEntry entries.
Definition Messages.h:15287
static constexpr StrRef className() noexcept
Definition Messages.h:15768
auto originatorUserId() const noexcept
Provides access to originatorUserID field.
Definition Messages.h:15439
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:15711
static constexpr UInt64 getMaxMessageSize(UInt8 maxGroupItems=255) noexcept
Maximal message size.
Definition Messages.h:15731
ThisType & originatorUserId(StrRef value) noexcept
Provides access to originatorUserID field.
Definition Messages.h:15448
MassQuoteRequest(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:15315
QuoteSets quoteSets(QuoteSets::Size length, NoFieldsInit)
Setup repeating group with the given number of entries.
Definition Messages.h:15692
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:15776
auto directElectronicAccess() const noexcept
uint8NULL.
Definition Messages.h:15459
auto selfMatchPreventionId() const noexcept
int64NULL.
Definition Messages.h:15387
auto tradingCapacity() const noexcept
uint8NULL.
Definition Messages.h:15485
ThisType & commodityDerivIndicator(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:15545
ThisType & investmentDecision(Int64NULL value) noexcept
int64NULL.
Definition Messages.h:15571
auto selfMatchPreventionInstruction() const noexcept
Provides access to selfMatchPreventionInstruction field.
Definition Messages.h:15413
ThisType & commodityDerivIndicator(NullOpt) noexcept
Definition Messages.h:15553
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:15747
ThisType & liquidityProvision(NullOpt) noexcept
Definition Messages.h:15527
auto liquidityProvision() const noexcept
uint8NULL.
Definition Messages.h:15511
ThisType & selfMatchPreventionInstruction(NullOpt) noexcept
Definition Messages.h:15429
ThisType & quoteId(Int64 value) noexcept
Provides access to quoteID field.
Definition Messages.h:15351
ThisType & executionDecision(NullOpt) noexcept
Definition Messages.h:15605
EncodedLength calculateBinarySize() const noexcept
Definition Messages.h:15795
auto clientIdCode() const noexcept
int64NULL.
Definition Messages.h:15615
ThisType & riskProtectionReset(NullOpt) noexcept
Definition Messages.h:15377
auto riskProtectionReset() const noexcept
uint8NULL.
Definition Messages.h:15361
ThisType & investmentDecision(NullOpt) noexcept
Definition Messages.h:15579
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:15740
ThisType & selfMatchPreventionId(Int64NULL value) noexcept
int64NULL.
Definition Messages.h:15395
auto commodityDerivIndicator() const noexcept
uint8NULL.
Definition Messages.h:15537
auto quoteId() const noexcept
Provides access to quoteID field.
Definition Messages.h:15343
auto investmentDecision() const noexcept
int64NULL.
Definition Messages.h:15563
static constexpr UInt64 getMaxMessageSize(UInt8) noexcept
Maximal message size.
Definition Messages.h:22069
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:22040
NewOrderCrossReport()=default
Initializes a blank instance.
auto transactTime() const noexcept(ticksToTimestamp::Nothrow)
Nanoseconds since Unix epoch (January 1st, 1970).
Definition Messages.h:21950
auto exchangeCode() const noexcept
int32NULL.
Definition Messages.h:21985
ThisType & symbol(Int32 value) noexcept
Provides access to symbol field.
Definition Messages.h:21922
ThisType & transactTime(Timestamp value) noexcept(timestampToTicks::Nothrow)
Nanoseconds since Unix epoch (January 1st, 1970).
Definition Messages.h:21957
SchemaTraits Schema
Used template schema.
Definition Messages.h:21832
ThisType & text(StrRef value) noexcept
Provides access to text field.
Definition Messages.h:22020
NewOrderCrossReport(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:21844
NewOrderCrossReport(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:21874
ThisType & crossId(Int64 value) noexcept
Provides access to crossID field.
Definition Messages.h:21940
NewOrderCrossReport ThisType
This type alias.
Definition Messages.h:21835
NewOrderCrossReport(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:21866
ThisType & exchangeCode(NullOpt) noexcept
Definition Messages.h:22001
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:22059
static constexpr StrRef className() noexcept
Definition Messages.h:22095
auto originatorUserId() const noexcept
Provides access to originatorUserID field.
Definition Messages.h:21894
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:22049
ThisType & originatorUserId(StrRef value) noexcept
Provides access to originatorUserID field.
Definition Messages.h:21903
ThisType & rfcStatus(RFCStatusEnum value) noexcept
Provides access to rfcStatus field.
Definition Messages.h:21975
auto text() const noexcept
Provides access to text field.
Definition Messages.h:22011
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:22103
auto symbol() const noexcept
Provides access to symbol field.
Definition Messages.h:21914
NewOrderCrossReport(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:21856
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:22083
ThisType & exchangeCode(Int32NULL value) noexcept
int32NULL.
Definition Messages.h:21993
NewOrderCrossReport(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:21884
EncodedLength calculateBinarySize() const noexcept
Definition Messages.h:22126
auto crossId() const noexcept
Provides access to crossID field.
Definition Messages.h:21932
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:22077
auto rfcStatus() const noexcept
Provides access to rfcStatus field.
Definition Messages.h:21967
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Definition Messages.h:13940
ThisType & legSecurityIdSource(Int8NULL value) noexcept
int8NULL.
Definition Messages.h:13757
ThisType & legOptAttribute(Int32NULL value) noexcept
int32NULL.
Definition Messages.h:13783
ThisType & legQty(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:13809
ThisType & legSecurityType(SecurityTypeEnum value) noexcept
Provides access to legSecurityType field.
Definition Messages.h:13861
ThisType & legMemoField(StrRef value) noexcept
Provides access to legMemoField field.
Definition Messages.h:13880
auto legPrice() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:13827
ThisType & legPrice(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:13835
auto legSecurityType() const noexcept
Provides access to legSecurityType field.
Definition Messages.h:13853
ThisType & legSymbol(Int32NULL value) noexcept
int32NULL.
Definition Messages.h:13731
SbeGroupEntry< GroupSizeEncoding::BlockLength > Base
Base class type.
Definition Messages.h:13686
static constexpr StrRef className() noexcept
Entity class name.
Definition Messages.h:13950
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Definition Messages.h:13930
LegsEntry(void *data, EncodedLength length, SchemaVersion version)
Initializes instance of given version over given memory block.
Definition Messages.h:13693
auto legQty() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:13801
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:13707
auto legSecurityId() const noexcept
Provides access to legSecurityID field.
Definition Messages.h:13900
ThisType & legSecurityId(StrRef value) noexcept
Provides access to legSecurityID field.
Definition Messages.h:13909
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:13701
auto legMemoField() const noexcept
Provides access to legMemoField field.
Definition Messages.h:13871
ThisType & clientIdCode(Int64NULL value) noexcept
int64NULL.
Definition Messages.h:13264
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Definition Messages.h:13651
ThisType & allocationAccount(StrRef value) noexcept
Provides access to allocationAccount field.
Definition Messages.h:13551
auto clOrdId() const noexcept
Unique identifier of the order as assigned by the market participant.
Definition Messages.h:13037
ThisType & clearingAccount(StrRef value) noexcept
Provides access to clearingAccount field.
Definition Messages.h:13473
ThisType & directElectronicAccess(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:13108
auto clearingAccount() const noexcept
Provides access to clearingAccount field.
Definition Messages.h:13464
ThisType & clOrdId(Int64 value) noexcept
Unique identifier of the order as assigned by the market participant.
Definition Messages.h:13046
ThisType & side(SideEnum value) noexcept
Provides access to side field.
Definition Messages.h:13026
ThisType & clearingFirm(Int32 value) noexcept
Provides access to clearingFirm field.
Definition Messages.h:13090
auto allocationAccount() const noexcept
Provides access to allocationAccount field.
Definition Messages.h:13542
ThisType & custOrderHandlingInst(CustOrderHandlingInstEnum value) noexcept
Provides access to custOrderHandlingInst field.
Definition Messages.h:13394
ThisType & onBehalfOfSubId(StrRef value) noexcept
Provides access to onBehalfOfSubID field.
Definition Messages.h:13609
ThisType & giveUpClearingFirm(Int32NULL value) noexcept
int32NULL.
Definition Messages.h:13064
ThisType & tradingCapacity(TradingCapacityEnum value) noexcept
uint8NULL.
Definition Messages.h:13134
ThisType & customerAccountRefId(StrRef value) noexcept
Provides access to customerAccountRefID field.
Definition Messages.h:13493
ThisType & mifidId(Int64NULL value) noexcept
int64NULL.
Definition Messages.h:13290
SbeGroupEntry< GroupSizeEncoding::BlockLength > Base
Base class type.
Definition Messages.h:12969
ThisType & manualOrderIndicator(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:13368
ThisType & executionDecision(Int64NULL value) noexcept
int64NULL.
Definition Messages.h:13238
ThisType & selfMatchPreventionInstruction(SelfMatchPreventionInstructionEnum value) noexcept
Provides access to selfMatchPreventionInstruction field.
Definition Messages.h:13342
auto side() const noexcept
Provides access to side field.
Definition Messages.h:13018
ThisType & liquidityProvision(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:13160
auto onBehalfOfSubId() const noexcept
Provides access to onBehalfOfSubID field.
Definition Messages.h:13600
static constexpr StrRef className() noexcept
Entity class name.
Definition Messages.h:13661
ThisType & positionEffect(PositionEffectEnum value) noexcept
Provides access to positionEffect field.
Definition Messages.h:13420
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Definition Messages.h:13641
SidesEntry(void *data, EncodedLength length, SchemaVersion version)
Initializes instance of given version over given memory block.
Definition Messages.h:12976
ThisType & memo(StrRef value) noexcept
Provides access to memo field.
Definition Messages.h:13522
ThisType & onBehalfOfCompId(StrRef value) noexcept
Provides access to onBehalfOfCompId field.
Definition Messages.h:13580
auto allocHandlInst() const noexcept
Provides access to allocHandlInst field.
Definition Messages.h:13438
auto memo() const noexcept
Provides access to memo field.
Definition Messages.h:13513
auto positionEffect() const noexcept
Provides access to positionEffect field.
Definition Messages.h:13412
auto customerAccountRefId() const noexcept
Provides access to customerAccountRefID field.
Definition Messages.h:13484
ThisType & commodityDerivIndicator(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:13186
auto clearingFirm() const noexcept
Provides access to clearingFirm field.
Definition Messages.h:13082
ThisType & investmentDecision(Int64NULL value) noexcept
int64NULL.
Definition Messages.h:13212
auto selfMatchPreventionInstruction() const noexcept
Provides access to selfMatchPreventionInstruction field.
Definition Messages.h:13334
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:12990
auto onBehalfOfCompId() const noexcept
Provides access to onBehalfOfCompId field.
Definition Messages.h:13571
ThisType & onBehalfOfLocationId(StrRef value) noexcept
Provides access to onBehalfOfLocationID field.
Definition Messages.h:13629
auto onBehalfOfLocationId() const noexcept
Provides access to onBehalfOfLocationID field.
Definition Messages.h:13620
auto custOrderHandlingInst() const noexcept
Provides access to custOrderHandlingInst field.
Definition Messages.h:13386
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:12984
ThisType & selfMatchPreventionId(Int64NULL value) noexcept
int64NULL.
Definition Messages.h:13316
ThisType & allocHandlInst(AllocHandlInstEnum value) noexcept
Provides access to allocHandlInst field.
Definition Messages.h:13446
ThisType & benchmarkPrice(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:14284
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:14462
auto transactTime() const noexcept(ticksToTimestamp::Nothrow)
Nanoseconds since Unix epoch (January 1st, 1970).
Definition Messages.h:14375
NewOrderCrossRequest(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:14005
Sides sides(Sides::Size length, NoFieldsInit)
Setup repeating group with the given number of entries.
Definition Messages.h:14417
SbeGroup< LegsEntry, GroupSizeEncoding, MessageSize > Legs
Repeating group containing LegsEntry entries.
Definition Messages.h:13959
NewOrderCrossRequest(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:13965
ThisType & symbol(Int32 value) noexcept
Provides access to symbol field.
Definition Messages.h:14059
ThisType & timeInForce(TimeInForceEnum value) noexcept
Provides access to timeInForce field.
Definition Messages.h:14336
Legs legs(Legs::Size length)
Setup repeating group with the given number of entries.
Definition Messages.h:14442
ThisType & transactTime(Timestamp value) noexcept(timestampToTicks::Nothrow)
Nanoseconds since Unix epoch (January 1st, 1970).
Definition Messages.h:14382
Legs legs(Legs::Size length, NoFieldsInit)
Setup repeating group with the given number of entries.
Definition Messages.h:14452
SchemaTraits Schema
Used template schema.
Definition Messages.h:12947
ThisType & transactDetails(NullOpt) noexcept
Definition Messages.h:14364
auto priceType() const noexcept
uint8NULL.
Definition Messages.h:14198
auto benchmarkPrice() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:14276
ThisType & crossId(Int64 value) noexcept
Provides access to crossID field.
Definition Messages.h:14115
ThisType & crossType(CrossTypeEnum value) noexcept
Provides access to crossType field.
Definition Messages.h:14133
auto timeInForce() const noexcept
Provides access to timeInForce field.
Definition Messages.h:14328
auto bypassMQR() const noexcept
uint8NULL.
Definition Messages.h:14224
NewOrderCrossRequest ThisType
This type alias.
Definition Messages.h:12950
ThisType & bypassMQR(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:14232
ThisType & price(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:14023
ThisType & ordType(OrderTypeEnum value) noexcept
Provides access to ordType field.
Definition Messages.h:14097
ThisType & benchmarkPrice(NullOpt) noexcept
Definition Messages.h:14292
ThisType & orderQty(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:14041
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:14481
static constexpr StrRef className() noexcept
Definition Messages.h:14527
auto originatorUserId() const noexcept
Provides access to originatorUserID field.
Definition Messages.h:14069
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:14471
ThisType & benchMarkPriceType(NullOpt) noexcept
Definition Messages.h:14318
static constexpr UInt64 getMaxMessageSize(UInt8 maxGroupItems=255) noexcept
Maximal message size.
Definition Messages.h:14491
ThisType & originatorUserId(StrRef value) noexcept
Provides access to originatorUserID field.
Definition Messages.h:14078
auto crossType() const noexcept
Provides access to crossType field.
Definition Messages.h:14125
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:14535
ThisType & transactDetails(StrRef value) noexcept
Provides access to transactDetails field.
Definition Messages.h:14355
Sides sides(Sides::Size length)
Setup repeating group with the given number of entries.
Definition Messages.h:14407
auto symbol() const noexcept
Provides access to symbol field.
Definition Messages.h:14051
NewOrderCrossRequest(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:13977
ThisType & execInst(ExecInstEnum value) noexcept
Provides access to execInst field.
Definition Messages.h:14180
NewOrderCrossRequest(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:13987
auto orderQty() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:14033
auto benchMarkPriceType() const noexcept
uint8NULL.
Definition Messages.h:14302
NewOrderCrossRequest(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:13995
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:14509
ThisType & hedgeOnly(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:14258
NewOrderCrossRequest()=default
Initializes a blank instance.
auto tradeType() const noexcept
Provides access to tradeType field.
Definition Messages.h:14143
SbeGroup< SidesEntry, GroupSizeEncoding, MessageSize > Sides
Repeating group containing SidesEntry entries.
Definition Messages.h:13670
EncodedLength calculateBinarySize() const noexcept
Definition Messages.h:14554
auto ordType() const noexcept
Provides access to ordType field.
Definition Messages.h:14089
auto hedgeOnly() const noexcept
uint8NULL.
Definition Messages.h:14250
auto crossId() const noexcept
Provides access to crossID field.
Definition Messages.h:14107
ThisType & priceType(PriceTypeEnum value) noexcept
uint8NULL.
Definition Messages.h:14206
auto price() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:14015
ThisType & benchMarkPriceType(BenchmarkPriceTypeEnum value) noexcept
uint8NULL.
Definition Messages.h:14310
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:14501
ThisType & tradeType(StrRef value) noexcept
Provides access to tradeType field.
Definition Messages.h:14152
auto transactDetails() const noexcept
Provides access to transactDetails field.
Definition Messages.h:14346
auto execInst() const noexcept
Provides access to execInst field.
Definition Messages.h:14172
NewOrderRequest(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:10193
ThisType & clientIdCode(Int64NULL value) noexcept
int64NULL.
Definition Messages.h:10756
static constexpr UInt64 getMaxMessageSize(UInt8) noexcept
Maximal message size.
Definition Messages.h:11109
ThisType & mifidId(NullOpt) noexcept
Definition Messages.h:10790
auto maxShow() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:10393
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:11080
ThisType & onBehalfOfCompId(NullOpt) noexcept
Definition Messages.h:11029
const void * tail() const noexcept
Definition Messages.h:11177
ThisType & allocationAccount(StrRef value) noexcept
Provides access to allocationAccount field.
Definition Messages.h:10991
auto clOrdId() const noexcept
Provides access to clOrdID field.
Definition Messages.h:10375
NewOrderRequest(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:10163
ThisType & clearingAccount(StrRef value) noexcept
Provides access to clearingAccount field.
Definition Messages.h:10913
NewOrderRequest()=default
Initializes a blank instance.
ThisType & directElectronicAccess(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:10600
ThisType & symbol(Int32 value) noexcept
Provides access to symbol field.
Definition Messages.h:10265
ThisType & price(NullOpt) noexcept
Definition Messages.h:10229
ThisType & timeInForce(TimeInForceEnum value) noexcept
Provides access to timeInForce field.
Definition Messages.h:10283
auto clearingAccount() const noexcept
Provides access to clearingAccount field.
Definition Messages.h:10904
ThisType & manualOrderIndicator(NullOpt) noexcept
Definition Messages.h:10365
ThisType & stopPx(NullOpt) noexcept
Definition Messages.h:10435
ThisType & expireDate(Timestamp value) noexcept(timestampToDate::Nothrow)
UTC days since Unix epoch (January 1st, 1970).
Definition Messages.h:10522
ThisType & clOrdId(Int64 value) noexcept
Provides access to clOrdID field.
Definition Messages.h:10383
ThisType & memo(NullOpt) noexcept
Definition Messages.h:10971
ThisType & side(SideEnum value) noexcept
Provides access to side field.
Definition Messages.h:10301
ThisType & clearingFirm(Int32 value) noexcept
Provides access to clearingFirm field.
Definition Messages.h:10479
auto allocationAccount() const noexcept
Provides access to allocationAccount field.
Definition Messages.h:10982
ThisType & tradingCapacity(NullOpt) noexcept
Definition Messages.h:10634
NewOrderRequest ThisType
This type alias.
Definition Messages.h:10154
SchemaTraits Schema
Used template schema.
Definition Messages.h:10151
ThisType & custOrderHandlingInst(CustOrderHandlingInstEnum value) noexcept
Provides access to custOrderHandlingInst field.
Definition Messages.h:10808
ThisType & execInst(NullOpt) noexcept
Definition Messages.h:10582
auto priceType() const noexcept
uint8NULL.
Definition Messages.h:10878
ThisType & onBehalfOfSubId(StrRef value) noexcept
Provides access to onBehalfOfSubID field.
Definition Messages.h:11049
ThisType & directElectronicAccess(NullOpt) noexcept
Definition Messages.h:10608
ThisType & giveUpClearingFirm(Int32NULL value) noexcept
int32NULL.
Definition Messages.h:10453
ThisType & allocationAccount(NullOpt) noexcept
Definition Messages.h:11000
ThisType & tradingCapacity(TradingCapacityEnum value) noexcept
uint8NULL.
Definition Messages.h:10626
ThisType & giveUpClearingFirm(NullOpt) noexcept
Definition Messages.h:10461
auto timeInForce() const noexcept
Provides access to timeInForce field.
Definition Messages.h:10275
ThisType & customerAccountRefId(StrRef value) noexcept
Provides access to customerAccountRefID field.
Definition Messages.h:10933
ThisType & mifidId(Int64NULL value) noexcept
int64NULL.
Definition Messages.h:10782
ThisType & price(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:10221
ThisType & ordType(OrderTypeEnum value) noexcept
Provides access to ordType field.
Definition Messages.h:10339
ThisType & manualOrderIndicator(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:10357
ThisType & executionDecision(Int64NULL value) noexcept
int64NULL.
Definition Messages.h:10730
auto expireDate() const noexcept(dateToTimestamp::Nothrow)
UTC days since Unix epoch (January 1st, 1970).
Definition Messages.h:10515
ThisType & customerAccountRefId(NullOpt) noexcept
Definition Messages.h:10942
ThisType & maxShow(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:10401
ThisType & selfMatchPreventionInstruction(SelfMatchPreventionInstructionEnum value) noexcept
Provides access to selfMatchPreventionInstruction field.
Definition Messages.h:10548
ThisType & stopPx(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:10427
ThisType & orderQty(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:10247
ThisType & priceType(NullOpt) noexcept
Definition Messages.h:10894
auto executionDecision() const noexcept
int64NULL.
Definition Messages.h:10722
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:11099
ThisType & selfMatchPreventionId(NullOpt) noexcept
Definition Messages.h:10505
ThisType & clientIdCode(NullOpt) noexcept
Definition Messages.h:10764
auto side() const noexcept
Provides access to side field.
Definition Messages.h:10293
ThisType & expireDate(NullOpt) noexcept
Definition Messages.h:10530
ThisType & liquidityProvision(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:10652
auto mifidId() const noexcept
int64NULL.
Definition Messages.h:10774
auto onBehalfOfSubId() const noexcept
Provides access to onBehalfOfSubID field.
Definition Messages.h:11040
static constexpr StrRef className() noexcept
Definition Messages.h:11158
ThisType & positionEffect(PositionEffectEnum value) noexcept
Provides access to positionEffect field.
Definition Messages.h:10834
auto originatorUserId() const noexcept
Provides access to originatorUserID field.
Definition Messages.h:10311
NewOrderRequest(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:10175
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:11089
auto giveUpClearingFirm() const noexcept
int32NULL.
Definition Messages.h:10445
ThisType & originatorUserId(StrRef value) noexcept
Provides access to originatorUserID field.
Definition Messages.h:10320
ThisType & memo(StrRef value) noexcept
Provides access to memo field.
Definition Messages.h:10962
ThisType & onBehalfOfCompId(StrRef value) noexcept
Provides access to onBehalfOfCompId field.
Definition Messages.h:11020
auto allocHandlInst() const noexcept
Provides access to allocHandlInst field.
Definition Messages.h:10852
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:11166
NewOrderRequest(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:10185
auto memo() const noexcept
Provides access to memo field.
Definition Messages.h:10953
auto positionEffect() const noexcept
Provides access to positionEffect field.
Definition Messages.h:10826
auto customerAccountRefId() const noexcept
Provides access to customerAccountRefID field.
Definition Messages.h:10924
auto directElectronicAccess() const noexcept
uint8NULL.
Definition Messages.h:10592
auto symbol() const noexcept
Provides access to symbol field.
Definition Messages.h:10257
ThisType & execInst(ExecInstEnum value) noexcept
Provides access to execInst field.
Definition Messages.h:10574
auto selfMatchPreventionId() const noexcept
int64NULL.
Definition Messages.h:10489
auto tradingCapacity() const noexcept
uint8NULL.
Definition Messages.h:10618
ThisType & commodityDerivIndicator(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:10678
auto orderQty() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:10239
auto clearingFirm() const noexcept
Provides access to clearingFirm field.
Definition Messages.h:10471
ThisType & investmentDecision(Int64NULL value) noexcept
int64NULL.
Definition Messages.h:10704
ThisType & custOrderHandlingInst(NullOpt) noexcept
Definition Messages.h:10816
auto selfMatchPreventionInstruction() const noexcept
Provides access to selfMatchPreventionInstruction field.
Definition Messages.h:10540
ThisType & commodityDerivIndicator(NullOpt) noexcept
Definition Messages.h:10686
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:11123
ThisType & allocHandlInst(NullOpt) noexcept
Definition Messages.h:10868
ThisType & liquidityProvision(NullOpt) noexcept
Definition Messages.h:10660
auto onBehalfOfCompId() const noexcept
Provides access to onBehalfOfCompId field.
Definition Messages.h:11011
auto liquidityProvision() const noexcept
uint8NULL.
Definition Messages.h:10644
ThisType & onBehalfOfLocationId(StrRef value) noexcept
Provides access to onBehalfOfLocationID field.
Definition Messages.h:11069
ThisType & selfMatchPreventionInstruction(NullOpt) noexcept
Definition Messages.h:10556
ThisType & maxShow(NullOpt) noexcept
Definition Messages.h:10409
NewOrderRequest(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:10203
ThisType & positionEffect(NullOpt) noexcept
Definition Messages.h:10842
ThisType & executionDecision(NullOpt) noexcept
Definition Messages.h:10738
EncodedLength calculateBinarySize() const noexcept
Definition Messages.h:11189
auto onBehalfOfLocationId() const noexcept
Provides access to onBehalfOfLocationID field.
Definition Messages.h:11060
auto ordType() const noexcept
Provides access to ordType field.
Definition Messages.h:10331
auto clientIdCode() const noexcept
int64NULL.
Definition Messages.h:10748
auto stopPx() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:10419
ThisType & priceType(PriceTypeEnum value) noexcept
uint8NULL.
Definition Messages.h:10886
auto custOrderHandlingInst() const noexcept
Provides access to custOrderHandlingInst field.
Definition Messages.h:10800
ThisType & investmentDecision(NullOpt) noexcept
Definition Messages.h:10712
auto price() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:10213
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:11117
ThisType & selfMatchPreventionId(Int64NULL value) noexcept
int64NULL.
Definition Messages.h:10497
auto manualOrderIndicator() const noexcept
uint8NULL.
Definition Messages.h:10349
auto commodityDerivIndicator() const noexcept
uint8NULL.
Definition Messages.h:10670
ThisType & allocHandlInst(AllocHandlInstEnum value) noexcept
Provides access to allocHandlInst field.
Definition Messages.h:10860
auto execInst() const noexcept
Provides access to execInst field.
Definition Messages.h:10566
auto investmentDecision() const noexcept
int64NULL.
Definition Messages.h:10696
static constexpr UInt64 getMaxMessageSize(UInt8) noexcept
Maximal message size.
Definition Messages.h:1796
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:1767
const void * tail() const noexcept
Definition Messages.h:1840
News(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:1695
News(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:1685
auto exchangeCode() const noexcept
int32NULL.
Definition Messages.h:1725
News(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:1667
SchemaTraits Schema
Used template schema.
Definition Messages.h:1643
News ThisType
This type alias.
Definition Messages.h:1646
auto userId() const noexcept
Gateway or Trader ID.
Definition Messages.h:1705
News(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:1677
ThisType & exchangeCode(NullOpt) noexcept
Definition Messages.h:1741
News(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:1655
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:1786
static constexpr StrRef className() noexcept
Definition Messages.h:1821
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:1776
StrRef text() const noexcept
Definition Messages.h:1750
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:1829
News()=default
Initializes a blank instance.
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:1810
ThisType & exchangeCode(Int32NULL value) noexcept
int32NULL.
Definition Messages.h:1733
EncodedLength calculateBinarySize() const noexcept
Definition Messages.h:1849
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:1803
ThisType & text(StrRef value)
Definition Messages.h:1755
ThisType & userId(StrRef value) noexcept
Gateway or Trader ID.
Definition Messages.h:1714
Null values definition for optional OriginalOrderID field.
Definition Composites.h:744
ThisType & massCancelRequestType(MassCancelRequestTypeEnum value) noexcept
Provides access to massCancelRequestType field.
Definition Messages.h:22337
static constexpr UInt64 getMaxMessageSize(UInt8) noexcept
Maximal message size.
Definition Messages.h:22475
auto massCancelResponse() const noexcept
Provides access to massCancelResponse field.
Definition Messages.h:22347
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:22446
auto transactTime() const noexcept(ticksToTimestamp::Nothrow)
Nanoseconds since Unix epoch (January 1st, 1970).
Definition Messages.h:22286
OrderMassCancelReport()=default
Initializes a blank instance.
OrderMassCancelReport(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:22194
auto clOrdId() const noexcept
Provides access to clOrdID field.
Definition Messages.h:22268
auto exchangeCode() const noexcept
int32NULL.
Definition Messages.h:22391
OrderMassCancelReport(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:22202
ThisType & clOrdId(Int64 value) noexcept
Provides access to clOrdID field.
Definition Messages.h:22276
ThisType & transactTime(Timestamp value) noexcept(timestampToTicks::Nothrow)
Nanoseconds since Unix epoch (January 1st, 1970).
Definition Messages.h:22293
ThisType & symbol(Int32NULL value) noexcept
int32NULL.
Definition Messages.h:22250
SchemaTraits Schema
Used template schema.
Definition Messages.h:22160
auto massCancelRequestType() const noexcept
Provides access to massCancelRequestType field.
Definition Messages.h:22329
ThisType & text(StrRef value) noexcept
Provides access to text field.
Definition Messages.h:22426
OrderMassCancelReport(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:22184
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:22465
static constexpr StrRef className() noexcept
Definition Messages.h:22504
auto originatorUserId() const noexcept
Provides access to originatorUserID field.
Definition Messages.h:22222
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:22455
ThisType & massCancelRejectReason(NullOpt) noexcept
Definition Messages.h:22381
ThisType & originatorUserId(StrRef value) noexcept
Provides access to originatorUserID field.
Definition Messages.h:22231
auto text() const noexcept
Provides access to text field.
Definition Messages.h:22417
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:22512
auto symbol() const noexcept
int32NULL.
Definition Messages.h:22242
OrderMassCancelReport(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:22172
auto massCancelRejectReason() const noexcept
uint8NULL.
Definition Messages.h:22365
ThisType & massCancelResponse(MassCancelResponseEnum value) noexcept
Provides access to massCancelResponse field.
Definition Messages.h:22355
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:22489
ThisType & exchangeCode(Int32NULL value) noexcept
int32NULL.
Definition Messages.h:22399
OrderMassCancelReport ThisType
This type alias.
Definition Messages.h:22163
auto marketTypeId() const noexcept
int32NULL.
Definition Messages.h:22303
EncodedLength calculateBinarySize() const noexcept
Definition Messages.h:22535
OrderMassCancelReport(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:22212
ThisType & marketTypeId(Int32NULL value) noexcept
int32NULL.
Definition Messages.h:22311
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:22483
ThisType & massCancelRejectReason(MassCancelRejectEnum value) noexcept
uint8NULL.
Definition Messages.h:22373
ThisType & massCancelRequestType(MassCancelRequestTypeEnum value) noexcept
Provides access to massCancelRequestType field.
Definition Messages.h:14872
static constexpr UInt64 getMaxMessageSize(UInt8) noexcept
Maximal message size.
Definition Messages.h:14966
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:14937
OrderMassCancelRequest(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:14646
auto clOrdId() const noexcept
Provides access to clOrdID field.
Definition Messages.h:14794
OrderMassCancelRequest(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:14668
ThisType & timeInForce(TimeInForceEnum value) noexcept
uint8NULL.
Definition Messages.h:14890
ThisType & clOrdId(Int64 value) noexcept
Provides access to clOrdID field.
Definition Messages.h:14802
ThisType & side(SideEnum value) noexcept
uint8NULL.
Definition Messages.h:14750
ThisType & symbol(Int32NULL value) noexcept
int32NULL.
Definition Messages.h:14776
SchemaTraits Schema
Used template schema.
Definition Messages.h:14634
OrderMassCancelRequest(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:14658
auto massCancelRequestType() const noexcept
Provides access to massCancelRequestType field.
Definition Messages.h:14864
OrderMassCancelRequest ThisType
This type alias.
Definition Messages.h:14637
ThisType & onBehalfOfSubId(StrRef value) noexcept
Provides access to onBehalfOfSubID field.
Definition Messages.h:14917
OrderMassCancelRequest(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:14676
auto timeInForce() const noexcept
uint8NULL.
Definition Messages.h:14882
ThisType & price(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:14846
ThisType & ordType(OrderTypeEnum value) noexcept
uint8NULL.
Definition Messages.h:14724
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:14956
auto onBehalfOfSubId() const noexcept
Provides access to onBehalfOfSubID field.
Definition Messages.h:14908
static constexpr StrRef className() noexcept
Definition Messages.h:14997
auto originatorUserId() const noexcept
Provides access to originatorUserID field.
Definition Messages.h:14696
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:14946
ThisType & originatorUserId(StrRef value) noexcept
Provides access to originatorUserID field.
Definition Messages.h:14705
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:15005
OrderMassCancelRequest(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:14686
OrderMassCancelRequest()=default
Initializes a blank instance.
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:14980
auto marketTypeId() const noexcept
int32NULL.
Definition Messages.h:14812
EncodedLength calculateBinarySize() const noexcept
Definition Messages.h:15028
auto ordType() const noexcept
uint8NULL.
Definition Messages.h:14716
ThisType & marketTypeId(Int32NULL value) noexcept
int32NULL.
Definition Messages.h:14820
auto price() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:14838
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:14974
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Definition Messages.h:15999
ThisType & underlyingProduct(Int32NULL value) noexcept
int32NULL.
Definition Messages.h:15970
ThisType & underlyingSecurityId(Int32NULL value) noexcept
int32NULL.
Definition Messages.h:15944
QuoteEntry(void *data, EncodedLength length, SchemaVersion version)
Initializes instance of given version over given memory block.
Definition Messages.h:15884
SbeGroupEntry< GroupSizeEncoding::BlockLength > Base
Base class type.
Definition Messages.h:15877
static constexpr StrRef className() noexcept
Entity class name.
Definition Messages.h:16009
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Definition Messages.h:15989
ThisType & underlyingSymbol(Int32NULL value) noexcept
int32NULL.
Definition Messages.h:15918
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:15898
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:15892
SbeGroup< QuoteEntry, GroupSizeEncoding, MessageSize > QuoteEntries
Repeating group containing QuoteEntry entries.
Definition Messages.h:16018
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:16169
QuoteEntries quoteEntries() const noexcept
Definition Messages.h:16130
QuoteEntries quoteEntries(QuoteEntries::Size length, NoFieldsInit)
Setup repeating group with the given number of entries.
Definition Messages.h:16159
SchemaTraits Schema
Used template schema.
Definition Messages.h:15855
QuoteCancelRequest(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:16054
QuoteCancelRequest(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:16036
QuoteCancelRequest(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:16046
QuoteEntries quoteEntries(QuoteEntries::Size length)
Setup repeating group with the given number of entries.
Definition Messages.h:16149
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:16188
static constexpr StrRef className() noexcept
Definition Messages.h:16223
auto originatorUserId() const noexcept
Provides access to originatorUserID field.
Definition Messages.h:16110
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:16178
static constexpr UInt64 getMaxMessageSize(UInt8 maxGroupItems=255) noexcept
Maximal message size.
Definition Messages.h:16198
ThisType & originatorUserId(StrRef value) noexcept
Provides access to originatorUserID field.
Definition Messages.h:16119
ThisType & quoteCancelType(QuoteCancelTypeEnum value) noexcept
Provides access to quoteCancelType field.
Definition Messages.h:16100
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:16231
QuoteCancelRequest(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:16024
auto quoteCancelType() const noexcept
Provides access to quoteCancelType field.
Definition Messages.h:16092
QuoteCancelRequest()=default
Initializes a blank instance.
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:16214
ThisType & quoteId(Int64 value) noexcept
Provides access to quoteID field.
Definition Messages.h:16082
EncodedLength calculateBinarySize() const noexcept
Definition Messages.h:16250
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:16207
QuoteCancelRequest(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:16064
auto quoteId() const noexcept
Provides access to quoteID field.
Definition Messages.h:16074
QuoteCancelRequest ThisType
This type alias.
Definition Messages.h:15858
static constexpr UInt64 getMaxMessageSize(UInt8) noexcept
Maximal message size.
Definition Messages.h:21740
QuoteReport()=default
Initializes a blank instance.
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:21711
const void * tail() const noexcept
Definition Messages.h:21786
auto transactTime() const noexcept(ticksToTimestamp::Nothrow)
Nanoseconds since Unix epoch (January 1st, 1970).
Definition Messages.h:21624
ThisType & orderQty(NullOpt) noexcept
Definition Messages.h:21657
auto rfqSystemId() const noexcept
Provides access to rfqSystemID field.
Definition Messages.h:21606
QuoteReport(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:21514
auto quoteRejectReason() const noexcept
uint8NULL.
Definition Messages.h:21685
ThisType & symbol(Int32 value) noexcept
Provides access to symbol field.
Definition Messages.h:21578
QuoteReport(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:21504
ThisType & transactTime(Timestamp value) noexcept(timestampToTicks::Nothrow)
Nanoseconds since Unix epoch (January 1st, 1970).
Definition Messages.h:21631
ThisType & side(SideEnum value) noexcept
uint8NULL.
Definition Messages.h:21552
SchemaTraits Schema
Used template schema.
Definition Messages.h:21462
ThisType & rfqSystemId(Int64 value) noexcept
Provides access to rfqSystemID field.
Definition Messages.h:21614
QuoteReport(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:21474
ThisType & rfqReqId(Int64 value) noexcept
Provides access to rfqReqID field.
Definition Messages.h:21596
ThisType & side(NullOpt) noexcept
Definition Messages.h:21560
ThisType & orderQty(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:21649
QuoteReport ThisType
This type alias.
Definition Messages.h:21465
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:21730
QuoteReport(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:21486
ThisType & quoteAckStatus(QuoteAckStatusEnum value) noexcept
Provides access to quoteAckStatus field.
Definition Messages.h:21675
auto side() const noexcept
uint8NULL.
Definition Messages.h:21544
auto rfqReqId() const noexcept
Provides access to rfqReqID field.
Definition Messages.h:21588
static constexpr StrRef className() noexcept
Definition Messages.h:21767
auto originatorUserId() const noexcept
Provides access to originatorUserID field.
Definition Messages.h:21524
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:21720
ThisType & originatorUserId(StrRef value) noexcept
Provides access to originatorUserID field.
Definition Messages.h:21533
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:21775
ThisType & quoteRejectReason(NullOpt) noexcept
Definition Messages.h:21701
auto symbol() const noexcept
Provides access to symbol field.
Definition Messages.h:21570
auto orderQty() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:21641
ThisType & quoteRejectReason(QuoteRejectReasonEnum value) noexcept
uint8NULL.
Definition Messages.h:21693
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:21754
auto quoteAckStatus() const noexcept
Provides access to quoteAckStatus field.
Definition Messages.h:21667
EncodedLength calculateBinarySize() const noexcept
Definition Messages.h:21798
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:21748
QuoteReport(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:21496
static constexpr UInt64 getMaxMessageSize(UInt8) noexcept
Maximal message size.
Definition Messages.h:12853
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:12824
ThisType & onBehalfOfCompId(NullOpt) noexcept
Definition Messages.h:12773
QuoteRequest(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:12572
const void * tail() const noexcept
Definition Messages.h:12901
ThisType & orderQty(NullOpt) noexcept
Definition Messages.h:12654
QuoteRequest ThisType
This type alias.
Definition Messages.h:12533
ThisType & clearingFirm(NullOpt) noexcept
Definition Messages.h:12716
ThisType & clearingAccount(StrRef value) noexcept
Provides access to clearingAccount field.
Definition Messages.h:12735
ThisType & symbol(Int32 value) noexcept
Provides access to symbol field.
Definition Messages.h:12690
auto clearingAccount() const noexcept
Provides access to clearingAccount field.
Definition Messages.h:12726
ThisType & side(SideEnum value) noexcept
uint8NULL.
Definition Messages.h:12620
SchemaTraits Schema
Used template schema.
Definition Messages.h:12530
QuoteRequest(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:12554
ThisType & onBehalfOfSubId(StrRef value) noexcept
Provides access to onBehalfOfSubID field.
Definition Messages.h:12793
ThisType & clearingAccount(NullOpt) noexcept
Definition Messages.h:12744
ThisType & rfqReqId(Int64 value) noexcept
Provides access to rfqReqID field.
Definition Messages.h:12672
QuoteRequest(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:12582
QuoteRequest(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:12542
ThisType & side(NullOpt) noexcept
Definition Messages.h:12628
ThisType & orderQty(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:12646
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:12843
auto side() const noexcept
uint8NULL.
Definition Messages.h:12612
auto onBehalfOfSubId() const noexcept
Provides access to onBehalfOfSubID field.
Definition Messages.h:12784
auto rfqReqId() const noexcept
Provides access to rfqReqID field.
Definition Messages.h:12664
static constexpr StrRef className() noexcept
Definition Messages.h:12882
auto originatorUserId() const noexcept
Provides access to originatorUserID field.
Definition Messages.h:12592
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:12833
ThisType & originatorUserId(StrRef value) noexcept
Provides access to originatorUserID field.
Definition Messages.h:12601
ThisType & onBehalfOfCompId(StrRef value) noexcept
Provides access to onBehalfOfCompId field.
Definition Messages.h:12764
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:12890
auto symbol() const noexcept
Provides access to symbol field.
Definition Messages.h:12682
QuoteRequest(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:12564
QuoteRequest()=default
Initializes a blank instance.
auto orderQty() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:12638
auto clearingFirm() const noexcept
int32NULL.
Definition Messages.h:12700
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:12867
ThisType & clearingFirm(Int32NULL value) noexcept
int32NULL.
Definition Messages.h:12708
auto onBehalfOfCompId() const noexcept
Provides access to onBehalfOfCompId field.
Definition Messages.h:12755
ThisType & onBehalfOfLocationId(StrRef value) noexcept
Provides access to onBehalfOfLocationID field.
Definition Messages.h:12813
EncodedLength calculateBinarySize() const noexcept
Definition Messages.h:12913
auto onBehalfOfLocationId() const noexcept
Provides access to onBehalfOfLocationID field.
Definition Messages.h:12804
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:12861
static constexpr UInt64 getMaxMessageSize(UInt8) noexcept
Maximal message size.
Definition Messages.h:23682
ResendReport(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:23530
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:23653
const void * tail() const noexcept
Definition Messages.h:23727
auto exchangeCode() const noexcept
int32NULL.
Definition Messages.h:23598
ThisType & endSeqNo(UInt32 value) noexcept
sequenceId of last message in range of messages for retransmission.
Definition Messages.h:23570
ResendReport(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:23512
auto endSeqNo() const noexcept
sequenceId of last message in range of messages for retransmission.
Definition Messages.h:23561
ResendReport(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:23520
SchemaTraits Schema
Used template schema.
Definition Messages.h:23478
ThisType & status(RequestStatusEnum value) noexcept
Provides access to status field.
Definition Messages.h:23588
ThisType & text(StrRef value) noexcept
Provides access to text field.
Definition Messages.h:23633
ResendReport(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:23502
ThisType & exchangeCode(NullOpt) noexcept
Definition Messages.h:23614
auto beginSeqNo() const noexcept
sequenceId of first message in range of messages for retransmission.
Definition Messages.h:23541
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:23672
auto status() const noexcept
Provides access to status field.
Definition Messages.h:23580
static constexpr StrRef className() noexcept
Definition Messages.h:23708
ThisType & beginSeqNo(UInt32 value) noexcept
sequenceId of first message in range of messages for retransmission.
Definition Messages.h:23550
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:23662
ResendReport()=default
Initializes a blank instance.
auto text() const noexcept
Provides access to text field.
Definition Messages.h:23624
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:23716
ResendReport ThisType
This type alias.
Definition Messages.h:23481
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:23696
ThisType & exchangeCode(Int32NULL value) noexcept
int32NULL.
Definition Messages.h:23606
ResendReport(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:23490
ThisType & text(NullOpt) noexcept
Definition Messages.h:23642
EncodedLength calculateBinarySize() const noexcept
Definition Messages.h:23739
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:23690
ResendRequest(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:23311
static constexpr UInt64 getMaxMessageSize(UInt8) noexcept
Maximal message size.
Definition Messages.h:23390
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:23361
const void * tail() const noexcept
Definition Messages.h:23432
ResendRequest(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:23271
ThisType & endSeqNo(UInt32 value) noexcept
sequenceId of last message in range of messages for retransmission.
Definition Messages.h:23351
ResendRequest(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:23301
auto endSeqNo() const noexcept
sequenceId of last message in range of messages for retransmission.
Definition Messages.h:23342
SchemaTraits Schema
Used template schema.
Definition Messages.h:23259
ResendRequest(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:23293
auto beginSeqNo() const noexcept
sequenceId of first message in range of messages for retransmission.
Definition Messages.h:23322
ResendRequest(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:23283
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:23380
ResendRequest ThisType
This type alias.
Definition Messages.h:23262
static constexpr StrRef className() noexcept
Definition Messages.h:23413
ThisType & beginSeqNo(UInt32 value) noexcept
sequenceId of first message in range of messages for retransmission.
Definition Messages.h:23331
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:23370
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:23421
ResendRequest()=default
Initializes a blank instance.
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:23404
EncodedLength calculateBinarySize() const noexcept
Definition Messages.h:23444
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:23398
Attributes of SBE message schema.
static constexpr UInt64 getMaxMessageSize(UInt8) noexcept
Maximal message size.
Definition Messages.h:7023
SecurityDefinitionReject ThisType
This type alias.
Definition Messages.h:6782
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:6994
ThisType & securityReqId(Int32 value) noexcept
Provides access to securityReqID field.
Definition Messages.h:6849
auto securityType() const noexcept
uint8NULL.
Definition Messages.h:6913
SecurityDefinitionReject()=default
Initializes a blank instance.
auto exchangeCode() const noexcept
int32NULL.
Definition Messages.h:6939
SecurityDefinitionReject(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:6803
SecurityDefinitionReject(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:6791
ThisType & securityResponseType(SecurityResponseTypeEnum value) noexcept
Provides access to securityResponseType field.
Definition Messages.h:6867
SchemaTraits Schema
Used template schema.
Definition Messages.h:6779
SecurityDefinitionReject(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:6813
ThisType & text(StrRef value) noexcept
Provides access to text field.
Definition Messages.h:6974
auto securityRequestType() const noexcept
Provides access to securityRequestType field.
Definition Messages.h:6877
ThisType & securityType(SecurityTypeEnum value) noexcept
uint8NULL.
Definition Messages.h:6921
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:7013
static constexpr StrRef className() noexcept
Definition Messages.h:7050
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:7003
auto text() const noexcept
Provides access to text field.
Definition Messages.h:6965
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:7058
SecurityDefinitionReject(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:6821
auto securityResponseType() const noexcept
Provides access to securityResponseType field.
Definition Messages.h:6859
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:7037
ThisType & exchangeCode(Int32NULL value) noexcept
int32NULL.
Definition Messages.h:6947
SecurityDefinitionReject(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:6831
ThisType & securityRequestType(SecurityRequestTypeEnum value) noexcept
Provides access to securityRequestType field.
Definition Messages.h:6885
auto marketTypeId() const noexcept
Provides access to marketTypeID field.
Definition Messages.h:6895
EncodedLength calculateBinarySize() const noexcept
Definition Messages.h:7081
ThisType & marketTypeId(Int32 value) noexcept
Provides access to marketTypeID field.
Definition Messages.h:6903
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:7031
auto securityReqId() const noexcept
Provides access to securityReqID field.
Definition Messages.h:6841
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Definition Messages.h:4366
ThisType & blockDetailsMinQty(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:4345
ThisType & blockDetailsTradeType(StrRef value) noexcept
Provides access to blockDetailsTradeType field.
Definition Messages.h:4317
BlockDetailsEntry(void *data, EncodedLength length, SchemaVersion version)
Initializes instance of given version over given memory block.
Definition Messages.h:4266
SbeGroupEntry< GroupSizeEncoding::BlockLength > Base
Base class type.
Definition Messages.h:4259
auto blockDetailsTradeType() const noexcept
Provides access to blockDetailsTradeType field.
Definition Messages.h:4308
static constexpr StrRef className() noexcept
Entity class name.
Definition Messages.h:4376
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Definition Messages.h:4356
auto blockDetailsMinQty() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:4337
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:4280
auto blockDetailsBlockType() const noexcept
Provides access to blockDetailsBlockType field.
Definition Messages.h:4290
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:4274
ThisType & blockDetailsBlockType(BlockTypeEnum value) noexcept
Provides access to blockDetailsBlockType field.
Definition Messages.h:4298
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Definition Messages.h:4502
auto securityAltIdSource() const noexcept
Provides access to securityAltIDSource field.
Definition Messages.h:4462
ThisType & securityAltId(StrRef value) noexcept
Provides access to securityAltID field.
Definition Messages.h:4442
SbeGroupEntry< GroupSizeEncoding::BlockLength > Base
Base class type.
Definition Messages.h:4401
static constexpr StrRef className() noexcept
Entity class name.
Definition Messages.h:4512
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Definition Messages.h:4492
SecurityAltIDEntry(void *data, EncodedLength length, SchemaVersion version)
Initializes instance of given version over given memory block.
Definition Messages.h:4408
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:4422
auto securityAltId() const noexcept
Provides access to securityAltID field.
Definition Messages.h:4433
ThisType & securityAltIdSource(StrRef value) noexcept
Provides access to securityAltIDSource field.
Definition Messages.h:4471
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:4416
static constexpr UInt64 getMaxMessageSize(UInt8) noexcept
Maximal message size.
Definition Messages.h:7946
ThisType & crossingOrderOptionsAllowed(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:7819
ThisType & testMarketIndicator(BooleanEnum value) noexcept
Provides access to testMarketIndicator field.
Definition Messages.h:7593
auto productId() const noexcept
Provides access to productID field.
Definition Messages.h:7520
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:7917
auto testMarketIndicator() const noexcept
Provides access to testMarketIndicator field.
Definition Messages.h:7585
auto crossingOrderOptionsAllowed() const noexcept
uint8NULL.
Definition Messages.h:7811
ThisType & securityReqId(Int32 value) noexcept
Provides access to securityReqID field.
Definition Messages.h:7420
ThisType & rfqOptionsAllowed(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:7767
ThisType & stopsAllowed(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:7611
ThisType & listSeqNo(Int32 value) noexcept
Provides access to listSeqNo field.
Definition Messages.h:7510
ThisType & optionsAllowed(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:7637
ThisType & securityResponseType(SecurityResponseTypeEnum value) noexcept
Provides access to securityResponseType field.
Definition Messages.h:7438
ThisType & rpts(Int32 value) noexcept
Provides access to noRpts field.
Definition Messages.h:7492
ThisType & productType(StrRef value) noexcept
Provides access to productType field.
Definition Messages.h:7547
auto mifidRegulatedMarket() const noexcept
Provides access to mifidRegulatedMarket field.
Definition Messages.h:7567
ThisType & rfqFuturesAllowed(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:7741
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:7936
ThisType & selfBlockAllowed(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:7845
SecurityDefinitionReport_Product(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:7362
auto securityResponseId() const noexcept
Provides access to securityResponseID field.
Definition Messages.h:7448
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:7926
SecurityDefinitionReport_Product()=default
Initializes a blank instance.
SecurityDefinitionReport_Product ThisType
This type alias.
Definition Messages.h:7353
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:7991
SecurityDefinitionReport_Product(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:7384
SecurityDefinitionReport_Product(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:7374
ThisType & udsOptionsAllowed(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:7663
auto securityResponseType() const noexcept
Provides access to securityResponseType field.
Definition Messages.h:7430
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:7962
ThisType & crossingOrderFuturesAllowed(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:7793
ThisType & massQuotesAllowed(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:7715
ThisType & securityResponseId(Int32 value) noexcept
Provides access to securityResponseID field.
Definition Messages.h:7456
auto productType() const noexcept
Provides access to productType field.
Definition Messages.h:7538
SecurityDefinitionReport_Product(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:7392
auto rpts() const noexcept
Provides access to noRpts field.
Definition Messages.h:7484
auto marketTypeId() const noexcept
Provides access to marketTypeID field.
Definition Messages.h:7466
ThisType & productId(Int32 value) noexcept
Provides access to productID field.
Definition Messages.h:7528
ThisType & udsFuturesAllowed(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:7689
auto crossingOrderFuturesAllowed() const noexcept
uint8NULL.
Definition Messages.h:7785
ThisType & marketTypeId(Int32 value) noexcept
Provides access to marketTypeID field.
Definition Messages.h:7474
auto listSeqNo() const noexcept
Provides access to listSeqNo field.
Definition Messages.h:7502
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:7953
ThisType & mifidRegulatedMarket(BooleanEnum value) noexcept
Provides access to mifidRegulatedMarket field.
Definition Messages.h:7575
auto securityReqId() const noexcept
Provides access to securityReqID field.
Definition Messages.h:7412
SecurityDefinitionReport_Product(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:7402
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Definition Messages.h:2040
ThisType & blockDetailsMinQty(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:2019
ThisType & blockDetailsTradeType(StrRef value) noexcept
Provides access to blockDetailsTradeType field.
Definition Messages.h:1991
BlockDetailsEntry(void *data, EncodedLength length, SchemaVersion version)
Initializes instance of given version over given memory block.
Definition Messages.h:1940
SbeGroupEntry< GroupSizeEncoding::BlockLength > Base
Base class type.
Definition Messages.h:1933
auto blockDetailsTradeType() const noexcept
Provides access to blockDetailsTradeType field.
Definition Messages.h:1982
static constexpr StrRef className() noexcept
Entity class name.
Definition Messages.h:2050
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Definition Messages.h:2030
auto blockDetailsMinQty() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:2011
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:1954
auto blockDetailsBlockType() const noexcept
Provides access to blockDetailsBlockType field.
Definition Messages.h:1964
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:1948
ThisType & blockDetailsBlockType(BlockTypeEnum value) noexcept
Provides access to blockDetailsBlockType field.
Definition Messages.h:1972
ThisType & legRatioPriceDenominator(Int16 value) noexcept
Provides access to legRatioPriceDenominator field.
Definition Messages.h:2422
ThisType & legRatioPriceNumerator(Int16 value) noexcept
Provides access to legRatioPriceNumerator field.
Definition Messages.h:2440
auto legRatioQtyNumerator() const noexcept
Provides access to legRatioQtyNumerator field.
Definition Messages.h:2396
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Definition Messages.h:2461
ThisType & legSecurityType(SecurityTypeEnum value) noexcept
Provides access to legSecurityType field.
Definition Messages.h:2272
auto legPrice() const noexcept
Required if legSecurityType is FUT.
Definition Messages.h:2326
auto legSymbol() const noexcept
Provides access to legSymbol field.
Definition Messages.h:2246
ThisType & legPrice(Decimal9 value) noexcept
Required if legSecurityType is FUT.
Definition Messages.h:2334
auto legRatioPriceDenominator() const noexcept
Provides access to legRatioPriceDenominator field.
Definition Messages.h:2414
auto legSecurityType() const noexcept
Provides access to legSecurityType field.
Definition Messages.h:2264
auto legOptionDelta() const noexcept
Required if legSecurityType is FUT or CS.
Definition Messages.h:2352
SbeGroupEntry< GroupSizeEncoding::BlockLength > Base
Base class type.
Definition Messages.h:2213
ThisType & legSymbol(Int32 value) noexcept
Provides access to legSymbol field.
Definition Messages.h:2254
auto legSide() const noexcept
Provides access to legSide field.
Definition Messages.h:2308
static constexpr StrRef className() noexcept
Entity class name.
Definition Messages.h:2471
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Definition Messages.h:2451
LegsEntry(void *data, EncodedLength length, SchemaVersion version)
Initializes instance of given version over given memory block.
Definition Messages.h:2220
ThisType & legOptionDelta(Int32NULL value) noexcept
Required if legSecurityType is FUT or CS.
Definition Messages.h:2360
ThisType & legRatioQtyDenominator(Int16 value) noexcept
Provides access to legRatioQtyDenominator field.
Definition Messages.h:2386
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:2234
ThisType & legSide(SideEnum value) noexcept
Provides access to legSide field.
Definition Messages.h:2316
ThisType & legRatioQtyNumerator(Int16 value) noexcept
Provides access to legRatioQtyNumerator field.
Definition Messages.h:2404
ThisType & legSecuritySubType(Int16NULL value) noexcept
int16NULL.
Definition Messages.h:2290
auto legRatioPriceNumerator() const noexcept
Provides access to legRatioPriceNumerator field.
Definition Messages.h:2432
auto legRatioQtyDenominator() const noexcept
Provides access to legRatioQtyDenominator field.
Definition Messages.h:2378
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:2228
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Definition Messages.h:2178
auto securityAltIdSource() const noexcept
Provides access to securityAltIDSource field.
Definition Messages.h:2138
ThisType & securityAltId(StrRef value) noexcept
ISIN of equity related market if securityAltIDSource is 4 or as required by MiFID if securityAltIDSou...
Definition Messages.h:2118
SbeGroupEntry< GroupSizeEncoding::BlockLength > Base
Base class type.
Definition Messages.h:2075
static constexpr StrRef className() noexcept
Entity class name.
Definition Messages.h:2188
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Definition Messages.h:2168
SecurityAltIDEntry(void *data, EncodedLength length, SchemaVersion version)
Initializes instance of given version over given memory block.
Definition Messages.h:2082
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:2096
auto securityAltId() const noexcept
ISIN of equity related market if securityAltIDSource is 4 or as required by MiFID if securityAltIDSou...
Definition Messages.h:2108
ThisType & securityAltIdSource(StrRef value) noexcept
Provides access to securityAltIDSource field.
Definition Messages.h:2147
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:2090
ThisType & securityId(StrRef value)
Exchange contract symbol.
Definition Messages.h:3533
ThisType & hubId(Int32 value) noexcept
Provides access to hubID field.
Definition Messages.h:3242
StrRef securityId() const noexcept
Exchange contract symbol.
Definition Messages.h:3445
static constexpr UInt64 getMaxMessageSize(UInt8) noexcept
Maximal message size.
Definition Messages.h:3684
ThisType & testMarketIndicator(BooleanEnum value) noexcept
Provides access to testMarketIndicator field.
Definition Messages.h:3286
auto blockTickValue() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:3314
auto productId() const noexcept
Provides access to productID field.
Definition Messages.h:2902
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:3655
auto testMarketIndicator() const noexcept
Provides access to testMarketIndicator field.
Definition Messages.h:3278
ThisType & securityReqId(Int32 value) noexcept
Provides access to securityReqID field.
Definition Messages.h:2544
auto transactTime() const noexcept(ticksToTimestamp::Nothrow)
Nanoseconds since Unix epoch (January 1st, 1970).
Definition Messages.h:2759
auto denominator() const noexcept
Provides access to denominator field.
Definition Messages.h:2946
auto offExchangeIncrementQty() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:3016
auto securityTradingStatus() const noexcept
Provides access to securityTradingStatus field.
Definition Messages.h:2705
BlockDetails blockDetails(BlockDetails::Size length)
Setup repeating group with the given number of entries.
Definition Messages.h:3351
SbeGroup< LegsEntry, GroupSizeEncoding, MessageSize > Legs
Repeating group containing LegsEntry entries.
Definition Messages.h:2480
ThisType & offExchangeIncrementQty(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:3024
auto screenTickValue() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:3296
ThisType & listSeqNo(Int32 value) noexcept
Provides access to listSeqNo field.
Definition Messages.h:2634
SbeGroup< SecurityAltIDEntry, GroupSizeEncoding, MessageSize > SecurityAltID
Repeating group containing SecurityAltIDEntry entries.
Definition Messages.h:2197
SecurityDefinitionReport_Strategy(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:2516
ThisType & symbol(Int32 value) noexcept
Provides access to symbol field.
Definition Messages.h:2652
ThisType & minPrice(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:2838
Legs legs(Legs::Size length)
Setup repeating group with the given number of entries.
Definition Messages.h:3425
ThisType & numOfCycles(Int16NULL value) noexcept
int16NULL.
Definition Messages.h:3076
ThisType & flexAllowed(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:3154
auto legDealsSuppressed() const noexcept
Provides access to legDealsSuppressed field.
Definition Messages.h:2776
auto numOfDecimalPrice() const noexcept
Provides access to numOfDecimalPrice field.
Definition Messages.h:2866
ThisType & transactTime(Timestamp value) noexcept(timestampToTicks::Nothrow)
Nanoseconds since Unix epoch (January 1st, 1970).
Definition Messages.h:2766
auto underlyingStrategySymbol() const noexcept
Provides access to underlyingStrategySymbol field.
Definition Messages.h:2662
auto maturityDate() const noexcept(dateToTimestamp::Nothrow)
UTC days since Unix epoch (January 1st, 1970).
Definition Messages.h:2680
auto stripType() const noexcept
Provides access to stripType field.
Definition Messages.h:3216
Legs legs(Legs::Size length, NoFieldsInit)
Setup repeating group with the given number of entries.
Definition Messages.h:3435
ThisType & securityResponseType(SecurityResponseTypeEnum value) noexcept
Provides access to securityResponseType field.
Definition Messages.h:2562
BlockDetails blockDetails(BlockDetails::Size length, NoFieldsInit)
Setup repeating group with the given number of entries.
Definition Messages.h:3361
SbeGroup< BlockDetailsEntry, GroupSizeEncoding, MessageSize > BlockDetails
Repeating group containing BlockDetailsEntry entries.
Definition Messages.h:2059
ThisType & underlyingStrategySymbol(Int32 value) noexcept
Provides access to underlyingStrategySymbol field.
Definition Messages.h:2670
ThisType & baseNumLots(Int32NULL value) noexcept
int32NULL.
Definition Messages.h:2928
ThisType & rpts(Int32 value) noexcept
Provides access to noRpts field.
Definition Messages.h:2616
ThisType & gtAllowed(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:3180
ThisType & impliedType(CharType value) noexcept
Provides access to impliedType field.
Definition Messages.h:2972
ThisType & numOfDecimalStrikePrice(Int8NULL value) noexcept
int8NULL.
Definition Messages.h:3050
ThisType & stripType(Int16 value) noexcept
Provides access to stripType field.
Definition Messages.h:3224
auto minPrice() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:2830
auto exchangeSilo() const noexcept
Provides access to exchangeSilo field.
Definition Messages.h:2741
ThisType & legDealsSuppressed(BooleanEnum value) noexcept
Provides access to legDealsSuppressed field.
Definition Messages.h:2784
auto mifidRegulatedMarket() const noexcept
Provides access to mifidRegulatedMarket field.
Definition Messages.h:3198
ThisType & maxPrice(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:2856
auto offExchangeIncrementPrice() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:2990
SecurityDefinitionReport_Strategy(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:2526
auto impliedType() const noexcept
Provides access to impliedType field.
Definition Messages.h:2964
ThisType & offExchangeIncrementPrice(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:2998
ThisType & maturityDate(Timestamp value) noexcept(timestampToDate::Nothrow)
UTC days since Unix epoch (January 1st, 1970).
Definition Messages.h:2687
ThisType & overrideBlockMin(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:3260
ThisType & numOfDecimalPrice(Int8 value) noexcept
Provides access to numOfDecimalPrice field.
Definition Messages.h:2874
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:3674
auto maxPrice() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:2848
auto numOfDecimalQty() const noexcept
Provides access to numOfDecimalQty field.
Definition Messages.h:2884
auto securitySubType() const noexcept
Provides access to securitySubType field.
Definition Messages.h:2723
ThisType & incrementPrice(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:2802
auto securityResponseId() const noexcept
Provides access to securityResponseID field.
Definition Messages.h:2572
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:3664
ThisType & denominator(Int32 value) noexcept
Provides access to denominator field.
Definition Messages.h:2954
SecurityAltID securityAltId(SecurityAltID::Size length, NoFieldsInit)
Setup repeating group with the given number of entries.
Definition Messages.h:3400
ThisType & numOfDecimalQty(Int8 value) noexcept
Provides access to numOfDecimalQty field.
Definition Messages.h:2892
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:3742
ThisType & lotSizeMultiplier(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:3102
auto hubId() const noexcept
Provides access to hubID field.
Definition Messages.h:3234
auto incrementQty() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:2812
ThisType & securitySubType(Int16 value) noexcept
Provides access to securitySubType field.
Definition Messages.h:2731
auto symbol() const noexcept
Provides access to symbol field.
Definition Messages.h:2644
auto lotSizeMultiplier() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:3094
SecurityDefinitionReport_Strategy(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:2498
ThisType & blockTickValue(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:3322
SecurityDefinitionReport_Strategy(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:2486
SecurityDefinitionReport_Strategy()=default
Initializes a blank instance.
auto securityResponseType() const noexcept
Provides access to securityResponseType field.
Definition Messages.h:2554
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:3712
auto incrementPrice() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:2794
ThisType & securityResponseId(Int32 value) noexcept
Provides access to securityResponseID field.
Definition Messages.h:2580
ThisType & securityTradingStatus(SecurityTradingStatusEnum value) noexcept
Provides access to securityTradingStatus field.
Definition Messages.h:2713
auto rpts() const noexcept
Provides access to noRpts field.
Definition Messages.h:2608
ThisType & blockOnly(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:3128
auto marketTypeId() const noexcept
Provides access to marketTypeID field.
Definition Messages.h:2590
ThisType & productId(Int32 value) noexcept
Provides access to productID field.
Definition Messages.h:2910
SecurityDefinitionReport_Strategy(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:2508
ThisType & marketTypeId(Int32 value) noexcept
Provides access to marketTypeID field.
Definition Messages.h:2598
auto listSeqNo() const noexcept
Provides access to listSeqNo field.
Definition Messages.h:2626
SecurityAltID securityAltId(SecurityAltID::Size length)
Setup repeating group with the given number of entries.
Definition Messages.h:3390
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:3691
ThisType & incrementQty(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:2820
ThisType & mifidRegulatedMarket(BooleanEnum value) noexcept
Provides access to mifidRegulatedMarket field.
Definition Messages.h:3206
auto securityReqId() const noexcept
Provides access to securityReqID field.
Definition Messages.h:2536
SecurityDefinitionReport_Strategy ThisType
This type alias.
Definition Messages.h:1914
ThisType & screenTickValue(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:3304
ThisType & exchangeSilo(ExchangeSiloEnum value) noexcept
Provides access to exchangeSilo field.
Definition Messages.h:2749
ThisType & hubId(Int32 value) noexcept
Provides access to hubID field.
Definition Messages.h:5790
ThisType & stripId(Int32 value) noexcept
Provides access to stripID field.
Definition Messages.h:5616
static constexpr UInt64 getMaxMessageSize(UInt8) noexcept
Maximal message size.
Definition Messages.h:6245
ThisType & testMarketIndicator(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:5834
auto endDate() const noexcept(dateToTimestamp::Nothrow)
UTC days since Unix epoch (January 1st, 1970).
Definition Messages.h:4878
auto blockTickValue() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:5172
ThisType & endDate(Timestamp value) noexcept(timestampToDate::Nothrow)
UTC days since Unix epoch (January 1st, 1970).
Definition Messages.h:4885
ThisType & marketTransparencyType(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:5886
auto productId() const noexcept
Provides access to productID field.
Definition Messages.h:5326
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:6216
auto testMarketIndicator() const noexcept
uint8NULL.
Definition Messages.h:5826
auto screenLastTradeDate() const noexcept(dateToTimestamp::Nothrow)
UTC days since Unix epoch (January 1st, 1970).
Definition Messages.h:4810
SecurityDefinitionReport()=default
Initializes a blank instance.
ThisType & contractSize(Int32 value) noexcept
Provides access to contractSize field.
Definition Messages.h:5216
auto aonAllowed() const noexcept
uint8NULL.
Definition Messages.h:5704
ThisType & securityReqId(Int32 value) noexcept
Provides access to securityReqID field.
Definition Messages.h:4585
auto denominator() const noexcept
Provides access to denominator field.
Definition Messages.h:5466
auto offExchangeIncrementQty() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:5136
ThisType & nCommoditizedMarket(NullOpt) noexcept
Definition Messages.h:5920
auto securityTradingStatus() const noexcept
Provides access to securityTradingStatus field.
Definition Messages.h:4955
BlockDetails blockDetails(BlockDetails::Size length)
Setup repeating group with the given number of entries.
Definition Messages.h:5949
auto underlyingSymbol() const noexcept
Market ID. Unique identifier of the Underlying Market.
Definition Messages.h:4721
ThisType & offExchangeIncrementQty(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:5144
auto screenTickValue() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:5154
ThisType & clearable(BooleanEnum value) noexcept
Provides access to clearable field.
Definition Messages.h:5352
ThisType & listSeqNo(Int32 value) noexcept
Provides access to listSeqNo field.
Definition Messages.h:4711
ThisType & flexStrikeAllowed(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:5764
auto stripId() const noexcept
Provides access to stripID field.
Definition Messages.h:5608
SbeGroup< SecurityAltIDEntry, GroupSizeEncoding, MessageSize > SecurityAltID
Repeating group containing SecurityAltIDEntry entries.
Definition Messages.h:4521
auto strikePrice() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:4929
ThisType & currency(StrRef value) noexcept
Provides access to currency field.
Definition Messages.h:4982
ThisType & hedgeProductId(Int32NULL value) noexcept
int32NULL.
Definition Messages.h:5370
auto numOfCycles() const noexcept
Provides access to numOfCycles field.
Definition Messages.h:5554
SecurityDefinitionReport ThisType
This type alias.
Definition Messages.h:4240
ThisType & symbol(Int32 value) noexcept
Market ID. Unique identifier of the market.
Definition Messages.h:4657
ThisType & isDividendAdjusted(NullOpt) noexcept
Definition Messages.h:5456
ThisType & lotSize(Int32 value) noexcept
Provides access to lotSize field.
Definition Messages.h:5198
ThisType & minPrice(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:5090
SecurityAltID securityAltId() const noexcept
Definition Messages.h:5969
auto numOfDecimalStrikePrice() const noexcept
int8NULL.
Definition Messages.h:5528
ThisType & flexAllowed(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:5660
ThisType & mifidRegulatedMarket(NullOpt) noexcept
Definition Messages.h:5746
auto numOfDecimalPrice() const noexcept
Provides access to numOfDecimalPrice field.
Definition Messages.h:5226
auto hedgeProductId() const noexcept
int32NULL.
Definition Messages.h:5362
ThisType & settlMethod(SettlMethodEnum value) noexcept
Provides access to settlMethod field.
Definition Messages.h:5010
auto maturityDate() const noexcept(dateToTimestamp::Nothrow)
UTC days since Unix epoch (January 1st, 1970).
Definition Messages.h:4785
ThisType & granularity(StrRef value) noexcept
Provides access to granularity field.
Definition Messages.h:5271
auto stripType() const noexcept
Provides access to stripType field.
Definition Messages.h:5590
ThisType & securityResponseType(SecurityResponseTypeEnum value) noexcept
Provides access to securityResponseType field.
Definition Messages.h:4603
SchemaTraits Schema
Used template schema.
Definition Messages.h:4237
BlockDetails blockDetails(BlockDetails::Size length, NoFieldsInit)
Setup repeating group with the given number of entries.
Definition Messages.h:5959
auto marketTransparencyType() const noexcept
uint8NULL.
Definition Messages.h:5878
ThisType & contractMultiplier(Int32 value) noexcept
Provides access to contractMultiplier field.
Definition Messages.h:4843
SbeGroup< BlockDetailsEntry, GroupSizeEncoding, MessageSize > BlockDetails
Repeating group containing BlockDetailsEntry entries.
Definition Messages.h:4385
ThisType & startDate(Timestamp value) noexcept(timestampToDate::Nothrow)
UTC days since Unix epoch (January 1st, 1970).
Definition Messages.h:4860
ThisType & baseNumLots(Int32NULL value) noexcept
int32NULL.
Definition Messages.h:5290
ThisType & rpts(Int32 value) noexcept
Provides access to noRpts field.
Definition Messages.h:4693
auto baseNumLots() const noexcept
int32NULL.
Definition Messages.h:5282
ThisType & gtAllowed(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:5686
auto initialMargin() const noexcept
Provides access to initialMargin field.
Definition Messages.h:5484
auto putOrCall() const noexcept
uint8NULL.
Definition Messages.h:4903
ThisType & impliedType(CharType value) noexcept
Provides access to impliedType field.
Definition Messages.h:5510
ThisType & numOfDecimalStrikePrice(Int8NULL value) noexcept
int8NULL.
Definition Messages.h:5536
ThisType & stripType(Int16 value) noexcept
Provides access to stripType field.
Definition Messages.h:5598
auto tickValue() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:5308
auto minPrice() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:5082
auto clearable() const noexcept
Provides access to clearable field.
Definition Messages.h:5344
auto exchangeSilo() const noexcept
Provides access to exchangeSilo field.
Definition Messages.h:4667
ThisType & screenLastTradeDate(NullOpt) noexcept
Definition Messages.h:4825
auto mifidRegulatedMarket() const noexcept
uint8NULL.
Definition Messages.h:5730
ThisType & maxPrice(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:5108
auto offExchangeIncrementPrice() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:5118
ThisType & testMarketIndicator(NullOpt) noexcept
Definition Messages.h:5842
auto impliedType() const noexcept
Provides access to impliedType field.
Definition Messages.h:5502
ThisType & strikeExerciseStyle(StrikeExerciseStyleEnum value) noexcept
Only supported for FLEX Expiry Option proudcts.
Definition Messages.h:5028
auto flexStrikeAllowed() const noexcept
uint8NULL.
Definition Messages.h:5756
ThisType & offExchangeIncrementPrice(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:5126
ThisType & maturityDate(Timestamp value) noexcept(timestampToDate::Nothrow)
UTC days since Unix epoch (January 1st, 1970).
Definition Messages.h:4792
auto overrideBlockMin() const noexcept
uint8NULL.
Definition Messages.h:5800
ThisType & overrideBlockMin(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:5808
ThisType & numOfDecimalPrice(Int8 value) noexcept
Provides access to numOfDecimalPrice field.
Definition Messages.h:5234
auto startDate() const noexcept(dateToTimestamp::Nothrow)
UTC days since Unix epoch (January 1st, 1970).
Definition Messages.h:4853
ThisType & aonAllowed(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:5712
ThisType & strikeExerciseStyle(NullOpt) noexcept
Definition Messages.h:5036
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:6235
auto maxPrice() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:5100
ThisType & numOfDecimalStrikePrice(NullOpt) noexcept
Definition Messages.h:5544
ThisType & marketTransparencyType(NullOpt) noexcept
Definition Messages.h:5894
auto settlMethod() const noexcept
Provides access to settlMethod field.
Definition Messages.h:5002
auto numOfDecimalQty() const noexcept
Provides access to numOfDecimalQty field.
Definition Messages.h:5244
auto strikeExerciseStyle() const noexcept
Only supported for FLEX Expiry Option proudcts.
Definition Messages.h:5020
ThisType & securitySubType(Int16NULL value) noexcept
int16NULL.
Definition Messages.h:4767
auto contractSize() const noexcept
Provides access to contractSize field.
Definition Messages.h:5208
auto securitySubType() const noexcept
int16NULL.
Definition Messages.h:4759
static constexpr StrRef className() noexcept
Definition Messages.h:6309
ThisType & incrementPrice(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:5072
auto securityResponseId() const noexcept
Provides access to securityResponseID field.
Definition Messages.h:4613
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:6225
ThisType & screenLastTradeDate(Timestamp value) noexcept(timestampToDate::Nothrow)
UTC days since Unix epoch (January 1st, 1970).
Definition Messages.h:4817
SecurityDefinitionReport(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:4539
ThisType & denominator(Int32 value) noexcept
Provides access to denominator field.
Definition Messages.h:5474
ThisType & hedgeMarketId(Int32NULL value) noexcept
int32NULL.
Definition Messages.h:5396
auto nCommoditizedMarket() const noexcept
uint8NULL.
Definition Messages.h:5904
auto cfiCode() const noexcept
Provides access to cfiCode field.
Definition Messages.h:4739
SecurityAltID securityAltId(SecurityAltID::Size length, NoFieldsInit)
Setup repeating group with the given number of entries.
Definition Messages.h:5998
ThisType & initialMargin(Int32 value) noexcept
Provides access to initialMargin field.
Definition Messages.h:5492
ThisType & numOfDecimalQty(Int8 value) noexcept
Provides access to numOfDecimalQty field.
Definition Messages.h:5252
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:6317
ThisType & nCommoditizedMarket(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:5912
auto currency() const noexcept
Provides access to currency field.
Definition Messages.h:4973
ThisType & lotSizeMultiplier(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:5580
SecurityDefinitionReport(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:4567
auto hubId() const noexcept
Provides access to hubID field.
Definition Messages.h:5782
auto refSprdProductId() const noexcept
int32NULL.
Definition Messages.h:5852
SecurityDefinitionReport(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:4527
auto incrementQty() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:5046
auto granularity() const noexcept
Provides access to granularity field.
Definition Messages.h:5262
auto symbol() const noexcept
Market ID. Unique identifier of the market.
Definition Messages.h:4649
auto lotSizeMultiplier() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:5572
ThisType & cfiCode(StrRef value) noexcept
Provides access to cfiCode field.
Definition Messages.h:4748
ThisType & refSprdProductId(Int32NULL value) noexcept
int32NULL.
Definition Messages.h:5860
auto flexAllowed() const noexcept
uint8NULL.
Definition Messages.h:5652
ThisType & numOfCycles(Int16 value) noexcept
Provides access to numOfCycles field.
Definition Messages.h:5562
ThisType & blockTickValue(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:5180
auto gtAllowed() const noexcept
uint8NULL.
Definition Messages.h:5678
ThisType & putOrCall(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:4911
auto securityResponseType() const noexcept
Provides access to securityResponseType field.
Definition Messages.h:4595
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:6272
auto incrementPrice() const noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:5064
ThisType & securityResponseId(Int32 value) noexcept
Provides access to securityResponseID field.
Definition Messages.h:4621
ThisType & strikePrice(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:4937
ThisType & hedgeOnly(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:5422
auto blockOnly() const noexcept
uint8NULL.
Definition Messages.h:5626
ThisType & tickValue(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:5316
ThisType & securityTradingStatus(SecurityTradingStatusEnum value) noexcept
Provides access to securityTradingStatus field.
Definition Messages.h:4963
auto rpts() const noexcept
Provides access to noRpts field.
Definition Messages.h:4685
ThisType & isDividendAdjusted(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:5448
ThisType & blockOnly(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:5634
auto marketTypeId() const noexcept
Provides access to marketTypeID field.
Definition Messages.h:4631
auto isDividendAdjusted() const noexcept
uint8NULL.
Definition Messages.h:5440
ThisType & productId(Int32 value) noexcept
Provides access to productID field.
Definition Messages.h:5334
EncodedLength calculateBinarySize() const noexcept
Definition Messages.h:6337
auto hedgeOnly() const noexcept
uint8NULL.
Definition Messages.h:5414
auto lotSize() const noexcept
Provides access to lotSize field.
Definition Messages.h:5190
ThisType & underlyingSymbol(Int32 value) noexcept
Market ID. Unique identifier of the Underlying Market.
Definition Messages.h:4729
ThisType & marketTypeId(Int32 value) noexcept
Provides access to marketTypeID field.
Definition Messages.h:4639
auto hedgeMarketId() const noexcept
int32NULL.
Definition Messages.h:5388
SecurityDefinitionReport(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:4557
auto listSeqNo() const noexcept
Provides access to listSeqNo field.
Definition Messages.h:4703
SecurityAltID securityAltId(SecurityAltID::Size length)
Setup repeating group with the given number of entries.
Definition Messages.h:5988
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:6252
ThisType & incrementQty(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:5054
ThisType & mifidRegulatedMarket(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:5738
auto securityReqId() const noexcept
Provides access to securityReqID field.
Definition Messages.h:4577
ThisType & screenTickValue(Decimal9 value) noexcept
Quantity, Price with constant exponent -9.
Definition Messages.h:5162
ThisType & exchangeSilo(ExchangeSiloEnum value) noexcept
Provides access to exchangeSilo field.
Definition Messages.h:4675
SecurityDefinitionReport(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:4549
auto contractMultiplier() const noexcept
Provides access to contractMultiplier field.
Definition Messages.h:4835
static constexpr UInt64 getMaxMessageSize(UInt8) noexcept
Maximal message size.
Definition Messages.h:17245
auto productId() const noexcept
Required if securityRequestType is 103 for creating FLEX expiry.
Definition Messages.h:17133
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:17216
SecurityDefinitionRequest_CreateFlex(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:17019
ThisType & securityReqId(Int32 value) noexcept
Provides access to securityReqID field.
Definition Messages.h:17037
auto securityType() const noexcept
FUT for creating FLEX expiry and OPT for creating FLEX options.
Definition Messages.h:17086
SecurityDefinitionRequest_CreateFlex(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:17001
auto strikePrice() const noexcept
Required if securityRequestType is 102 for creating FLEX options.
Definition Messages.h:17189
ThisType & symbol(Int32NULL value) noexcept
Required if securityRequestType is 102 for creating FLEX options.
Definition Messages.h:17170
auto maturityDate() const noexcept(dateToTimestamp::Nothrow)
Required if securityRequestType is 103 for creating FLEX expiry.
Definition Messages.h:17106
auto securityRequestType() const noexcept
103 for creating FLEX expiry and 102 for creating FLEX options.
Definition Messages.h:17048
ThisType & securityType(SecurityTypeEnum value) noexcept
FUT for creating FLEX expiry and OPT for creating FLEX options.
Definition Messages.h:17095
ThisType & maturityDate(Timestamp value) noexcept(timestampToDate::Nothrow)
Required if securityRequestType is 103 for creating FLEX expiry.
Definition Messages.h:17114
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:17235
SecurityDefinitionRequest_CreateFlex(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:16991
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:17225
SecurityDefinitionRequest_CreateFlex(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:17009
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:17281
ThisType & productId(Int32NULL value) noexcept
Required if securityRequestType is 103 for creating FLEX expiry.
Definition Messages.h:17142
auto symbol() const noexcept
Required if securityRequestType is 102 for creating FLEX options.
Definition Messages.h:17161
SecurityDefinitionRequest_CreateFlex(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:16979
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:17259
ThisType & strikePrice(Decimal9 value) noexcept
Required if securityRequestType is 102 for creating FLEX options.
Definition Messages.h:17198
ThisType & securityRequestType(SecurityRequestTypeEnum value) noexcept
103 for creating FLEX expiry and 102 for creating FLEX options.
Definition Messages.h:17057
auto marketTypeId() const noexcept
Provides access to marketTypeID field.
Definition Messages.h:17067
SecurityDefinitionRequest_CreateFlex ThisType
This type alias.
Definition Messages.h:16970
SecurityDefinitionRequest_CreateFlex()=default
Initializes a blank instance.
ThisType & marketTypeId(Int32 value) noexcept
Provides access to marketTypeID field.
Definition Messages.h:17075
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:17253
auto securityReqId() const noexcept
Provides access to securityReqID field.
Definition Messages.h:17029
ThisType & legRatioQtyNumerator(Int16NULL value) noexcept
Required if legSecurityType is OPT or FUT.
Definition Messages.h:16456
auto legRatioQtyNumerator() const noexcept
Required if legSecurityType is OPT or FUT.
Definition Messages.h:16448
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Definition Messages.h:16537
ThisType & legSecurityType(SecurityTypeEnum value) noexcept
Provides access to legSecurityType field.
Definition Messages.h:16394
auto legPrice() const noexcept
Required if legSecurityType is FUT for hedge legs.
Definition Messages.h:16474
auto legSymbol() const noexcept
Market ID for this leg of the strategy.
Definition Messages.h:16368
ThisType & legPrice(Decimal9 value) noexcept
Required if legSecurityType is FUT for hedge legs.
Definition Messages.h:16482
auto legSecurityType() const noexcept
Provides access to legSecurityType field.
Definition Messages.h:16386
ThisType & legRatioQtyDenominator(Int16NULL value) noexcept
Required if legSecurityType is OPT or FUT.
Definition Messages.h:16430
auto legOptionDelta() const noexcept
Required if legSecurityType is FUT or CS.
Definition Messages.h:16500
SbeGroupEntry< GroupSizeEncoding::BlockLength > Base
Base class type.
Definition Messages.h:16334
ThisType & legSymbol(Int32 value) noexcept
Market ID for this leg of the strategy.
Definition Messages.h:16376
auto legSide() const noexcept
Side for this leg of the strategy.
Definition Messages.h:16404
static constexpr StrRef className() noexcept
Entity class name.
Definition Messages.h:16547
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Definition Messages.h:16527
LegsEntry(void *data, EncodedLength length, SchemaVersion version)
Initializes instance of given version over given memory block.
Definition Messages.h:16341
ThisType & legOptionDelta(Int32NULL value) noexcept
Required if legSecurityType is FUT or CS.
Definition Messages.h:16508
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:16355
ThisType & legSide(SideEnum value) noexcept
Side for this leg of the strategy.
Definition Messages.h:16412
auto legRatioQtyDenominator() const noexcept
Required if legSecurityType is OPT or FUT.
Definition Messages.h:16422
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:16349
SecurityDefinitionRequest_CreateStrategy(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:16592
auto endDate() const noexcept(dateToTimestamp::Nothrow)
UTC days since Unix epoch (January 1st, 1970).
Definition Messages.h:16743
ThisType & endDate(Timestamp value) noexcept(timestampToDate::Nothrow)
UTC days since Unix epoch (January 1st, 1970).
Definition Messages.h:16750
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:16821
ThisType & securityReqId(Int32 value) noexcept
Provides access to securityReqID field.
Definition Messages.h:16620
auto securityType() const noexcept
Use MLEG value to create a strategy.
Definition Messages.h:16768
SbeGroup< LegsEntry, GroupSizeEncoding, MessageSize > Legs
Repeating group containing LegsEntry entries.
Definition Messages.h:16556
SecurityDefinitionRequest_CreateStrategy(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:16562
SecurityDefinitionRequest_CreateStrategy(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:16574
Legs legs(Legs::Size length)
Setup repeating group with the given number of entries.
Definition Messages.h:16801
SecurityDefinitionRequest_CreateStrategy ThisType
This type alias.
Definition Messages.h:16315
Legs legs(Legs::Size length, NoFieldsInit)
Setup repeating group with the given number of entries.
Definition Messages.h:16811
ThisType & startDate(Timestamp value) noexcept(timestampToDate::Nothrow)
UTC days since Unix epoch (January 1st, 1970).
Definition Messages.h:16725
auto securityRequestType() const noexcept
Use value of 1 to create a strategy.
Definition Messages.h:16630
SecurityDefinitionRequest_CreateStrategy()=default
Initializes a blank instance.
ThisType & securityType(SecurityTypeEnum value) noexcept
Use MLEG value to create a strategy.
Definition Messages.h:16776
auto startDate() const noexcept(dateToTimestamp::Nothrow)
UTC days since Unix epoch (January 1st, 1970).
Definition Messages.h:16718
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:16840
ThisType & securitySubType(Int16NULL value) noexcept
int16NULL.
Definition Messages.h:16674
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:16830
static constexpr UInt64 getMaxMessageSize(UInt8 maxGroupItems=255) noexcept
Maximal message size.
Definition Messages.h:16850
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:16888
ThisType & productId(Int32NULL value) noexcept
int32NULL.
Definition Messages.h:16700
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:16866
SecurityDefinitionRequest_CreateStrategy(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:16602
ThisType & securityRequestType(SecurityRequestTypeEnum value) noexcept
Use value of 1 to create a strategy.
Definition Messages.h:16638
auto marketTypeId() const noexcept
Provides access to marketTypeID field.
Definition Messages.h:16648
SecurityDefinitionRequest_CreateStrategy(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:16584
ThisType & marketTypeId(Int32 value) noexcept
Provides access to marketTypeID field.
Definition Messages.h:16656
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:16859
auto securityReqId() const noexcept
Provides access to securityReqID field.
Definition Messages.h:16612
SecurityDefinitionRequest(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:7127
static constexpr UInt64 getMaxMessageSize(UInt8) noexcept
Maximal message size.
Definition Messages.h:7262
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:7233
ThisType & securityReqId(Int32 value) noexcept
Provides access to securityReqID field.
Definition Messages.h:7185
SecurityDefinitionRequest ThisType
This type alias.
Definition Messages.h:7118
SecurityDefinitionRequest(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:7139
SchemaTraits Schema
Used template schema.
Definition Messages.h:7115
SecurityDefinitionRequest(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:7167
auto securityRequestType() const noexcept
3 for Futures, 100 for Options, 101 for Strategies, and 104 for Products.
Definition Messages.h:7196
SecurityDefinitionRequest()=default
Initializes a blank instance.
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:7252
static constexpr StrRef className() noexcept
Definition Messages.h:7285
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:7242
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:7293
SecurityDefinitionRequest(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:7157
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:7276
ThisType & securityRequestType(SecurityRequestTypeEnum value) noexcept
3 for Futures, 100 for Options, 101 for Strategies, and 104 for Products.
Definition Messages.h:7205
SecurityDefinitionRequest(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:7149
auto marketTypeId() const noexcept
Provides access to marketTypeID field.
Definition Messages.h:7215
EncodedLength calculateBinarySize() const noexcept
Definition Messages.h:7316
ThisType & marketTypeId(Int32 value) noexcept
Provides access to marketTypeID field.
Definition Messages.h:7223
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:7270
auto securityReqId() const noexcept
Provides access to securityReqID field.
Definition Messages.h:7177
static constexpr UInt64 getMaxMessageSize(UInt8) noexcept
Maximal message size.
Definition Messages.h:23908
SequenceReset ThisType
This type alias.
Definition Messages.h:23776
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:23879
const void * tail() const noexcept
Definition Messages.h:23952
ThisType & gapFillFlag(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:23861
SequenceReset(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:23807
SequenceReset(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:23797
SchemaTraits Schema
Used template schema.
Definition Messages.h:23773
SequenceReset(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:23825
SequenceReset()=default
Initializes a blank instance.
SequenceReset(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:23815
auto gapFillFlag() const noexcept
uint8NULL.
Definition Messages.h:23853
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:23898
ThisType & newSeqNo(UInt32 value) noexcept
New sequence number.
Definition Messages.h:23843
static constexpr StrRef className() noexcept
Definition Messages.h:23933
auto newSeqNo() const noexcept
New sequence number.
Definition Messages.h:23835
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:23888
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:23941
SequenceReset(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:23785
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:23922
ThisType & gapFillFlag(NullOpt) noexcept
Definition Messages.h:23869
EncodedLength calculateBinarySize() const noexcept
Definition Messages.h:23964
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:23916
static constexpr UInt64 getMaxMessageSize(UInt8) noexcept
Maximal message size.
Definition Messages.h:9604
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:9575
const void * tail() const noexcept
Definition Messages.h:9649
TraderLogonReport ThisType
This type alias.
Definition Messages.h:9423
auto exchangeCode() const noexcept
int32NULL.
Definition Messages.h:9520
TraderLogonReport(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:9472
TraderLogonReport(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:9462
SchemaTraits Schema
Used template schema.
Definition Messages.h:9420
ThisType & text(StrRef value) noexcept
Provides access to text field.
Definition Messages.h:9555
ThisType & exchangeCode(NullOpt) noexcept
Definition Messages.h:9536
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:9594
TraderLogonReport(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:9444
static constexpr StrRef className() noexcept
Definition Messages.h:9630
auto originatorUserId() const noexcept
Trader ID.
Definition Messages.h:9482
TraderLogonReport(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:9454
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:9584
ThisType & originatorUserId(StrRef value) noexcept
Trader ID.
Definition Messages.h:9491
auto text() const noexcept
Provides access to text field.
Definition Messages.h:9546
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:9638
TraderLogonReport()=default
Initializes a blank instance.
auto clientId() const noexcept
Provides access to clientID field.
Definition Messages.h:9502
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:9618
ThisType & exchangeCode(Int32NULL value) noexcept
int32NULL.
Definition Messages.h:9528
ThisType & text(NullOpt) noexcept
Definition Messages.h:9564
EncodedLength calculateBinarySize() const noexcept
Definition Messages.h:9661
TraderLogonReport(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:9432
ThisType & clientId(Int32 value) noexcept
Provides access to clientID field.
Definition Messages.h:9510
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:9612
ThisType & clientIdCode(Int64NULL value) noexcept
int64NULL.
Definition Messages.h:9230
static constexpr UInt64 getMaxMessageSize(UInt8) noexcept
Maximal message size.
Definition Messages.h:9323
ThisType & mifidId(NullOpt) noexcept
Definition Messages.h:9264
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:9294
TraderLogonRequest(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:8996
TraderLogonRequest(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:9026
const void * tail() const noexcept
Definition Messages.h:9374
TraderLogonRequest(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:9008
ThisType & directElectronicAccess(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:9074
TraderLogonRequest ThisType
This type alias.
Definition Messages.h:8987
ThisType & tradingCapacity(NullOpt) noexcept
Definition Messages.h:9108
SchemaTraits Schema
Used template schema.
Definition Messages.h:8984
ThisType & directElectronicAccess(NullOpt) noexcept
Definition Messages.h:9082
TraderLogonRequest(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:9018
ThisType & tradingCapacity(TradingCapacityEnum value) noexcept
uint8NULL.
Definition Messages.h:9100
ThisType & mifidId(Int64NULL value) noexcept
int64NULL.
Definition Messages.h:9256
ThisType & executionDecision(Int64NULL value) noexcept
int64NULL.
Definition Messages.h:9204
auto executionDecision() const noexcept
int64NULL.
Definition Messages.h:9196
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:9313
ThisType & clientIdCode(NullOpt) noexcept
Definition Messages.h:9238
ThisType & liquidityProvision(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:9126
TraderLogonRequest()=default
Initializes a blank instance.
auto mifidId() const noexcept
int64NULL.
Definition Messages.h:9248
ThisType & rawData(StrRef value) noexcept
Password of Trader ID.
Definition Messages.h:9283
static constexpr StrRef className() noexcept
Definition Messages.h:9355
auto originatorUserId() const noexcept
Trader ID.
Definition Messages.h:9046
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:9303
ThisType & originatorUserId(StrRef value) noexcept
Trader ID.
Definition Messages.h:9055
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:9363
auto directElectronicAccess() const noexcept
uint8NULL.
Definition Messages.h:9066
auto tradingCapacity() const noexcept
uint8NULL.
Definition Messages.h:9092
ThisType & commodityDerivIndicator(BooleanEnum value) noexcept
uint8NULL.
Definition Messages.h:9152
ThisType & investmentDecision(Int64NULL value) noexcept
int64NULL.
Definition Messages.h:9178
ThisType & commodityDerivIndicator(NullOpt) noexcept
Definition Messages.h:9160
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:9337
ThisType & liquidityProvision(NullOpt) noexcept
Definition Messages.h:9134
auto liquidityProvision() const noexcept
uint8NULL.
Definition Messages.h:9118
auto rawData() const noexcept
Password of Trader ID.
Definition Messages.h:9274
ThisType & executionDecision(NullOpt) noexcept
Definition Messages.h:9212
EncodedLength calculateBinarySize() const noexcept
Definition Messages.h:9386
auto clientIdCode() const noexcept
int64NULL.
Definition Messages.h:9222
ThisType & investmentDecision(NullOpt) noexcept
Definition Messages.h:9186
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:9331
TraderLogonRequest(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:9036
auto commodityDerivIndicator() const noexcept
uint8NULL.
Definition Messages.h:9144
auto investmentDecision() const noexcept
int64NULL.
Definition Messages.h:9170
TraderLogoutReport()=default
Initializes a blank instance.
static constexpr UInt64 getMaxMessageSize(UInt8) noexcept
Maximal message size.
Definition Messages.h:10060
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:10031
TraderLogoutReport(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:9906
auto exchangeCode() const noexcept
int32NULL.
Definition Messages.h:9976
TraderLogoutReport(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:9936
SchemaTraits Schema
Used template schema.
Definition Messages.h:9894
ThisType & text(StrRef value) noexcept
Provides access to text field.
Definition Messages.h:10011
TraderLogoutReport ThisType
This type alias.
Definition Messages.h:9897
TraderLogoutReport(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:9928
TraderLogoutReport(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:9918
ThisType & exchangeCode(NullOpt) noexcept
Definition Messages.h:9992
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:10050
static constexpr StrRef className() noexcept
Definition Messages.h:10086
auto originatorUserId() const noexcept
Trader ID.
Definition Messages.h:9956
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:10040
TraderLogoutReport(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:9946
ThisType & originatorUserId(StrRef value) noexcept
Trader ID.
Definition Messages.h:9965
auto text() const noexcept
Provides access to text field.
Definition Messages.h:10002
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:10094
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:10074
ThisType & exchangeCode(Int32NULL value) noexcept
int32NULL.
Definition Messages.h:9984
EncodedLength calculateBinarySize() const noexcept
Definition Messages.h:10117
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:10068
static constexpr UInt64 getMaxMessageSize(UInt8) noexcept
Maximal message size.
Definition Messages.h:9806
TraderLogoutRequest(void *data, EncodedLength length, NoInit, NoCheck) noexcept
Creates an instance over the given memory block.
Definition Messages.h:9747
static constexpr BlockLength minimalBlockLength(SchemaVersion version) noexcept
Minimal size of message body in bytes.
Definition Messages.h:9777
TraderLogoutRequest()=default
Initializes a blank instance.
TraderLogoutRequest ThisType
This type alias.
Definition Messages.h:9698
SchemaTraits Schema
Used template schema.
Definition Messages.h:9695
TraderLogoutRequest(const SbeMessage &message)
Creates an instance over the given SBE message.
Definition Messages.h:9737
static constexpr MessageSize getMinimalVariableFieldsSize(SchemaVersion version)
Minimal variable fields size (when variable-length fields are empty).
Definition Messages.h:9796
static constexpr StrRef className() noexcept
Definition Messages.h:9829
auto originatorUserId() const noexcept
Trader ID.
Definition Messages.h:9757
static constexpr BlockLength blockLength(SchemaVersion version) noexcept
Size of message body in bytes.
Definition Messages.h:9786
TraderLogoutRequest(void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block With no variable-length fields initialization It ...
Definition Messages.h:9719
ThisType & originatorUserId(StrRef value) noexcept
Trader ID.
Definition Messages.h:9766
static constexpr StrRef fixType() noexcept
FIX message type.
Definition Messages.h:9837
ThisType & reset() noexcept
Reset all variable-length and optional fields if any.
Definition Messages.h:9820
TraderLogoutRequest(void *data, EncodedLength length, SchemaVersion version=Schema::Version)
Initializes an instance over the given memory block.
Definition Messages.h:9707
EncodedLength calculateBinarySize() const noexcept
Definition Messages.h:9860
TraderLogoutRequest(void *data, EncodedLength length, NoInit)
Creates an instance over the given memory block.
Definition Messages.h:9729
ThisType & resetVariableFields() noexcept
Reset all variable-length fields if any.
Definition Messages.h:9814