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_sequenceCount(),
22  m_vcId(1),
23  m_pvn(),
24  m_sendNow()
25  {
26 
27  }
28 
31  FwIndexType comQueueIndex,
32  ComCfg::Apid::T apid,
33  U16 sequenceCount,
34  U8 vcId,
35  ComCfg::Pvn::T pvn,
36  bool sendNow
37  ) :
38  Serializable(),
39  m_comQueueIndex(comQueueIndex),
40  m_apid(apid),
41  m_sequenceCount(sequenceCount),
42  m_vcId(vcId),
43  m_pvn(pvn),
44  m_sendNow(sendNow)
45  {
46 
47  }
48 
51  Serializable(),
52  m_comQueueIndex(obj.m_comQueueIndex),
53  m_apid(obj.m_apid),
54  m_sequenceCount(obj.m_sequenceCount),
55  m_vcId(obj.m_vcId),
56  m_pvn(obj.m_pvn),
57  m_sendNow(obj.m_sendNow)
58  {
59 
60  }
61 
62  // ----------------------------------------------------------------------
63  // Operators
64  // ----------------------------------------------------------------------
65 
68  {
69  if (this == &obj) {
70  return *this;
71  }
72 
73  set(obj.m_comQueueIndex, obj.m_apid, obj.m_sequenceCount, obj.m_vcId, obj.m_pvn, obj.m_sendNow);
74  return *this;
75  }
76 
77  bool FrameContext ::
78  operator==(const FrameContext& obj) const
79  {
80  if (this == &obj) { return true; }
81  return (
82  (this->m_comQueueIndex == obj.m_comQueueIndex) &&
83  (this->m_apid == obj.m_apid) &&
84  (this->m_sequenceCount == obj.m_sequenceCount) &&
85  (this->m_vcId == obj.m_vcId) &&
86  (this->m_pvn == obj.m_pvn) &&
87  (this->m_sendNow == obj.m_sendNow)
88  );
89  }
90 
91  bool FrameContext ::
92  operator!=(const FrameContext& obj) const
93  {
94  return !(*this == obj);
95  }
96 
97 #ifdef BUILD_UT
98 
99  std::ostream& operator<<(std::ostream& os, const FrameContext& obj) {
100  Fw::String s;
101  obj.toString(s);
102  os << s.toChar();
103  return os;
104  }
105 
106 #endif
107 
108  // ----------------------------------------------------------------------
109  // Member functions
110  // ----------------------------------------------------------------------
111 
114  Fw::SerialBufferBase& buffer,
115  Fw::Endianness mode
116  ) const
117  {
118  Fw::SerializeStatus status;
119 
120  status = buffer.serializeFrom(this->m_comQueueIndex, mode);
121  if (status != Fw::FW_SERIALIZE_OK) {
122  return status;
123  }
124  status = buffer.serializeFrom(this->m_apid, mode);
125  if (status != Fw::FW_SERIALIZE_OK) {
126  return status;
127  }
128  status = buffer.serializeFrom(this->m_sequenceCount, mode);
129  if (status != Fw::FW_SERIALIZE_OK) {
130  return status;
131  }
132  status = buffer.serializeFrom(this->m_vcId, mode);
133  if (status != Fw::FW_SERIALIZE_OK) {
134  return status;
135  }
136  status = buffer.serializeFrom(this->m_pvn, mode);
137  if (status != Fw::FW_SERIALIZE_OK) {
138  return status;
139  }
140  status = buffer.serializeFrom(this->m_sendNow, mode);
141  if (status != Fw::FW_SERIALIZE_OK) {
142  return status;
143  }
144 
145  return status;
146  }
147 
150  Fw::SerialBufferBase& buffer,
151  Fw::Endianness mode
152  )
153  {
154  Fw::SerializeStatus status;
155 
156  status = buffer.deserializeTo(this->m_comQueueIndex, mode);
157  if (status != Fw::FW_SERIALIZE_OK) {
158  return status;
159  }
160  status = buffer.deserializeTo(this->m_apid, mode);
161  if (status != Fw::FW_SERIALIZE_OK) {
162  return status;
163  }
164  status = buffer.deserializeTo(this->m_sequenceCount, mode);
165  if (status != Fw::FW_SERIALIZE_OK) {
166  return status;
167  }
168  status = buffer.deserializeTo(this->m_vcId, mode);
169  if (status != Fw::FW_SERIALIZE_OK) {
170  return status;
171  }
172  status = buffer.deserializeTo(this->m_pvn, mode);
173  if (status != Fw::FW_SERIALIZE_OK) {
174  return status;
175  }
176  status = buffer.deserializeTo(this->m_sendNow, mode);
177  if (status != Fw::FW_SERIALIZE_OK) {
178  return status;
179  }
180 
181  return status;
182  }
183 
186  {
187  FwSizeType size = 0;
188  size += sizeof(FwIndexType);
190  size += sizeof(U16);
191  size += sizeof(U8);
193  size += sizeof(U8);
194  return size;
195  }
196 
197 #if FW_SERIALIZABLE_TO_STRING
198 
199  void FrameContext ::
200  toString(Fw::StringBase& sb) const
201  {
202  Fw::String tmp;
203  sb = "( ";
204 
205  // Format comQueueIndex
206  sb += "comQueueIndex = ";
207  tmp.format("%" PRIi16 "", this->m_comQueueIndex);
208  sb += tmp;
209  sb += ", ";
210 
211  // Format apid
212  sb += "apid = ";
213  this->m_apid.toString(tmp);
214  sb += tmp;
215  sb += ", ";
216 
217  // Format sequenceCount
218  sb += "sequenceCount = ";
219  tmp.format("%" PRIu16 "", this->m_sequenceCount);
220  sb += tmp;
221  sb += ", ";
222 
223  // Format vcId
224  sb += "vcId = ";
225  tmp.format("%" PRIu8 "", this->m_vcId);
226  sb += tmp;
227  sb += ", ";
228 
229  // Format pvn
230  sb += "pvn = ";
231  this->m_pvn.toString(tmp);
232  sb += tmp;
233  sb += ", ";
234 
235  // Format sendNow
236  sb += "sendNow = ";
237  tmp.format("%d", this->m_sendNow);
238  sb += tmp;
239  sb += " )";
240  }
241 
242 #endif
243 
244  // ----------------------------------------------------------------------
245  // Setter functions
246  // ----------------------------------------------------------------------
247 
248  void FrameContext ::
250  FwIndexType comQueueIndex,
251  ComCfg::Apid::T apid,
252  U16 sequenceCount,
253  U8 vcId,
254  ComCfg::Pvn::T pvn,
255  bool sendNow
256  )
257  {
258  this->m_comQueueIndex = comQueueIndex;
259  this->m_apid = apid;
260  this->m_sequenceCount = sequenceCount;
261  this->m_vcId = vcId;
262  this->m_pvn = pvn;
263  this->m_sendNow = sendNow;
264  }
265 
266  void FrameContext ::
268  {
269  this->m_comQueueIndex = comQueueIndex;
270  }
271 
272  void FrameContext ::
274  {
275  this->m_apid = apid;
276  }
277 
278  void FrameContext ::
279  set_sequenceCount(U16 sequenceCount)
280  {
281  this->m_sequenceCount = sequenceCount;
282  }
283 
284  void FrameContext ::
286  {
287  this->m_vcId = vcId;
288  }
289 
290  void FrameContext ::
292  {
293  this->m_pvn = pvn;
294  }
295 
296  void FrameContext ::
297  set_sendNow(bool sendNow)
298  {
299  this->m_sendNow = sendNow;
300  }
301 
302 }
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.
T
The raw enum type.
Definition: PvnEnumAc.hpp:31
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:67
virtual SerializeStatus deserializeTo(U8 &val, Endianness mode=Endianness::BIG)=0
Deserialize an 8-bit unsigned integer value.
void set(FwIndexType comQueueIndex, ComCfg::Apid::T apid, U16 sequenceCount, U8 vcId, ComCfg::Pvn::T pvn, bool sendNow)
Set all members.
T
The raw enum type.
Definition: ApidEnumAc.hpp:31
void set_sequenceCount(U16 sequenceCount)
Set member sequenceCount.
The size of the serial representation.
Definition: PvnEnumAc.hpp:51
void set_pvn(ComCfg::Pvn::T pvn)
Set member pvn.
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:39
void set_vcId(U8 vcId)
Set member vcId.
uint8_t U8
8-bit unsigned integer
Definition: BasicTypes.h:53
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:17
FrameContext & operator=(const FrameContext &obj)
Copy assignment operator.