OnixS C++ CME MDP Conflated TCP Handler  1.3.1
API Documentation
SimpleOpenFramingHeader.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 
27 // CME SBE Version 1.0 Little-endian
29 
30 ONIXS_CONFLATEDTCP_DATA_PACKING_BEGIN(1)
31 
32 /// Simple Open Framing Header.
34 {
35 public:
36  /// Initializes the header.
38  {
39  encodingType = CmeSbeEncodingType;
40  msgSequence = 1;
41  msgSendingTime = 0;
42  size(sz);
43  }
44 
45  /// \return the encoding type.
47  {
48  return encodingType;
49  }
50 
51  /// Sets the sequence.
53  {
54  msgSequence = val;
55  }
56 
57  /// \return the sequence
59  {
60  return msgSequence;
61  }
62 
63  /// Sets the sendingTime.
65  {
66  msgSendingTime = val;
67  }
68 
69  /// \return the sendingTime
71  {
72  return msgSendingTime;
73  }
74 
75  /// Sets the size.
77  {
78  msgSize = val;
79  }
80 
81  /// \return the size
83  {
84  return msgSize;
85  }
86 
87  private:
88  UInt16 encodingType;
89  UInt32 msgSequence;
90  UInt64 msgSendingTime;
91  UInt16 msgSize;
92 
93 };
94 
95 ONIXS_CONFLATEDTCP_DATA_PACKING_END
96 
97 /// Serializes SimpleOpenFramingHeader into a string.
99 void toStr(std::string&, const SimpleOpenFramingHeader&);
100 
101 inline
102 std::string toStr(const SimpleOpenFramingHeader& header)
103 {
104  std::string res;
105  toStr(res, header);
106  return res;
107 }
108 
#define ONIXS_CONFLATEDTCP_MESSAGING_NAMESPACE_END
Definition: ABI.h:144
#define ONIXS_CONFLATEDTCP_NOTHROW
Definition: Compiler.h:189
#define ONIXS_CONFLATEDTCP_EXPORTED
Definition: Compiler.h:187
std::string toStr(const SimpleOpenFramingHeader &header)
#define ONIXS_CONFLATEDTCP_CONST_OR_CONSTEXPR
Definition: Compiler.h:191
void sendingTime(UInt64 val) noexcept
Sets the sendingTime.
#define ONIXS_CONFLATEDTCP_LTWT_CLASS
Definition: ABI.h:84
#define ONIXS_CONFLATEDTCP_MESSAGING_NAMESPACE_BEGIN
Definition: ABI.h:140
void setup(UInt16 sz) noexcept
Initializes the header.