F´ Flight Software - C/C++ Documentation
A framework for building embedded system applications to NASA flight quality standards.
HeaderSerializableAc.cpp
Go to the documentation of this file.
1 // ======================================================================
2 // \title HeaderSerializableAc.cpp
3 // \author Generated by fpp-to-cpp
4 // \brief cpp file for Header struct
5 // ======================================================================
6 
7 #include "Fw/Types/Assert.hpp"
9 
10 namespace Svc {
11 
12  namespace Fpy {
13 
14  // ----------------------------------------------------------------------
15  // Constructors
16  // ----------------------------------------------------------------------
17 
18  Header ::
20  Serializable(),
21  m_majorVersion(),
22  m_minorVersion(),
23  m_patchVersion(),
24  m_schemaVersion(),
25  m_argumentCount(),
26  m_statementCount(),
27  m_bodySize()
28  {
29 
30  }
31 
32  Header ::
34  U8 majorVersion,
35  U8 minorVersion,
36  U8 patchVersion,
37  U8 schemaVersion,
38  U8 argumentCount,
39  U16 statementCount,
40  U32 bodySize
41  ) :
42  Serializable(),
43  m_majorVersion(majorVersion),
44  m_minorVersion(minorVersion),
45  m_patchVersion(patchVersion),
46  m_schemaVersion(schemaVersion),
47  m_argumentCount(argumentCount),
48  m_statementCount(statementCount),
49  m_bodySize(bodySize)
50  {
51 
52  }
53 
54  Header ::
55  Header(const Header& obj) :
56  Serializable(),
57  m_majorVersion(obj.m_majorVersion),
58  m_minorVersion(obj.m_minorVersion),
59  m_patchVersion(obj.m_patchVersion),
60  m_schemaVersion(obj.m_schemaVersion),
61  m_argumentCount(obj.m_argumentCount),
62  m_statementCount(obj.m_statementCount),
63  m_bodySize(obj.m_bodySize)
64  {
65 
66  }
67 
68  // ----------------------------------------------------------------------
69  // Operators
70  // ----------------------------------------------------------------------
71 
73  operator=(const Header& obj)
74  {
75  if (this == &obj) {
76  return *this;
77  }
78 
80  return *this;
81  }
82 
83  bool Header ::
84  operator==(const Header& obj) const
85  {
86  if (this == &obj) { return true; }
87  return (
88  (this->m_majorVersion == obj.m_majorVersion) &&
89  (this->m_minorVersion == obj.m_minorVersion) &&
90  (this->m_patchVersion == obj.m_patchVersion) &&
91  (this->m_schemaVersion == obj.m_schemaVersion) &&
92  (this->m_argumentCount == obj.m_argumentCount) &&
93  (this->m_statementCount == obj.m_statementCount) &&
94  (this->m_bodySize == obj.m_bodySize)
95  );
96  }
97 
98  bool Header ::
99  operator!=(const Header& obj) const
100  {
101  return !(*this == obj);
102  }
103 
104 #ifdef BUILD_UT
105 
106  std::ostream& operator<<(std::ostream& os, const Header& obj) {
107  Fw::String s;
108  obj.toString(s);
109  os << s.toChar();
110  return os;
111  }
112 
113 #endif
114 
115  // ----------------------------------------------------------------------
116  // Member functions
117  // ----------------------------------------------------------------------
118 
121  Fw::SerialBufferBase& buffer,
122  Fw::Endianness mode
123  ) const
124  {
125  Fw::SerializeStatus status;
126 
127  status = buffer.serializeFrom(this->m_majorVersion, mode);
128  if (status != Fw::FW_SERIALIZE_OK) {
129  return status;
130  }
131  status = buffer.serializeFrom(this->m_minorVersion, mode);
132  if (status != Fw::FW_SERIALIZE_OK) {
133  return status;
134  }
135  status = buffer.serializeFrom(this->m_patchVersion, mode);
136  if (status != Fw::FW_SERIALIZE_OK) {
137  return status;
138  }
139  status = buffer.serializeFrom(this->m_schemaVersion, mode);
140  if (status != Fw::FW_SERIALIZE_OK) {
141  return status;
142  }
143  status = buffer.serializeFrom(this->m_argumentCount, mode);
144  if (status != Fw::FW_SERIALIZE_OK) {
145  return status;
146  }
147  status = buffer.serializeFrom(this->m_statementCount, mode);
148  if (status != Fw::FW_SERIALIZE_OK) {
149  return status;
150  }
151  status = buffer.serializeFrom(this->m_bodySize, mode);
152  if (status != Fw::FW_SERIALIZE_OK) {
153  return status;
154  }
155 
156  return status;
157  }
158 
161  Fw::SerialBufferBase& buffer,
162  Fw::Endianness mode
163  )
164  {
165  Fw::SerializeStatus status;
166 
167  status = buffer.deserializeTo(this->m_majorVersion, mode);
168  if (status != Fw::FW_SERIALIZE_OK) {
169  return status;
170  }
171  status = buffer.deserializeTo(this->m_minorVersion, mode);
172  if (status != Fw::FW_SERIALIZE_OK) {
173  return status;
174  }
175  status = buffer.deserializeTo(this->m_patchVersion, mode);
176  if (status != Fw::FW_SERIALIZE_OK) {
177  return status;
178  }
179  status = buffer.deserializeTo(this->m_schemaVersion, mode);
180  if (status != Fw::FW_SERIALIZE_OK) {
181  return status;
182  }
183  status = buffer.deserializeTo(this->m_argumentCount, mode);
184  if (status != Fw::FW_SERIALIZE_OK) {
185  return status;
186  }
187  status = buffer.deserializeTo(this->m_statementCount, mode);
188  if (status != Fw::FW_SERIALIZE_OK) {
189  return status;
190  }
191  status = buffer.deserializeTo(this->m_bodySize, mode);
192  if (status != Fw::FW_SERIALIZE_OK) {
193  return status;
194  }
195 
196  return status;
197  }
198 
201  {
202  FwSizeType size = 0;
203  size += sizeof(U8);
204  size += sizeof(U8);
205  size += sizeof(U8);
206  size += sizeof(U8);
207  size += sizeof(U8);
208  size += sizeof(U16);
209  size += sizeof(U32);
210  return size;
211  }
212 
213 #if FW_SERIALIZABLE_TO_STRING
214 
215  void Header ::
216  toString(Fw::StringBase& sb) const
217  {
218  Fw::String tmp;
219  sb = "( ";
220 
221  // Format majorVersion
222  sb += "majorVersion = ";
223  tmp.format("%" PRIu8 "", this->m_majorVersion);
224  sb += tmp;
225  sb += ", ";
226 
227  // Format minorVersion
228  sb += "minorVersion = ";
229  tmp.format("%" PRIu8 "", this->m_minorVersion);
230  sb += tmp;
231  sb += ", ";
232 
233  // Format patchVersion
234  sb += "patchVersion = ";
235  tmp.format("%" PRIu8 "", this->m_patchVersion);
236  sb += tmp;
237  sb += ", ";
238 
239  // Format schemaVersion
240  sb += "schemaVersion = ";
241  tmp.format("%" PRIu8 "", this->m_schemaVersion);
242  sb += tmp;
243  sb += ", ";
244 
245  // Format argumentCount
246  sb += "argumentCount = ";
247  tmp.format("%" PRIu8 "", this->m_argumentCount);
248  sb += tmp;
249  sb += ", ";
250 
251  // Format statementCount
252  sb += "statementCount = ";
253  tmp.format("%" PRIu16 "", this->m_statementCount);
254  sb += tmp;
255  sb += ", ";
256 
257  // Format bodySize
258  sb += "bodySize = ";
259  tmp.format("%" PRIu32 "", this->m_bodySize);
260  sb += tmp;
261  sb += " )";
262  }
263 
264 #endif
265 
266  // ----------------------------------------------------------------------
267  // Setter functions
268  // ----------------------------------------------------------------------
269 
270  void Header ::
272  U8 majorVersion,
273  U8 minorVersion,
274  U8 patchVersion,
275  U8 schemaVersion,
276  U8 argumentCount,
277  U16 statementCount,
278  U32 bodySize
279  )
280  {
281  this->m_majorVersion = majorVersion;
282  this->m_minorVersion = minorVersion;
283  this->m_patchVersion = patchVersion;
284  this->m_schemaVersion = schemaVersion;
285  this->m_argumentCount = argumentCount;
286  this->m_statementCount = statementCount;
287  this->m_bodySize = bodySize;
288  }
289 
290  void Header ::
291  set_majorVersion(U8 majorVersion)
292  {
293  this->m_majorVersion = majorVersion;
294  }
295 
296  void Header ::
297  set_minorVersion(U8 minorVersion)
298  {
299  this->m_minorVersion = minorVersion;
300  }
301 
302  void Header ::
303  set_patchVersion(U8 patchVersion)
304  {
305  this->m_patchVersion = patchVersion;
306  }
307 
308  void Header ::
309  set_schemaVersion(U8 schemaVersion)
310  {
311  this->m_schemaVersion = schemaVersion;
312  }
313 
314  void Header ::
315  set_argumentCount(U8 argumentCount)
316  {
317  this->m_argumentCount = argumentCount;
318  }
319 
320  void Header ::
321  set_statementCount(U16 statementCount)
322  {
323  this->m_statementCount = statementCount;
324  }
325 
326  void Header ::
327  set_bodySize(U32 bodySize)
328  {
329  this->m_bodySize = bodySize;
330  }
331 
332  }
333 
334 }
Serialization/Deserialization operation was successful.
void set_statementCount(U16 statementCount)
Set member statementCount.
void set_bodySize(U32 bodySize)
Set member bodySize.
void set_patchVersion(U8 patchVersion)
Set member patchVersion.
bool operator!=(const Header &obj) const
Inequality operator.
PlatformSizeType FwSizeType
Fw::SerializeStatus serializeTo(Fw::SerialBufferBase &buffer, Fw::Endianness mode=Fw::Endianness::BIG) const
Serialization.
const char * toChar() const
Convert to a C-style char*.
Definition: String.hpp:50
FwSizeType serializedSize() const
Get the dynamic serialized size of the struct.
Fw::SerializeStatus deserializeFrom(Fw::SerialBufferBase &buffer, Fw::Endianness mode=Fw::Endianness::BIG)
Deserialization.
void set_argumentCount(U8 argumentCount)
Set member argumentCount.
void set_schemaVersion(U8 schemaVersion)
Set member schemaVersion.
virtual SerializeStatus serializeFrom(U8 val, Endianness mode=Endianness::BIG)=0
Serialize an 8-bit unsigned integer value.
void set_minorVersion(U8 minorVersion)
Set member minorVersion.
SerializeStatus
forward declaration for string
virtual SerializeStatus deserializeTo(U8 &val, Endianness mode=Endianness::BIG)=0
Deserialize an 8-bit unsigned integer value.
void set(U8 majorVersion, U8 minorVersion, U8 patchVersion, U8 schemaVersion, U8 argumentCount, U16 statementCount, U32 bodySize)
Set all members.
FormatStatus format(const CHAR *formatString,...)
write formatted string to buffer
Definition: StringBase.cpp:39
uint8_t U8
8-bit unsigned integer
Definition: BasicTypes.h:53
bool operator==(const Header &obj) const
Equality operator.
Header()
Constructor (default value)
RateGroupDivider component implementation.
Header & operator=(const Header &obj)
Copy assignment operator.
Endianness
void set_majorVersion(U8 majorVersion)
Set member majorVersion.