OnixS C++ CME MDP Conflated UDP Handler 1.1.2
API documentation
Loading...
Searching...
No Matches
Typification.h
Go to the documentation of this file.
1// Copyright Onix Solutions Limited [OnixS]. All rights reserved.
2//
3// This software owned by Onix Solutions Limited [OnixS] and is
4// protected by copyright law and international copyright treaties.
5//
6// Access to and use of the software is governed by the terms of the applicable
7// OnixS Software Services Agreement (the Agreement) and Customer end user license
8// agreements granting a non-assignable, non-transferable and non-exclusive license
9// to use the software for it's own data processing purposes under the terms defined
10// in the Agreement.
11//
12// Except as otherwise granted within the terms of the Agreement, copying or
13// reproduction of any part of this source code or associated reference material
14// to any other location for further reproduction or redistribution, and any
15// amendments to this copyright notice, are expressly prohibited.
16//
17// Any reproduction or redistribution for sale or hiring of the Software not in
18// accordance with the terms of the Agreement is a violation of copyright law.
19//
20
21#pragma once
22
24
26
28template
29<
30 class Message
31>
32inline
33Message
35 const
36 BinaryMessage& message)
37{
38 return
39 Message(
40 message.encoded(),
41 message.encodedLength());
42}
43
50template
51<
52 class Processor
53>
54bool
56 const BinaryMessage& binary,
57 Processor& processor)
58{
59 switch (binary.templateId())
60 {
62 {
63 processor(
64 typify
66 (binary));
67
68 return true;
69 }
70
72 {
73 processor(
74 typify
76 (binary));
77
78 return true;
79 }
80
82 {
83 processor(
84 typify
86 (binary));
87
88 return true;
89 }
90
92 {
93 processor(
94 typify
96 (binary));
97
98 return true;
99 }
100
102 {
103 processor(
104 typify
106 (binary));
107
108 return true;
109 }
110
112 {
113 processor(
114 typify
116 (binary));
117
118 return true;
119 }
120
122 {
123 processor(
124 typify
126 (binary));
127
128 return true;
129 }
130
132 {
133 processor(
134 typify
136 (binary));
137
138 return true;
139 }
140
142 {
143 processor(
144 typify
146 (binary));
147
148 return true;
149 }
150
152 {
153 processor(
154 typify
156 (binary));
157
158 return true;
159 }
160
162 {
163 processor(
164 typify
166 (binary));
167
168 return true;
169 }
170
172 {
173 processor(
174 typify
176 (binary));
177
178 return true;
179 }
180
182 {
183 processor(
184 typify
186 (binary));
187
188 return true;
189 }
190
191 default:
192 return false;
193 }
194}
195
#define ONIXS_CONFLATEDUDP_NAMESPACE_END
Definition Bootstrap.h:157
#define ONIXS_CONFLATEDUDP_NAMESPACE_BEGIN
Definition Bootstrap.h:153
Encapsulates services for manipulating SBE-encoded messages.
EncodedLength encodedLength() const
Size of SBE-encoded message.
MessageTemplateId templateId() const
Template identifier of message being referenced.
const void * encoded() const
SBE-encoded message content.
bool processTypified(const BinaryMessage &binary, Processor &processor)
Message typify(const BinaryMessage &message)
Casts SBE-encoded message to given type.