@@ -27,53 +27,45 @@ UUID Packet::allocatePacketUUID() {
2727}
2828void Packet::freePacketUUID (UUID uuid) { packetUUIDSet.erase (uuid); }
2929
30- Packet::Packet (UUID uuid, size_t maxSize)
31- : buffer(maxSize), bufferSize(maxSize), dataSize(maxSize), packetID(uuid) {
30+ Packet::Packet (UUID uuid, size_t size) : buffer(size), packetID(uuid) {
3231
3332 std::fill (this ->buffer .begin (), this ->buffer .end (), 0 );
3433}
3534
3635Packet::Packet (const Packet &other)
37- : buffer(other.buffer), bufferSize(other.bufferSize),
38- dataSize (other.dataSize), packetID(other.packetID) {}
36+ : buffer(other.buffer), packetID(other.packetID) {}
3937
4038Packet::Packet (Packet &&other) noexcept
41- : buffer(std::move(other.buffer)), bufferSize(other.bufferSize),
42- dataSize(other.dataSize), packetID(other.packetID) {
43- other.dataSize = 0 ;
39+ : buffer(std::move(other.buffer)), packetID(other.packetID) {
40+ other.buffer .clear ();
4441}
4542
4643Packet &Packet::operator =(const Packet &other) {
4744 buffer = other.buffer ;
48- bufferSize = other.bufferSize ;
49- dataSize = other.dataSize ;
5045 packetID = other.packetID ;
5146 return *this ;
5247}
5348
5449Packet &Packet::operator =(Packet &&other) noexcept {
5550 buffer = std::move (other.buffer );
56- bufferSize = std::move (other.bufferSize );
57- dataSize = std::move (other.dataSize );
5851 packetID = std::move (other.packetID );
5952 return *this ;
6053}
6154
62- Packet::Packet (size_t maxSize ) : Packet(allocatePacketUUID(), maxSize ) {}
55+ Packet::Packet (size_t size ) : Packet(allocatePacketUUID(), size ) {}
6356
6457Packet::~Packet () { freePacketUUID (this ->packetID ); }
6558
6659Packet Packet::clone () const {
6760
68- Packet pkt (this ->bufferSize );
69- pkt.setSize (this ->dataSize );
61+ Packet pkt (this ->buffer .size ());
7062 pkt.buffer = this ->buffer ;
7163 return pkt;
7264}
7365
7466size_t Packet::writeData (size_t offset, const void *data, size_t length) {
75- size_t actual_offset = std::min (offset, dataSize );
76- size_t actual_write = std::min (length, dataSize - actual_offset);
67+ size_t actual_offset = std::min (offset, buffer. size () );
68+ size_t actual_write = std::min (length, buffer. size () - actual_offset);
7769
7870 if (actual_write == 0 )
7971 return 0 ;
@@ -83,8 +75,8 @@ size_t Packet::writeData(size_t offset, const void *data, size_t length) {
8375 return actual_write;
8476}
8577size_t Packet::readData (size_t offset, void *data, size_t length) const {
86- size_t actual_offset = std::min (offset, dataSize );
87- size_t actual_read = std::min (length, dataSize - actual_offset);
78+ size_t actual_offset = std::min (offset, buffer. size () );
79+ size_t actual_read = std::min (length, buffer. size () - actual_offset);
8880
8981 if (actual_read == 0 )
9082 return 0 ;
@@ -94,10 +86,10 @@ size_t Packet::readData(size_t offset, void *data, size_t length) const {
9486 return actual_read;
9587}
9688size_t Packet::setSize (size_t size) {
97- this -> dataSize = std::min (size, this -> bufferSize );
98- return this -> dataSize ;
89+ buffer. resize (size);
90+ return buffer. size () ;
9991}
100- size_t Packet::getSize () const { return this -> dataSize ; }
92+ size_t Packet::getSize () const { return buffer. size () ; }
10193
10294UUID Packet::getUUID () const { return this ->packetID ; }
10395
0 commit comments