OnixS C++ CME iLink 3 Binary Order Entry Handler 1.18.9
API Documentation
Loading...
Searching...
No Matches
MessageSizeTraits.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
25
28
29
31
32#if defined(ONIXS_ILINK3_CXX11)
33
35template <typename Message>
37{
38 static constexpr bool UseCustomValue = true;
39
40 static constexpr
42 {
43 return
44 Message::blockLength(Message::Schema::Version)
46 + Message::getMinimalVariableFieldsSize(Message::Schema::Version);
47 }
48};
49
51template <typename Message>
53{
54 static constexpr bool UseCustomValue = true;
55
56 static constexpr
58 {
59 return
60 Message::blockLength(Message::Schema::Version)
62 }
63};
64
66template <typename Message> struct MaxMessageSizeTraits;
67
69template <>
70struct MaxMessageSizeTraits<Negotiate500> : HasEmptyCredentials<Negotiate500> {};
71
73template <>
74struct MaxMessageSizeTraits<Establish503> : HasEmptyCredentials<Establish503> {};
75
77template <>
78struct MaxMessageSizeTraits<Sequence506> : HasNoVariableFieldsOrGroups<Sequence506> {};
79
81template <>
82struct MaxMessageSizeTraits<Terminate507> : HasNoVariableFieldsOrGroups<Terminate507> {};
83
85template <>
86struct MaxMessageSizeTraits<Retransmission509> : HasNoVariableFieldsOrGroups<Retransmission509> {};
87
88#endif
89
#define ONIXS_ILINK3_MESSAGING_NAMESPACE_END
Definition ABI.h:144
#define ONIXS_ILINK3_MESSAGING_NAMESPACE_BEGIN
Definition ABI.h:140
Assume the credentials filed of the message is empty.