F´ Flight Software - C/C++ Documentation
A framework for building embedded system applications to NASA flight quality standards.
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
EnabledEnumAc.cpp
Go to the documentation of this file.
1 // ======================================================================
2 // \title EnabledEnumAc.cpp
3 // \author Generated by fpp-to-cpp
4 // \brief cpp file for Enabled enum
5 // ======================================================================
6 
7 #include <cstring>
8 #include <limits>
9 
10 #include "Fw/Types/Assert.hpp"
12 
13 namespace Fw {
14 
15  // ----------------------------------------------------------------------
16  // Operators
17  // ----------------------------------------------------------------------
18 
20  operator=(const Enabled& obj)
21  {
22  this->e = obj.e;
23  return *this;
24  }
25 
28  {
29  this->e = e1;
30  return *this;
31  }
32 
33 #ifdef BUILD_UT
34 
35  std::ostream& operator<<(std::ostream& os, const Enabled& obj) {
36  Fw::String s;
37  obj.toString(s);
38  os << s;
39  return os;
40  }
41 
42 #endif
43 
44  // ----------------------------------------------------------------------
45  // Member functions
46  // ----------------------------------------------------------------------
47 
48  bool Enabled ::
49  isValid() const
50  {
51  return ((e >= DISABLED) && (e <= ENABLED));
52  }
53 
56  {
57  const Fw::SerializeStatus status = buffer.serializeFrom(
58  static_cast<SerialType>(this->e)
59  );
60  return status;
61  }
62 
65  {
66  SerialType es;
67  Fw::SerializeStatus status = buffer.deserializeTo(es);
68  if (status == Fw::FW_SERIALIZE_OK) {
69  this->e = static_cast<T>(es);
70  if (!this->isValid()) {
72  }
73  }
74  return status;
75  }
76 
77 #if FW_SERIALIZABLE_TO_STRING
78 
79  void Enabled ::
80  toString(Fw::StringBase& sb) const
81  {
82  Fw::String s;
83  switch (e) {
84  case DISABLED:
85  s = "DISABLED";
86  break;
87  case ENABLED:
88  s = "ENABLED";
89  break;
90  default:
91  s = "[invalid]";
92  break;
93  }
94  sb.format("%s (%" PRIu8 ")", s.toChar(), e);
95  }
96 
97 #elif FW_ENABLE_TEXT_LOGGING
98 
99  void Enabled ::
100  toString(Fw::StringBase& sb) const
101  {
102  sb.format("%" PRIu8 "", e);
103  }
104 
105 #endif
106 
107 }
Serialization/Deserialization operation was successful.
Enabled state.
const char * toChar() const
Definition: String.hpp:50
bool isValid() const
Check raw enum value for validity.
Deserialization data had incorrect values (unexpected data types)
SerializeStatus
forward declaration for string
T e
The raw enum value.
EventManager_Enabled Enabled
Enabled and disabled states.
FormatStatus format(const CHAR *formatString,...)
write formatted string to buffer
Definition: StringBase.cpp:55
Fw::SerializeStatus serializeTo(Fw::SerializeBufferBase &buffer) const
Serialize raw enum value to SerialType.
Fw::SerializeStatus deserializeFrom(Fw::SerializeBufferBase &buffer)
Deserialize raw enum value from SerialType.
U8 SerialType
The serial representation type.
Enabled & operator=(const Enabled &obj)
Copy assignment operator (object)
SerializeStatus serializeFrom(U8 val)
serialize 8-bit unsigned int
Disabled state.
T
The raw enum type.
SerializeStatus deserializeTo(U8 &val)
deserialize 8-bit unsigned int