F´ Flight Software - C/C++ Documentation  NASA-v1.6.0
A framework for building embedded system applications to NASA flight quality standards.
TlmString.hpp
Go to the documentation of this file.
1 #ifndef FW_TLM_STRING_TYPE_HPP
2 #define FW_TLM_STRING_TYPE_HPP
3 
4 #include <Fw/Types/BasicTypes.hpp>
5 #include <Fw/Types/StringType.hpp>
6 #include <FpConfig.hpp>
7 #include <Fw/Cfg/SerIds.hpp>
8 
9 namespace Fw {
10 
11  class TlmString : public Fw::StringBase {
12  public:
13 
14  enum {
16  SERIALIZED_SIZE = FW_TLM_STRING_MAX_SIZE + sizeof(FwBuffSizeType) // size of buffer + storage of size word
17  };
18 
19  TlmString();
20  TlmString(const TlmString& src);
21  TlmString(const StringBase& src);
22  TlmString(const char* src);
23  TlmString& operator=(const TlmString& other);
24  TlmString& operator=(const StringBase& other);
25  TlmString& operator=(const char* other);
26  ~TlmString();
27 
28  const char* toChar() const override;
29  NATIVE_UINT_TYPE getCapacity() const override;
30 
31  SerializeStatus serialize(SerializeBufferBase& buffer) const override;
32  SerializeStatus serialize(SerializeBufferBase& buffer, NATIVE_UINT_TYPE maxLen) const override;
34 
35  private:
36  char m_buf[FW_TLM_STRING_MAX_SIZE];
37  };
38 }
39 
40 #endif
Fw::TlmString::operator=
TlmString & operator=(const TlmString &other)
assignment operator
Definition: TlmString.cpp:22
Fw::TlmString::TlmString
TlmString()
Definition: TlmString.cpp:18
Fw::TlmString
Definition: TlmString.hpp:11
Fw::SerializeBufferBase
Definition: Serializable.hpp:43
Fw::SerializeStatus
SerializeStatus
forward declaration for string
Definition: Serializable.hpp:14
Fw::StringBase
Definition: StringType.hpp:23
NATIVE_UINT_TYPE
unsigned int NATIVE_UINT_TYPE
native unsigned integer type declaration
Definition: BasicTypes.hpp:28
FW_TLM_STRING_MAX_SIZE
#define FW_TLM_STRING_MAX_SIZE
Max size of channelized telemetry string type.
Definition: FpConfig.hpp:253
FwBuffSizeType
#define FwBuffSizeType
Type representation for storing a buffer or string size.
Definition: FpConfig.hpp:79
Fw::TlmString::toChar
const char * toChar() const override
Definition: TlmString.cpp:48
Fw::TlmString::SERIALIZED_SIZE
@ SERIALIZED_SIZE
Definition: TlmString.hpp:16
Fw::TlmString::deserialize
SerializeStatus deserialize(SerializeBufferBase &buffer) override
deserialization function
Definition: TlmString.cpp:75
Fw::FW_TYPEID_TLM_STR
@ FW_TYPEID_TLM_STR
Telemetry string type id.
Definition: SerIds.hpp:48
Fw::TlmString::serialize
SerializeStatus serialize(SerializeBufferBase &buffer) const override
serialization function
Definition: TlmString.cpp:56
Fw::TlmString::SERIALIZED_TYPE_ID
@ SERIALIZED_TYPE_ID
Definition: TlmString.hpp:15
Fw::TlmString::~TlmString
~TlmString()
Definition: TlmString.cpp:45
Fw::TlmString::getCapacity
NATIVE_UINT_TYPE getCapacity() const override
return size of buffer
Definition: TlmString.cpp:52
Fw
Definition: SerIds.hpp:20