OnixS C++ CBOE CFE Binary Order Entry (BOE) Handler 1.12.2
API Documentation
Loading...
Searching...
No Matches
NewComplexInstrumentAccepted.h
Go to the documentation of this file.
1/*
2* Copyright Onix Solutions Limited [OnixS]. All rights reserved.
3*
4* This software owned by Onix Solutions Limited [OnixS] and is protected by copyright law
5* and international copyright treaties.
6*
7* Access to and use of the software is governed by the terms of the applicable ONIXS Software
8* Services Agreement (the Agreement) and Customer end user license agreements granting
9* a non-assignable, non-transferable and non-exclusive license to use the software
10* for it's own data processing purposes under the terms defined in the Agreement.
11*
12* Except as otherwise granted within the terms of the Agreement, copying or reproduction of any part
13* of this source code or associated reference material to any other location for further reproduction
14* or redistribution, and any amendments to this copyright notice, are expressly prohibited.
15*
16* Any reproduction or redistribution for sale or hiring of the Software not in accordance with
17* the terms of the Agreement is a violation of copyright law.
18*/
19
20#pragma once
21
22#include <vector>
23
28
29
30namespace OnixS {
31namespace CboeCFE {
32namespace Trading {
33namespace BOE {
34
36 struct ONIXS_CBOE_CFE_BOE_API NewComplexInstrumentAccepted : public BinaryMessage
37 {
40 {
41 return ordinary<DateTime>(0);
42 }
43
46 {
47 return fixedStr<20>(8);
48 }
49
51 StrRef symbol() const
52 {
53 return fixedStr<8>(28);
54 }
55
58 {
59 return ordinary<Binary4>(36);
60 }
61
64 {
65 return ordinary<Binary1>(40);
66 }
67
68 struct Leg : public BinaryMessage
69 {
72 {
73 return fixedStr<8>(0);
74 }
75
78 {
79 return fixedStr<16>(8);
80 }
81
84 {
85 return ordinary<Binary4>(24);
86 }
87
90 {
91 return fixedStr<1>(28);
92 }
93
95 Leg(const void* data, MessageSize size)
96 : BinaryMessage(data, size)
97 {
98 }
99 };
100
102 Leg legs(MessageSize index) const
103 {
104 if (index >= legCnt())
105 throw std::out_of_range("index");
106 return submessage<Leg>(40 + 1 + 29 * index, 29);
107 }
108
111 : BinaryMessage(data, size)
112 {
113 }
114 };
115
117 ONIXS_CBOE_CFE_BOE_API void toStr(std::string&, const NewComplexInstrumentAccepted&);
118
120 inline std::string toStr(const NewComplexInstrumentAccepted& msg)
121 {
122 std::string str;
123 toStr(str, msg);
124 return str;
125 }
126
127}
128}
129}
130}
const SubMessage submessage(MessageSize offset, MessageSize size) const
BinaryMessage()
Initializes blank instance referencing to nothing.
Provides efficient way of accessing text-based field values.
Definition String.h:46
Binary2 MessageSize
Aliases message length type.
void toStr(std::string &str, const FixedPointDecimal< Mantissa, Exponent > &number)
Serializes fixed-point decimal into a string.
Definition Decimal.h:156
Leg(const void *data, MessageSize size)
Initializes instance over given memory block.
StrRef securityDesc() const
Options on futures name that refers to the option underlying futures contract.
NewComplexInstrumentAccepted(const void *data, MessageSize size)
Initializes instance over given memory block.
Binary4 noOfComplexInstruments() const
The number of complex instruments.