F´ Flight Software - C/C++ Documentation
A framework for building embedded system applications to NASA flight quality standards.
TCHeaderSerializableAc.hpp
Go to the documentation of this file.
1 // ======================================================================
2 // \title TCHeaderSerializableAc.hpp
3 // \author Generated by fpp-to-cpp
4 // \brief hpp file for TCHeader struct
5 // ======================================================================
6 
7 #ifndef Svc_Ccsds_TCHeaderSerializableAc_HPP
8 #define Svc_Ccsds_TCHeaderSerializableAc_HPP
9 
10 #include "Fw/FPrimeBasicTypes.hpp"
13 #include "Fw/Types/String.hpp"
14 
15 namespace Svc {
16 
17  namespace Ccsds {
18 
20  class TCHeader :
21  public Fw::Serializable
22  {
23 
24  public:
25 
26  // ----------------------------------------------------------------------
27  // Constants
28  // ----------------------------------------------------------------------
29 
30  enum {
33  sizeof(U16) +
34  sizeof(U16) +
35  sizeof(U8)
36  };
37 
38  public:
39 
40  // ----------------------------------------------------------------------
41  // Constructors
42  // ----------------------------------------------------------------------
43 
45  TCHeader();
46 
48  TCHeader(
49  U16 flagsAndScId,
50  U16 vcIdAndLength,
51  U8 frameSequenceNum
52  );
53 
55  TCHeader(
56  const TCHeader& obj
57  );
58 
59  public:
60 
61  // ----------------------------------------------------------------------
62  // Operators
63  // ----------------------------------------------------------------------
64 
67  const TCHeader& obj
68  );
69 
71  bool operator==(
72  const TCHeader& obj
73  ) const;
74 
76  bool operator!=(
77  const TCHeader& obj
78  ) const;
79 
80 #ifdef BUILD_UT
81 
83  friend std::ostream& operator<<(
84  std::ostream& os,
85  const TCHeader& obj
86  );
87 
88 #endif
89 
90  public:
91 
92  // ----------------------------------------------------------------------
93  // Member functions
94  // ----------------------------------------------------------------------
95 
98  Fw::SerialBufferBase& buffer,
100  ) const;
101 
104  Fw::SerialBufferBase& buffer,
106  );
107 
109  FwSizeType serializedSize() const;
110 
111 #if FW_SERIALIZABLE_TO_STRING
112 
114  void toString(
115  Fw::StringBase& sb
116  ) const;
117 
118 #endif
119 
120  // ----------------------------------------------------------------------
121  // Getter functions
122  // ----------------------------------------------------------------------
123 
125  U16 get_flagsAndScId() const
126  {
127  return this->m_flagsAndScId;
128  }
129 
131  U16 get_vcIdAndLength() const
132  {
133  return this->m_vcIdAndLength;
134  }
135 
138  {
139  return this->m_frameSequenceNum;
140  }
141 
142  // ----------------------------------------------------------------------
143  // Setter functions
144  // ----------------------------------------------------------------------
145 
147  void set(
148  U16 flagsAndScId,
149  U16 vcIdAndLength,
150  U8 frameSequenceNum
151  );
152 
154  void set_flagsAndScId(U16 flagsAndScId);
155 
157  void set_vcIdAndLength(U16 vcIdAndLength);
158 
160  void set_frameSequenceNum(U8 frameSequenceNum);
161 
162  protected:
163 
164  // ----------------------------------------------------------------------
165  // Member variables
166  // ----------------------------------------------------------------------
167 
171 
172  };
173 
174  }
175 
176 }
177 
178 #endif
TCHeader()
Constructor (default value)
PlatformSizeType FwSizeType
The size of the serial representation.
void set_frameSequenceNum(U8 frameSequenceNum)
Set member frameSequenceNum.
void set_vcIdAndLength(U16 vcIdAndLength)
Set member vcIdAndLength.
SerializeStatus
forward declaration for string
bool operator!=(const TCHeader &obj) const
Inequality operator.
U16 get_flagsAndScId() const
Get member flagsAndScId.
Describes the frame header format for a Telecommand (TC) Transfer Frame header.
U16 get_vcIdAndLength() const
Get member vcIdAndLength.
TCHeader & operator=(const TCHeader &obj)
Copy assignment operator.
Fw::SerializeStatus deserializeFrom(Fw::SerialBufferBase &buffer, Fw::Endianness mode=Fw::Endianness::BIG)
Deserialization.
uint8_t U8
8-bit unsigned integer
Definition: BasicTypes.h:53
Fw::SerializeStatus serializeTo(Fw::SerialBufferBase &buffer, Fw::Endianness mode=Fw::Endianness::BIG) const
Serialization.
void set_flagsAndScId(U16 flagsAndScId)
Set member flagsAndScId.
FwSizeType serializedSize() const
Get the dynamic serialized size of the struct.
bool operator==(const TCHeader &obj) const
Equality operator.
RateGroupDivider component implementation.
Endianness
U8 get_frameSequenceNum() const
Get member frameSequenceNum.
Big endian serialization.