F´ Flight Software - C/C++ Documentation devel
A framework for building embedded system applications to NASA flight quality standards.
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
SendStatusEnumAc.cpp
Go to the documentation of this file.
1// ======================================================================
2// \title SendStatusEnumAc.cpp
3// \author Generated by fpp-to-cpp
4// \brief cpp file for SendStatus enum
5// ======================================================================
6
7#include <cstring>
8#include <limits>
9
10#include "Fw/Types/Assert.hpp"
12
13namespace Drv {
14
15 // ----------------------------------------------------------------------
16 // Operators
17 // ----------------------------------------------------------------------
18
19 SendStatus& SendStatus ::
20 operator=(const SendStatus& obj)
21 {
22 this->e = obj.e;
23 return *this;
24 }
25
26 SendStatus& SendStatus ::
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 SendStatus& 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 SendStatus ::
49 isValid() const
50 {
51 return ((e >= SEND_OK) && (e <= SEND_ERROR));
52 }
53
54 Fw::SerializeStatus SendStatus ::
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 SendStatus ::
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 SendStatus ::
80 toString(Fw::StringBase& sb) const
81 {
82 Fw::String s;
83 switch (e) {
84 case SEND_OK:
85 s = "SEND_OK";
86 break;
87 case SEND_RETRY:
88 s = "SEND_RETRY";
89 break;
90 case SEND_ERROR:
91 s = "SEND_ERROR";
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 SendStatus ::
103 toString(Fw::StringBase& sb) const
104 {
105 sb.format("%" PRIi32 "", e);
106 }
107
108#endif
109
110}
Status returned by the send call.
T e
The raw enum value.
I32 SerialType
The serial representation type.
T
The raw enum type.
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
gets char buffer
Definition String.cpp:48
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.