F´ Flight Software - C/C++ Documentation
A framework for building embedded system applications to NASA flight quality standards.
ComQueueDepthArrayAc.hpp
Go to the documentation of this file.
1 // ======================================================================
2 // \title ComQueueDepthArrayAc.hpp
3 // \author Generated by fpp-to-cpp
4 // \brief hpp file for ComQueueDepth array
5 // ======================================================================
6 
7 #ifndef Svc_ComQueueDepthArrayAc_HPP
8 #define Svc_ComQueueDepthArrayAc_HPP
9 
10 #include <initializer_list>
11 
12 #include "Fw/FPrimeBasicTypes.hpp"
15 #include "Fw/Types/String.hpp"
16 
17 namespace Svc {
18 
20  class ComQueueDepth :
21  public Fw::Serializable
22  {
23 
24  public:
25 
26  // ----------------------------------------------------------------------
27  // Types
28  // ----------------------------------------------------------------------
29 
31  using ElementType = U32;
32 
33  public:
34 
35  // ----------------------------------------------------------------------
36  // Constants
37  // ----------------------------------------------------------------------
38 
39  enum {
41  SIZE = 2,
43  ELEMENT_SERIALIZED_SIZE = sizeof(U32),
46  };
47 
48  public:
49 
50  // ----------------------------------------------------------------------
51  // Constructors
52  // ----------------------------------------------------------------------
53 
55  ComQueueDepth();
56 
59  const ElementType (&a)[SIZE]
60  );
61 
63  explicit ComQueueDepth(
64  const ElementType& e
65  );
66 
69  const std::initializer_list<ElementType>& il
70  );
71 
74  const ComQueueDepth& obj
75  );
76 
77  public:
78 
79  // ----------------------------------------------------------------------
80  // Operators
81  // ----------------------------------------------------------------------
82 
85  const FwSizeType i
86  );
87 
89  const ElementType& operator[](
90  const FwSizeType i
91  ) const;
92 
95  const ComQueueDepth& obj
96  );
97 
100  const ElementType (&a)[SIZE]
101  );
102 
105  const std::initializer_list<ElementType>& il
106  );
107 
110  const ElementType& e
111  );
112 
114  bool operator==(
115  const ComQueueDepth& obj
116  ) const;
117 
119  bool operator!=(
120  const ComQueueDepth& obj
121  ) const;
122 
123 #ifdef BUILD_UT
124 
126  friend std::ostream& operator<<(
127  std::ostream& os,
128  const ComQueueDepth& obj
129  );
130 
131 #endif
132 
133  public:
134 
135  // ----------------------------------------------------------------------
136  // Public member functions
137  // ----------------------------------------------------------------------
138 
141  Fw::SerialBufferBase& buffer,
143  ) const;
144 
147  Fw::SerialBufferBase& buffer,
149  );
150 
152  FwSizeType serializedSize() const;
153 
154 #if FW_SERIALIZABLE_TO_STRING
155 
157  void toString(
158  Fw::StringBase& sb
159  ) const;
160 
161 #endif
162 
163  private:
164 
165  // ----------------------------------------------------------------------
166  // Member variables
167  // ----------------------------------------------------------------------
168 
170  ElementType elements[SIZE];
171 
172  };
173 
174 }
175 
176 #endif
PlatformSizeType FwSizeType
The size of the serial representation.
ComQueueDepth & operator=(const ComQueueDepth &obj)
Copy assignment operator (object)
Array of queue depths for Fw::Com types.
SerializeStatus
forward declaration for string
The size of the array.
bool operator==(const ComQueueDepth &obj) const
Equality operator.
ElementType & operator[](const FwSizeType i)
Subscript operator.
Fw::SerializeStatus serializeTo(Fw::SerialBufferBase &buffer, Fw::Endianness mode=Fw::Endianness::BIG) const
Serialization.
Fw::SerializeStatus deserializeFrom(Fw::SerialBufferBase &buffer, Fw::Endianness mode=Fw::Endianness::BIG)
Deserialization.
FwSizeType serializedSize() const
Get the dynamic serialized size of the array.
bool operator!=(const ComQueueDepth &obj) const
Inequality operator.
ComQueueDepth()
Constructor (default value)
The serialized size of each element.
RateGroupDivider component implementation.
U32 ElementType
The element type.
Endianness
Big endian serialization.