15 enum { header_flag =
sizeof(uint32_t) };
16 enum { header_version =
sizeof(uint32_t) };
17 enum { header_number =
sizeof(uint32_t) };
18 enum { header_count =
sizeof(uint32_t) };
19 enum { header_type =
sizeof(uint32_t) };
20 enum { header_payload_length =
sizeof(uint64_t) };
22 enum {
total_header_length = header_flag + header_version + header_number + header_count + header_type + header_payload_length };
36 void SetBody(
size_t length,
char* buffer);
44 void FromString(
const std::string& in);
45 std::string ToString();
49 void Internal_ToExternalMessage(
const nlohmann::json& payload, VectorworksMVR::IMVRxchangeService::IMVRxchangeMessage &in);
59 std::shared_ptr<MVRxchangeNetwork::MVRxchangeDynamicBuffer> fData;
Definition mvrxchange_message.h:13
void ToExternalMessage(VectorworksMVR::IMVRxchangeService::IMVRxchangeMessage &)
Definition mvrxchange_message.cpp:430
MVRxchangePacket(const MVRxchangePacket *ref)=delete
@ total_header_length
Definition mvrxchange_message.h:22
void FromExternalMessage(const VectorworksMVR::IMVRxchangeService::IMVRxchangeMessage &)
Definition mvrxchange_message.cpp:192
const char * GetBody() const
Definition mvrxchange_message.cpp:72
void SetBody(size_t length, char *buffer)
Definition mvrxchange_message.cpp:87
size_t GetBodyLength() const
Definition mvrxchange_message.cpp:82
MVRxchangePacket()
Definition mvrxchange_message.cpp:30
void EncodeHeader()
Definition mvrxchange_message.cpp:121
const char * GetData() const
Definition mvrxchange_message.cpp:57
size_t GetLength() const
Definition mvrxchange_message.cpp:67
~MVRxchangePacket()
Definition mvrxchange_message.cpp:53
bool DecodeHeader()
Definition mvrxchange_message.cpp:94
a class to store JSON values
Definition json.h:16658
Definition mvrxchange_client.h:11
std::deque< MVRxchangePacket > MVRxchangePacketDeque
Definition mvrxchange_message.h:62