F´ Flight Software - C/C++ Documentation
A framework for building embedded system applications to NASA flight quality standards.
BuffQueueDepthArrayAc.hpp
Go to the documentation of this file.
1 // ======================================================================
2 // \title BuffQueueDepthArrayAc.hpp
3 // \author Generated by fpp-to-cpp
4 // \brief hpp file for BuffQueueDepth array
5 // ======================================================================
6 
7 #ifndef Svc_BuffQueueDepthArrayAc_HPP
8 #define Svc_BuffQueueDepthArrayAc_HPP
9 
10 #include <initializer_list>
11 
12 #include "Fw/FPrimeBasicTypes.hpp"
15 #include "Fw/Types/String.hpp"
16 
17 namespace Svc {
18 
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 = 1,
43  ELEMENT_SERIALIZED_SIZE = sizeof(U32),
46  };
47 
48  public:
49 
50  // ----------------------------------------------------------------------
51  // Constructors
52  // ----------------------------------------------------------------------
53 
56 
59  const ElementType (&a)[SIZE]
60  );
61 
63  explicit BuffQueueDepth(
64  const ElementType& e
65  );
66 
69  const std::initializer_list<ElementType>& il
70  );
71 
74  const BuffQueueDepth& 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 BuffQueueDepth& 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 BuffQueueDepth& obj
116  ) const;
117 
119  bool operator!=(
120  const BuffQueueDepth& obj
121  ) const;
122 
123 #ifdef BUILD_UT
124 
126  friend std::ostream& operator<<(
127  std::ostream& os,
128  const BuffQueueDepth& obj
129  );
130 
131 #endif
132 
133  public:
134 
135  // ----------------------------------------------------------------------
136  // Public member functions
137  // ----------------------------------------------------------------------
138 
141  Fw::SerializeBufferBase& buffer
142  ) const;
143 
146  Fw::SerializeBufferBase& buffer
147  );
148 
150  FwSizeType serializedSize() const;
151 
152 #if FW_SERIALIZABLE_TO_STRING
153 
155  void toString(
156  Fw::StringBase& sb
157  ) const;
158 
159 #endif
160 
161  private:
162 
163  // ----------------------------------------------------------------------
164  // Member variables
165  // ----------------------------------------------------------------------
166 
168  ElementType elements[SIZE];
169 
170  };
171 
172 }
173 
174 #endif
Fw::SerializeStatus serializeTo(Fw::SerializeBufferBase &buffer) const
Serialization.
The serialized size of each element.
PlatformSizeType FwSizeType
bool operator==(const BuffQueueDepth &obj) const
Equality operator.
FwSizeType serializedSize() const
Get the dynamic serialized size of the array.
U32 ElementType
The element type.
SerializeStatus
forward declaration for string
ElementType & operator[](const FwSizeType i)
Subscript operator.
Array of queue depths for Fw::Buffer types.
Fw::SerializeStatus deserializeFrom(Fw::SerializeBufferBase &buffer)
Deserialization.
BuffQueueDepth & operator=(const BuffQueueDepth &obj)
Copy assignment operator (object)
The size of the serial representation.
BuffQueueDepth()
Constructor (default value)
forward declaration
RateGroupDivider component implementation.
bool operator!=(const BuffQueueDepth &obj) const
Inequality operator.