OnixS C++ Euronext Optiq MDG Handler  1.3.1
API documentation
Composites.h
Go to the documentation of this file.
1 // Copyright Onix Solutions Limited [OnixS]. All rights reserved.
2 //
3 // This software owned by Onix Solutions Limited [OnixS] and is
4 // protected by copyright law and international copyright treaties.
5 //
6 // Access to and use of the software is governed by the terms of the applicable
7 // OnixS Software Services Agreement (the Agreement) and Customer end user license
8 // agreements granting a non-assignable, non-transferable and non-exclusive license
9 // to use the software for it's own data processing purposes under the terms defined
10 // in the Agreement.
11 //
12 // Except as otherwise granted within the terms of the Agreement, copying or
13 // reproduction of any part of this source code or associated reference material
14 // to any other location for further reproduction or redistribution, and any
15 // amendments to this copyright notice, are expressly prohibited.
16 //
17 // Any reproduction or redistribution for sale or hiring of the Software not in
18 // accordance with the terms of the Agreement is a violation of copyright law.
19 //
20 
21 #pragma once
22 
24 
27 
29 ONIXS_EURONEXT_OPTIQMDG_DATA_PACKING_BEGIN(1)
30 
31 /// Message identifiers and length of message root.
33 {
34 public:
35  /// Size of the composite.
36  enum { Size = 8 };
37 
38  /// Type alias for the `BlockLength`.
40 
41  /// Type alias for the `TemplateId`.
42  typedef UInt16 TemplateId;
43 
44  /// Type alias for the `SchemaId`.
45  typedef UInt16 SchemaId;
46 
47  /// Type alias for the `Version`.
48  typedef UInt16 Version;
49 
50  /// \return the `blockLength` field.
52  BlockLength blockLength() const
54  {
55  return blockLength_;
56  }
57 
58  /// \return the `templateId` field.
60  TemplateId templateId() const
62  {
63  return templateId_;
64  }
65 
66  /// \return the `schemaId` field.
68  SchemaId schemaId() const
70  {
71  return schemaId_;
72  }
73 
74  /// \return the `version` field.
76  Version version() const
78  {
79  return version_;
80  }
81 
82 private:
83  BlockLength blockLength_;
84  TemplateId templateId_;
85  SchemaId schemaId_;
86  Version version_;
87 };
88 
89 
90 /// Repeating group dimensions.
92 {
93 public:
94  /// Size of the composite.
95  enum { Size = 2 };
96 
97  /// Type alias for the `BlockLength`.
98  typedef UInt8 BlockLength;
99 
100  /// Type alias for the `NumInGroup`.
101  ///
102  /// FIX type: NumInGroup.
103  typedef UInt8 NumInGroup;
104 
105  /// \return the `blockLength` field.
107  BlockLength blockLength() const
109  {
110  return blockLength_;
111  }
112 
113  /// \return the `numInGroup` field.
114  ///
115  /// FIX type: NumInGroup.
117  NumInGroup numInGroup() const
119  {
120  return numInGroup_;
121  }
122 
123 private:
124  BlockLength blockLength_;
125  NumInGroup numInGroup_;
126 };
127 
128 
129 /// Repeating group dimensions.
131 {
132 public:
133  /// Size of the composite.
134  enum { Size = 3 };
135 
136  /// Type alias for the `BlockLength`.
138 
139  /// Type alias for the `NumInGroup`.
140  ///
141  /// FIX type: NumInGroup.
142  typedef UInt8 NumInGroup;
143 
144  /// \return the `blockLength` field.
146  BlockLength blockLength() const
148  {
149  return blockLength_;
150  }
151 
152  /// \return the `numInGroup` field.
153  ///
154  /// FIX type: NumInGroup.
156  NumInGroup numInGroup() const
158  {
159  return numInGroup_;
160  }
161 
162 private:
163  BlockLength blockLength_;
164  NumInGroup numInGroup_;
165 };
166 
167 
169 
170 ONIXS_EURONEXT_OPTIQMDG_DATA_PACKING_END
171 
172 
#define ONIXS_EURONEXT_OPTIQMDG_MESSAGING_NAMESPACE_END
Definition: ABI.h:151
#define ONIXS_EURONEXT_OPTIQMDG_LTWT_CLASS
Definition: ABI.h:90
#define ONIXS_EURONEXT_OPTIQMDG_NOTHROW
Definition: Compiler.h:186
Message identifiers and length of message root.
Definition: Composites.h:32
#define ONIXS_EURONEXT_OPTIQMDG_NODISCARD
Definition: Compiler.h:195
#define ONIXS_EURONEXT_OPTIQMDG_MESSAGING_NAMESPACE_BEGIN
Definition: ABI.h:146
UInt16 TemplateId
Type alias for the TemplateId.
Definition: Composites.h:42
UInt16 BlockLength
Type alias for the BlockLength.
Definition: Composites.h:39