F´ Flight Software - C/C++ Documentation  NASA-v2.0.0
A framework for building embedded system applications to NASA flight quality standards.
StructSerializable.hpp
Go to the documentation of this file.
1 #ifndef STRUCT_SERIALIZABLE_HPP
2 #define STRUCT_SERIALIZABLE_HPP
3 
6 
7 namespace Fw {
8 
9  template <class T> class StructSerializable : public Fw::Serializable {
10  public:
11 
12  enum {
13  SERIALIZED_SIZE = sizeof(T) + sizeof(I32) // struct size plus int for storing size
14  };
15 
17  StructSerializable(const T& val);
18  StructSerializable(const T* val);
19  const T& operator=(const T& val);
20 
21  virtual ~StructSerializable();
22 
23  void set(const T& val);
24  const T& get(void);
25 
28 
29  private:
30  T m_val;
31 
32  };
33 
34 }
35 #endif
Fw::StructSerializable::serialize
Fw::SerializeStatus serialize(Fw::SerializeBufferBase &buffer) const
serialize contents
Definition: StructSerializable.cpp:34
Fw::StructSerializable::set
void set(const T &val)
Definition: StructSerializable.cpp:26
Fw::SerializeBufferBase
Definition: Serializable.hpp:43
Fw::SerializeStatus
SerializeStatus
forward declaration for string
Definition: Serializable.hpp:14
Fw::StructSerializable::~StructSerializable
virtual ~StructSerializable()
Definition: StructSerializable.cpp:23
Serializable.hpp
Fw::StructSerializable::deserialize
Fw::SerializeStatus deserialize(Fw::SerializeBufferBase &buffer)
deserialize to contents
Definition: StructSerializable.cpp:41
Fw::StructSerializable::StructSerializable
StructSerializable()
Definition: StructSerializable.cpp:6
Fw::Serializable
forward declaration
Definition: Serializable.hpp:26
Fw::StructSerializable::operator=
const T & operator=(const T &val)
Definition: StructSerializable.cpp:18
Fw::StructSerializable::SERIALIZED_SIZE
@ SERIALIZED_SIZE
Definition: StructSerializable.hpp:13
Fw::StructSerializable
Definition: StructSerializable.hpp:9
BasicTypes.hpp
Declares ISF basic types.
Fw
Definition: Buffer.cpp:21
Fw::StructSerializable::get
const T & get(void)
Definition: StructSerializable.cpp:30