aboutsummaryrefslogtreecommitdiffstats
path: root/libtransport/src/hicn/transport/core/packet.h
diff options
context:
space:
mode:
Diffstat (limited to 'libtransport/src/hicn/transport/core/packet.h')
-rw-r--r--libtransport/src/hicn/transport/core/packet.h11
1 files changed, 9 insertions, 2 deletions
diff --git a/libtransport/src/hicn/transport/core/packet.h b/libtransport/src/hicn/transport/core/packet.h
index add830c1e..78dbeae07 100644
--- a/libtransport/src/hicn/transport/core/packet.h
+++ b/libtransport/src/hicn/transport/core/packet.h
@@ -93,6 +93,8 @@ class Packet : public std::enable_shared_from_this<Packet> {
static Format getFormatFromBuffer(const uint8_t *buffer);
+ virtual void replace(MemBufPtr &&buffer);
+
std::size_t payloadSize() const;
std::size_t headerSize() const;
@@ -101,12 +103,16 @@ class Packet : public std::enable_shared_from_this<Packet> {
const uint8_t *start() const;
- virtual void setLifetime(uint32_t lifetime);
-
virtual const Name &getName() const = 0;
virtual Name &getWritableName() = 0;
+ virtual void setName(const Name &name) = 0;
+
+ virtual void setName(Name &&name) = 0;
+
+ virtual void setLifetime(uint32_t lifetime);
+
virtual uint32_t getLifetime() const;
Packet &appendPayload(const uint8_t *buffer, std::size_t length);
@@ -179,6 +185,7 @@ class Packet : public std::enable_shared_from_this<Packet> {
void setSignatureSize(std::size_t size_bytes);
std::size_t getSignatureSize() const;
uint8_t *getSignature() const;
+ void separateHeaderPayload();
protected:
Name name_;