F´ Flight Software - C/C++ Documentation
A framework for building embedded system applications to NASA flight quality standards.
FrameContextSerializableAc.cpp
Go to the documentation of this file.
1 // ======================================================================
2 // \title FrameContextSerializableAc.cpp
3 // \author Generated by fpp-to-cpp
4 // \brief cpp file for FrameContext struct
5 // ======================================================================
6 
7 #include "Fw/Types/Assert.hpp"
9 
10 namespace ComCfg {
11 
12  // ----------------------------------------------------------------------
13  // Constructors
14  // ----------------------------------------------------------------------
15 
18  Serializable(),
19  m_comQueueIndex(),
20  m_apid(ComCfg::Apid::FW_PACKET_UNKNOWN),
21  m_hasSecHdr(),
22  m_sequenceCount(),
23  m_vcId(1),
24  m_pvn(),
25  m_sendNow()
26  {
27 
28  }
29 
32  FwIndexType comQueueIndex,
33  ComCfg::Apid::T apid,
34  bool hasSecHdr,
35  U16 sequenceCount,
36  U8 vcId,
37  ComCfg::Pvn::T pvn,
38  bool sendNow
39  ) :
40  Serializable(),
41  m_comQueueIndex(comQueueIndex),
42  m_apid(apid),
43  m_hasSecHdr(hasSecHdr),
44  m_sequenceCount(sequenceCount),
45  m_vcId(vcId),
46  m_pvn(pvn),
47  m_sendNow(sendNow)
48  {
49 
50  }
51 
54  Serializable(),
55  m_comQueueIndex(obj.m_comQueueIndex),
56  m_apid(obj.m_apid),
57  m_hasSecHdr(obj.m_hasSecHdr),
58  m_sequenceCount(obj.m_sequenceCount),
59  m_vcId(obj.m_vcId),
60  m_pvn(obj.m_pvn),
61  m_sendNow(obj.m_sendNow)
62  {
63 
64  }
65 
66  // ----------------------------------------------------------------------
67  // Operators
68  // ----------------------------------------------------------------------
69 
72  {
73  if (this == &obj) {
74  return *this;
75  }
76 
77  set(obj.m_comQueueIndex, obj.m_apid, obj.m_hasSecHdr, obj.m_sequenceCount, obj.m_vcId, obj.m_pvn, obj.m_sendNow);
78  return *this;
79  }
80 
81  bool FrameContext ::
82  operator==(const FrameContext& obj) const
83  {
84  if (this == &obj) { return true; }
85  return (
86  (this->m_comQueueIndex == obj.m_comQueueIndex) &&
87  (this->m_apid == obj.m_apid) &&
88  (this->m_hasSecHdr == obj.m_hasSecHdr) &&
89  (this->m_sequenceCount == obj.m_sequenceCount) &&
90  (this->m_vcId == obj.m_vcId) &&
91  (this->m_pvn == obj.m_pvn) &&
92  (this->m_sendNow == obj.m_sendNow)
93  );
94  }
95 
96  bool FrameContext ::
97  operator!=(const FrameContext& obj) const
98  {
99  return !(*this == obj);
100  }
101 
102 #ifdef BUILD_UT
103 
104  std::ostream& operator<<(std::ostream& os, const FrameContext& obj) {
105  Fw::String s;
106  obj.toString(s);
107  os << s.toChar();
108  return os;
109  }
110 
111 #endif
112 
113  // ----------------------------------------------------------------------
114  // Member functions
115  // ----------------------------------------------------------------------
116 
119  Fw::SerialBufferBase& buffer,
120  Fw::Endianness mode
121  ) const
122  {
123  Fw::SerializeStatus status;
124 
125  status = buffer.serializeFrom(this->m_comQueueIndex, mode);
126  if (status != Fw::FW_SERIALIZE_OK) {
127  return status;
128  }
129  status = buffer.serializeFrom(this->m_apid, mode);
130  if (status != Fw::FW_SERIALIZE_OK) {
131  return status;
132  }
133  status = buffer.serializeFrom(this->m_hasSecHdr, mode);
134  if (status != Fw::FW_SERIALIZE_OK) {
135  return status;
136  }
137  status = buffer.serializeFrom(this->m_sequenceCount, mode);
138  if (status != Fw::FW_SERIALIZE_OK) {
139  return status;
140  }
141  status = buffer.serializeFrom(this->m_vcId, mode);
142  if (status != Fw::FW_SERIALIZE_OK) {
143  return status;
144  }
145  status = buffer.serializeFrom(this->m_pvn, mode);
146  if (status != Fw::FW_SERIALIZE_OK) {
147  return status;
148  }
149  status = buffer.serializeFrom(this->m_sendNow, mode);
150  if (status != Fw::FW_SERIALIZE_OK) {
151  return status;
152  }
153 
154  return status;
155  }
156 
159  Fw::SerialBufferBase& buffer,
160  Fw::Endianness mode
161  )
162  {
163  Fw::SerializeStatus status;
164 
165  status = buffer.deserializeTo(this->m_comQueueIndex, mode);
166  if (status != Fw::FW_SERIALIZE_OK) {
167  return status;
168  }
169  status = buffer.deserializeTo(this->m_apid, mode);
170  if (status != Fw::FW_SERIALIZE_OK) {
171  return status;
172  }
173  status = buffer.deserializeTo(this->m_hasSecHdr, mode);
174  if (status != Fw::FW_SERIALIZE_OK) {
175  return status;
176  }
177  status = buffer.deserializeTo(this->m_sequenceCount, mode);
178  if (status != Fw::FW_SERIALIZE_OK) {
179  return status;
180  }
181  status = buffer.deserializeTo(this->m_vcId, mode);
182  if (status != Fw::FW_SERIALIZE_OK) {
183  return status;
184  }
185  status = buffer.deserializeTo(this->m_pvn, mode);
186  if (status != Fw::FW_SERIALIZE_OK) {
187  return status;
188  }
189  status = buffer.deserializeTo(this->m_sendNow, mode);
190  if (status != Fw::FW_SERIALIZE_OK) {
191  return status;
192  }
193 
194  return status;
195  }
196 
199  {
200  FwSizeType size = 0;
201  size += sizeof(FwIndexType);
203  size += sizeof(U8);
204  size += sizeof(U16);
205  size += sizeof(U8);
207  size += sizeof(U8);
208  return size;
209  }
210 
211 #if FW_SERIALIZABLE_TO_STRING
212 
213  void FrameContext ::
214  toString(Fw::StringBase& sb) const
215  {
216  Fw::String tmp;
217  sb = "( ";
218 
219  // Format comQueueIndex
220  sb += "comQueueIndex = ";
221  tmp.format("%" PRIi16 "", this->m_comQueueIndex);
222  sb += tmp;
223  sb += ", ";
224 
225  // Format apid
226  sb += "apid = ";
227  this->m_apid.toString(tmp);
228  sb += tmp;
229  sb += ", ";
230 
231  // Format hasSecHdr
232  sb += "hasSecHdr = ";
233  tmp.format("%d", this->m_hasSecHdr);
234  sb += tmp;
235  sb += ", ";
236 
237  // Format sequenceCount
238  sb += "sequenceCount = ";
239  tmp.format("%" PRIu16 "", this->m_sequenceCount);
240  sb += tmp;
241  sb += ", ";
242 
243  // Format vcId
244  sb += "vcId = ";
245  tmp.format("%" PRIu8 "", this->m_vcId);
246  sb += tmp;
247  sb += ", ";
248 
249  // Format pvn
250  sb += "pvn = ";
251  this->m_pvn.toString(tmp);
252  sb += tmp;
253  sb += ", ";
254 
255  // Format sendNow
256  sb += "sendNow = ";
257  tmp.format("%d", this->m_sendNow);
258  sb += tmp;
259  sb += " )";
260  }
261 
262 #endif
263 
264  // ----------------------------------------------------------------------
265  // Setter functions
266  // ----------------------------------------------------------------------
267 
268  void FrameContext ::
270  FwIndexType comQueueIndex,
271  ComCfg::Apid::T apid,
272  bool hasSecHdr,
273  U16 sequenceCount,
274  U8 vcId,
275  ComCfg::Pvn::T pvn,
276  bool sendNow
277  )
278  {
279  this->m_comQueueIndex = comQueueIndex;
280  this->m_apid = apid;
281  this->m_hasSecHdr = hasSecHdr;
282  this->m_sequenceCount = sequenceCount;
283  this->m_vcId = vcId;
284  this->m_pvn = pvn;
285  this->m_sendNow = sendNow;
286  }
287 
288  void FrameContext ::
290  {
291  this->m_comQueueIndex = comQueueIndex;
292  }
293 
294  void FrameContext ::
296  {
297  this->m_apid = apid;
298  }
299 
300  void FrameContext ::
301  set_hasSecHdr(bool hasSecHdr)
302  {
303  this->m_hasSecHdr = hasSecHdr;
304  }
305 
306  void FrameContext ::
307  set_sequenceCount(U16 sequenceCount)
308  {
309  this->m_sequenceCount = sequenceCount;
310  }
311 
312  void FrameContext ::
314  {
315  this->m_vcId = vcId;
316  }
317 
318  void FrameContext ::
320  {
321  this->m_pvn = pvn;
322  }
323 
324  void FrameContext ::
325  set_sendNow(bool sendNow)
326  {
327  this->m_sendNow = sendNow;
328  }
329 
330 }
Serialization/Deserialization operation was successful.
FrameContext()
Constructor (default value)
PlatformSizeType FwSizeType
Fw::SerializeStatus serializeTo(Fw::SerialBufferBase &buffer, Fw::Endianness mode=Fw::Endianness::BIG) const
Serialization.
void set_hasSecHdr(bool hasSecHdr)
Set member hasSecHdr.
T
The raw enum type.
Definition: PvnEnumAc.hpp:32
void set_apid(ComCfg::Apid::T apid)
Set member apid.
FwSizeType serializedSize() const
Get the dynamic serialized size of the struct.
void set_sendNow(bool sendNow)
Set member sendNow.
bool operator!=(const FrameContext &obj) const
Inequality operator.
virtual SerializeStatus serializeFrom(U8 val, Endianness mode=Endianness::BIG)=0
Serialize an 8-bit unsigned integer value.
SerializeStatus
forward declaration for string
The size of the serial representation.
Definition: ApidEnumAc.hpp:68
virtual SerializeStatus deserializeTo(U8 &val, Endianness mode=Endianness::BIG)=0
Deserialize an 8-bit unsigned integer value.
T
The raw enum type.
Definition: ApidEnumAc.hpp:32
void set_sequenceCount(U16 sequenceCount)
Set member sequenceCount.
void set_pvn(ComCfg::Pvn::T pvn)
Set member pvn.
void set(FwIndexType comQueueIndex, ComCfg::Apid::T apid, bool hasSecHdr, U16 sequenceCount, U8 vcId, ComCfg::Pvn::T pvn, bool sendNow)
Set all members.
The size of the serial representation.
Definition: PvnEnumAc.hpp:52
const char * toChar() const
Convert to a C-style char*.
Fw::SerializeStatus deserializeFrom(Fw::SerialBufferBase &buffer, Fw::Endianness mode=Fw::Endianness::BIG)
Deserialization.
FormatStatus format(const CHAR *formatString,...)
write formatted string to buffer
Definition: StringBase.cpp:58
void set_vcId(U8 vcId)
Set member vcId.
uint8_t U8
8-bit unsigned integer
Definition: BasicTypes.h:54
bool operator==(const FrameContext &obj) const
Equality operator.
void set_comQueueIndex(FwIndexType comQueueIndex)
Set member comQueueIndex.
PlatformIndexType FwIndexType
Type used to pass context info between components during framing/deframing.
Endianness
APIDs are 11 bits in the Space Packet protocol, so we use U16. Max value 7FF.
Definition: ApidEnumAc.hpp:18
FrameContext & operator=(const FrameContext &obj)
Copy assignment operator.