5 #ifndef __DDS__ProtocolMessage__ 6 #define __DDS__ProtocolMessage__ 13 #include <boost/crc.hpp> 17 namespace protocol_api
41 unsigned char const* buf =
reinterpret_cast<unsigned char const*
>(
this);
42 boost::crc_16_type crc16;
43 crc16.process_bytes(buf +
sizeof(uint16_t),
sizeof(
SMessageHeader) -
sizeof(uint16_t));
45 return crc16.checksum();
68 typedef dataContainer_t::value_type
data_t;
92 _encode_message(_cmd, _data);
96 void resize(
size_t _size);
97 const data_t* data()
const;
99 size_t length()
const;
100 const data_t* body()
const;
102 size_t body_length()
const;
103 bool decode_header();
105 std::string toString()
const;
108 dataContainer_t buf(body(), body() + body_length());
113 void _encode_message(uint16_t _cmd,
const dataContainer_t& _data);
116 dataContainer_t m_data;
Definition: ProtocolMessage.h:64
dataContainer_t bodyToContainer() const
Definition: ProtocolMessage.h:106
Definition: dds-agent/src/AgentConnectionManager.h:16
void encode(uint16_t _cmd, const MiscCommon::BYTEVector_t &_data)
Definition: ProtocolMessage.h:90
std::vector< unsigned char > BYTEVector_t
An STL vector of bytes.
Definition: def.h:127
MiscCommon::BYTEVector_t dataContainer_t
Definition: ProtocolMessage.h:67
dataContainer_t::value_type data_t
Definition: ProtocolMessage.h:68
std::shared_ptr< CProtocolMessage > protocolMessagePtr_t
Definition: ProtocolMessage.h:69