OnixS C++ CME MDP Conflated TCP Handler 1.3.6
API Documentation
Loading...
Searching...
No Matches
Typification.h
Go to the documentation of this file.
1// Copyright Onix Solutions Limited [OnixS]. All rights reserved.
2//
3// This software owned by Onix Solutions Limited [OnixS] and is
4// protected by copyright law and international copyright treaties.
5//
6// Access to and use of the software is governed by the terms of the applicable
7// OnixS Software Services Agreement (the Agreement) and Customer end user license
8// agreements granting a non-assignable, non-transferable and non-exclusive license
9// to use the software for it's own data processing purposes under the terms defined
10// in the Agreement.
11//
12// Except as otherwise granted within the terms of the Agreement, copying or
13// reproduction of any part of this source code or associated reference material
14// to any other location for further reproduction or redistribution, and any
15// amendments to this copyright notice, are expressly prohibited.
16//
17// Any reproduction or redistribution for sale or hiring of the Software not in
18// accordance with the terms of the Agreement is a violation of copyright law.
19//
20
21#pragma once
22
24
26
28template
29 <
30 class Message
31 >
32inline
35Message
37 const SbeMessage& message)
38{
39 return Message(message);
40}
41
48template
49<
50 class Processor
51>
52inline
54bool
56 SbeMessage binary,
57 const 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
161 default:
162 return false;
163 }
164}
165
#define ONIXS_CONFLATEDTCP_MESSAGING_NAMESPACE_BEGIN
Definition ABI.h:140
#define ONIXS_CONFLATEDTCP_MESSAGING_NAMESPACE_END
Definition ABI.h:143
#define ONIXS_CONFLATEDTCP_PURE
Definition Compiler.h:189
#define ONIXS_CONFLATEDTCP_NODISCARD
Definition Compiler.h:185
MessageTemplateId templateId() const noexcept
Message typify(const SbeMessage &message)
Casts SBE-encoded message to a given type.
bool processTypified(SbeMessage binary, const Processor &processor)
Casts a given binary message according to template/type information and processes the cast messages b...