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
ComQueueDepth & operator=(const ComQueueDepth &obj)
Copy assignment operator (object)
Array of queue depths for Fw::Com types.
SerializeStatus
forward declaration for string
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.
The size of the serial representation.
ComQueueDepth()
Constructor (default value)
The serialized size of each element.
The size of the array.
RateGroupDivider component implementation.
U32 ElementType
The element type.
Endianness
Big endian serialization.