made "serialize" const

This commit is contained in:
badaix 2015-07-26 13:06:21 +02:00
parent 56389ad202
commit b936bffeff
11 changed files with 104 additions and 73 deletions

View file

@ -31,6 +31,10 @@
namespace msg
{
/**
* Piece of raw data
* Has information about "when" captured (timestamp)
*/
class WireChunk : public BaseMessage
{
public:
@ -39,6 +43,12 @@ public:
payload = (char*)malloc(size);
}
WireChunk(const WireChunk& wireChunk) : BaseMessage(message_type::kWireChunk), timestamp(wireChunk.timestamp), payloadSize(wireChunk.payloadSize)
{
payload = (char*)malloc(payloadSize);
memcpy(payload, wireChunk.payload, payloadSize);
}
virtual ~WireChunk()
{
free(payload);
@ -53,7 +63,7 @@ public:
stream.read(payload, payloadSize);
}
virtual uint32_t getSize()
virtual uint32_t getSize() const
{
return sizeof(int32_t) + sizeof(int32_t) + sizeof(uint32_t) + payloadSize;
}
@ -63,11 +73,11 @@ public:
char* payload;
protected:
virtual void doserialize(std::ostream& stream)
virtual void doserialize(std::ostream& stream) const
{
stream.write(reinterpret_cast<char *>(&timestamp.sec), sizeof(int32_t));
stream.write(reinterpret_cast<char *>(&timestamp.usec), sizeof(int32_t));
stream.write(reinterpret_cast<char *>(&payloadSize), sizeof(uint32_t));
stream.write(reinterpret_cast<const char *>(&timestamp.sec), sizeof(int32_t));
stream.write(reinterpret_cast<const char *>(&timestamp.usec), sizeof(int32_t));
stream.write(reinterpret_cast<const char *>(&payloadSize), sizeof(uint32_t));
stream.write(payload, payloadSize);
}
};