F´ Flight Software - C/C++ Documentation
A framework for building embedded system applications to NASA flight quality standards.
Loading...
Searching...
No Matches
MeasurementStatusEnumAc.cpp
Go to the documentation of this file.
1// ======================================================================
2// \title MeasurementStatusEnumAc.cpp
3// \author Generated by fpp-to-cpp
4// \brief cpp file for MeasurementStatus enum
5// ======================================================================
6
7#include <cstring>
8#include <limits>
9
10#include "Fw/Types/Assert.hpp"
12
13namespace Svc {
14
15 // ----------------------------------------------------------------------
16 // Operators
17 // ----------------------------------------------------------------------
18
19 MeasurementStatus& MeasurementStatus ::
20 operator=(const MeasurementStatus& obj)
21 {
22 this->e = obj.e;
23 return *this;
24 }
25
26 MeasurementStatus& MeasurementStatus ::
27 operator=(T e1)
28 {
29 this->e = e1;
30 return *this;
31 }
32
33#ifdef BUILD_UT
34
35 std::ostream& operator<<(std::ostream& os, const MeasurementStatus& 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 MeasurementStatus ::
49 isValid() const
50 {
51 return ((e >= OK) && (e <= STALE));
52 }
53
54 Fw::SerializeStatus MeasurementStatus ::
55 serialize(Fw::SerializeBufferBase& buffer) const
56 {
57 const Fw::SerializeStatus status = buffer.serialize(
58 static_cast<SerialType>(this->e)
59 );
60 return status;
61 }
62
63 Fw::SerializeStatus MeasurementStatus ::
64 deserialize(Fw::SerializeBufferBase& buffer)
65 {
66 SerialType es;
67 Fw::SerializeStatus status = buffer.deserialize(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 MeasurementStatus ::
80 toString(Fw::StringBase& sb) const
81 {
82 Fw::String s;
83 switch (e) {
84 case OK:
85 s = "OK";
86 break;
87 case FAILURE:
88 s = "FAILURE";
89 break;
90 case STALE:
91 s = "STALE";
92 break;
93 default:
94 s = "[invalid]";
95 break;
96 }
97 sb.format("%s (%" PRIi32 ")", s.toChar(), e);
98 }
99
100#elif FW_ENABLE_TEXT_LOGGING
101
102 void MeasurementStatus ::
103 toString(Fw::StringBase& sb) const
104 {
105 sb.format("%" PRIi32 "", e);
106 }
107
108#endif
109
110}
SerializeStatus deserialize(U8 &val)
deserialize 8-bit unsigned int
SerializeStatus serialize(U8 val)
serialize 8-bit unsigned int
void format(const CHAR *formatString,...)
write formatted string to buffer
const char * toChar() const
Definition String.hpp:50
An enumeration for measurement status.
I32 SerialType
The serial representation type.
SerializeStatus
forward declaration for string
@ FW_DESERIALIZE_FORMAT_ERROR
Deserialization data had incorrect values (unexpected data types)
@ FW_SERIALIZE_OK
Serialization/Deserialization operation was successful.