F´ Flight Software - C/C++ Documentation
A framework for building embedded system applications to NASA flight quality standards.
DirectiveIdEnumAc.hpp
Go to the documentation of this file.
1 // ======================================================================
2 // \title DirectiveIdEnumAc.hpp
3 // \author Generated by fpp-to-cpp
4 // \brief hpp file for DirectiveId enum
5 // ======================================================================
6 
7 #ifndef Svc_Fpy_DirectiveIdEnumAc_HPP
8 #define Svc_Fpy_DirectiveIdEnumAc_HPP
9 
10 #include "Fw/FPrimeBasicTypes.hpp"
12 #include "Fw/Types/String.hpp"
13 
14 namespace Svc {
15 
16  namespace Fpy {
17 
18  class DirectiveId :
19  public Fw::Serializable
20  {
21 
22  public:
23 
24  // ----------------------------------------------------------------------
25  // Types
26  // ----------------------------------------------------------------------
27 
29  typedef U8 SerialType;
30 
32  enum T {
33  INVALID = 0,
34  WAIT_REL = 1,
35  WAIT_ABS = 2,
36  GOTO = 3,
37  IF = 4,
38  NO_OP = 5,
40  PUSH_PRM = 7,
41  CONST_CMD = 8,
42  OR = 9,
43  AND = 10,
44  IEQ = 11,
45  INE = 12,
46  ULT = 13,
47  ULE = 14,
48  UGT = 15,
49  UGE = 16,
50  SLT = 17,
51  SLE = 18,
52  SGT = 19,
53  SGE = 20,
54  FEQ = 21,
55  FNE = 22,
56  FLT = 23,
57  FLE = 24,
58  FGT = 25,
59  FGE = 26,
60  NOT = 27,
61  FPTOSI = 28,
62  FPTOUI = 29,
63  SITOFP = 30,
64  UITOFP = 31,
65  ADD = 32,
66  SUB = 33,
67  MUL = 34,
68  UDIV = 35,
69  SDIV = 36,
70  UMOD = 37,
71  SMOD = 38,
72  FADD = 39,
73  FSUB = 40,
74  FMUL = 41,
75  FDIV = 42,
76  FPOW = 43,
77  FLOG = 44,
78  FMOD = 45,
79  FPEXT = 46,
80  FPTRUNC = 47,
81  SIEXT_8_64 = 48,
84  ZIEXT_8_64 = 51,
90  EXIT = 57,
91  ALLOCATE = 58,
93  LOAD_REL = 60,
94  PUSH_VAL = 61,
95  DISCARD = 62,
96  MEMCMP = 63,
97  STACK_CMD = 64,
99  PUSH_TIME = 66,
100  GET_FIELD = 67,
101  PEEK = 68,
102  STORE_REL = 69,
103  CALL = 70,
104  RETURN = 71,
105  LOAD_ABS = 72,
106  STORE_ABS = 73,
108  POP_EVENT = 75,
109  };
110 
112  typedef enum T t;
113 
114  public:
115 
116  // ----------------------------------------------------------------------
117  // Constants
118  // ----------------------------------------------------------------------
119 
120  enum {
125  };
126 
127  public:
128 
129  // ----------------------------------------------------------------------
130  // Constructors
131  // ----------------------------------------------------------------------
132 
135  {
136  this->e = INVALID;
137  }
138 
141  const enum T e1
142  )
143  {
144  this->e = e1;
145  }
146 
149  const DirectiveId& obj
150  )
151  {
152  this->e = obj.e;
153  }
154 
155  public:
156 
157  // ----------------------------------------------------------------------
158  // Operators
159  // ----------------------------------------------------------------------
160 
163  const DirectiveId& obj
164  );
165 
168  enum T e1
169  );
170 
172  operator enum T() const
173  {
174  return this->e;
175  }
176 
178  bool operator==(enum T e1) const
179  {
180  return this->e == e1;
181  }
182 
184  bool operator!=(enum T e1) const
185  {
186  return !(*this == e1);
187  }
188 
189 #ifdef BUILD_UT
190 
192  friend std::ostream& operator<<(
193  std::ostream& os,
194  const DirectiveId& obj
195  );
196 
197 #endif
198 
199  public:
200 
201  // ----------------------------------------------------------------------
202  // Member functions
203  // ----------------------------------------------------------------------
204 
206  bool isValid() const;
207 
210  Fw::SerialBufferBase& buffer,
212  ) const;
213 
216  Fw::SerialBufferBase& buffer,
218  );
219 
220 #if FW_SERIALIZABLE_TO_STRING
221 
223  void toString(
224  Fw::StringBase& sb
225  ) const;
226 
227 #endif
228 
229  public:
230 
231  // ----------------------------------------------------------------------
232  // Member variables
233  // ----------------------------------------------------------------------
234 
236  enum T e;
237 
238  };
239 
240  }
241 
242 }
243 
244 #endif
DirectiveId(const DirectiveId &obj)
Copy constructor.
DirectiveId()
Constructor (default value of INVALID)
The size of the serial representation.
U8 SerialType
The serial representation type.
Fw::SerializeStatus deserializeFrom(Fw::SerialBufferBase &buffer, Fw::Endianness mode=Fw::Endianness::BIG)
Deserialize raw enum value from SerialType.
SerializeStatus
forward declaration for string
enum T t
For backwards compatibility.
DirectiveId & operator=(const DirectiveId &obj)
Copy assignment operator (object)
enum T e
The raw enum value.
uint8_t U8
8-bit unsigned integer
Definition: BasicTypes.h:53
The number of enumerated constants.
DirectiveId(const enum T e1)
Constructor (user-provided value)
bool isValid() const
Check raw enum value for validity.
T
The raw enum type.
bool operator==(enum T e1) const
Equality operator.
Fw::SerializeStatus serializeTo(Fw::SerialBufferBase &buffer, Fw::Endianness mode=Fw::Endianness::BIG) const
Serialize raw enum value to SerialType.
RateGroupDivider component implementation.
bool operator!=(enum T e1) const
Inequality operator.
Endianness
Big endian serialization.