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(0),
20  m_apid(ComCfg::APID::FW_PACKET_UNKNOWN),
21  m_sequenceCount(0),
22  m_vcId(1)
23  {
24 
25  }
26 
29  FwIndexType comQueueIndex,
30  ComCfg::APID::T apid,
31  U16 sequenceCount,
32  U8 vcId
33  ) :
34  Serializable(),
35  m_comQueueIndex(comQueueIndex),
36  m_apid(apid),
37  m_sequenceCount(sequenceCount),
38  m_vcId(vcId)
39  {
40 
41  }
42 
45  Serializable(),
46  m_comQueueIndex(obj.m_comQueueIndex),
47  m_apid(obj.m_apid),
48  m_sequenceCount(obj.m_sequenceCount),
49  m_vcId(obj.m_vcId)
50  {
51 
52  }
53 
54  // ----------------------------------------------------------------------
55  // Operators
56  // ----------------------------------------------------------------------
57 
60  {
61  if (this == &obj) {
62  return *this;
63  }
64 
65  set(obj.m_comQueueIndex, obj.m_apid, obj.m_sequenceCount, obj.m_vcId);
66  return *this;
67  }
68 
69  bool FrameContext ::
70  operator==(const FrameContext& obj) const
71  {
72  if (this == &obj) { return true; }
73  return (
74  (this->m_comQueueIndex == obj.m_comQueueIndex) &&
75  (this->m_apid == obj.m_apid) &&
76  (this->m_sequenceCount == obj.m_sequenceCount) &&
77  (this->m_vcId == obj.m_vcId)
78  );
79  }
80 
81  bool FrameContext ::
82  operator!=(const FrameContext& obj) const
83  {
84  return !(*this == obj);
85  }
86 
87 #ifdef BUILD_UT
88 
89  std::ostream& operator<<(std::ostream& os, const FrameContext& obj) {
90  Fw::String s;
91  obj.toString(s);
92  os << s.toChar();
93  return os;
94  }
95 
96 #endif
97 
98  // ----------------------------------------------------------------------
99  // Member functions
100  // ----------------------------------------------------------------------
101 
104  {
105  Fw::SerializeStatus status;
106 
107  status = buffer.serialize(this->m_comQueueIndex);
108  if (status != Fw::FW_SERIALIZE_OK) {
109  return status;
110  }
111  status = buffer.serialize(this->m_apid);
112  if (status != Fw::FW_SERIALIZE_OK) {
113  return status;
114  }
115  status = buffer.serialize(this->m_sequenceCount);
116  if (status != Fw::FW_SERIALIZE_OK) {
117  return status;
118  }
119  status = buffer.serialize(this->m_vcId);
120  if (status != Fw::FW_SERIALIZE_OK) {
121  return status;
122  }
123 
124  return status;
125  }
126 
129  {
130  Fw::SerializeStatus status;
131 
132  status = buffer.deserialize(this->m_comQueueIndex);
133  if (status != Fw::FW_SERIALIZE_OK) {
134  return status;
135  }
136  status = buffer.deserialize(this->m_apid);
137  if (status != Fw::FW_SERIALIZE_OK) {
138  return status;
139  }
140  status = buffer.deserialize(this->m_sequenceCount);
141  if (status != Fw::FW_SERIALIZE_OK) {
142  return status;
143  }
144  status = buffer.deserialize(this->m_vcId);
145  if (status != Fw::FW_SERIALIZE_OK) {
146  return status;
147  }
148 
149  return status;
150  }
151 
152 #if FW_SERIALIZABLE_TO_STRING
153 
154  void FrameContext ::
155  toString(Fw::StringBase& sb) const
156  {
157  Fw::String tmp;
158  sb = "( ";
159 
160  // Format comQueueIndex
161  sb += "comQueueIndex = ";
162  tmp.format("%" PRIi16 "", this->m_comQueueIndex);
163  sb += tmp;
164  sb += ", ";
165 
166  // Format apid
167  sb += "apid = ";
168  this->m_apid.toString(tmp);
169  sb += tmp;
170  sb += ", ";
171 
172  // Format sequenceCount
173  sb += "sequenceCount = ";
174  tmp.format("%" PRIu16 "", this->m_sequenceCount);
175  sb += tmp;
176  sb += ", ";
177 
178  // Format vcId
179  sb += "vcId = ";
180  tmp.format("%" PRIu8 "", this->m_vcId);
181  sb += tmp;
182  sb += " )";
183  }
184 
185 #endif
186 
187  // ----------------------------------------------------------------------
188  // Setter functions
189  // ----------------------------------------------------------------------
190 
191  void FrameContext ::
193  FwIndexType comQueueIndex,
194  ComCfg::APID::T apid,
195  U16 sequenceCount,
196  U8 vcId
197  )
198  {
199  this->m_comQueueIndex = comQueueIndex;
200  this->m_apid = apid;
201  this->m_sequenceCount = sequenceCount;
202  this->m_vcId = vcId;
203  }
204 
205  void FrameContext ::
207  {
208  this->m_comQueueIndex = comQueueIndex;
209  }
210 
211  void FrameContext ::
213  {
214  this->m_apid = apid;
215  }
216 
217  void FrameContext ::
218  setsequenceCount(U16 sequenceCount)
219  {
220  this->m_sequenceCount = sequenceCount;
221  }
222 
223  void FrameContext ::
225  {
226  this->m_vcId = vcId;
227  }
228 
229 }
Serialization/Deserialization operation was successful.
void setapid(ComCfg::APID::T apid)
Set member apid.
void setsequenceCount(U16 sequenceCount)
Set member sequenceCount.
FrameContext()
Constructor (default value)
SerializeStatus serialize(U8 val)
serialize 8-bit unsigned int
const char * toChar() const
Definition: String.hpp:50
void setvcId(U8 vcId)
Set member vcId.
bool operator!=(const FrameContext &obj) const
Inequality operator.
SerializeStatus
forward declaration for string
T
The raw enum type.
Definition: APIDEnumAc.hpp:31
Fw::SerializeStatus deserialize(Fw::SerializeBufferBase &buffer)
Deserialization.
Fw::SerializeStatus serialize(Fw::SerializeBufferBase &buffer) const
Serialization.
FormatStatus format(const CHAR *formatString,...)
write formatted string to buffer
Definition: StringBase.cpp:55
uint8_t U8
8-bit unsigned integer
Definition: BasicTypes.h:56
bool operator==(const FrameContext &obj) const
Equality operator.
void set(FwIndexType comQueueIndex, ComCfg::APID::T apid, U16 sequenceCount, U8 vcId)
Set all members.
SerializeStatus deserialize(U8 &val)
deserialize 8-bit unsigned int
PlatformIndexType FwIndexType
APIDs are 11 bits in the Space Packet protocol, so we use U16. Max value 7FF.
Definition: APIDEnumAc.hpp:17
Type used to pass context info between components during framing/deframing.
void setcomQueueIndex(FwIndexType comQueueIndex)
Set member comQueueIndex.
FrameContext & operator=(const FrameContext &obj)
Copy assignment operator.