5G-LENA nr-v4.0
The 5G/NR module for the ns-3 simulator
Loading...
Searching...
No Matches
nr-pdcp-header.h
1// Copyright (c) 2011 Centre Tecnologic de Telecomunicacions de Catalunya (CTTC)
2//
3// SPDX-License-Identifier: GPL-2.0-only
4//
5// Author: Manuel Requena <manuel.requena@cttc.es>
6
7#ifndef NR_PDCP_HEADER_H
8#define NR_PDCP_HEADER_H
9
10#include "ns3/header.h"
11
12#include <list>
13
14namespace ns3
15{
16
25class NrPdcpHeader : public Header
26{
27 public:
34 ~NrPdcpHeader() override;
35
41 void SetDcBit(uint8_t dcBit);
47 void SetSequenceNumber(uint16_t sequenceNumber);
48
54 uint8_t GetDcBit() const;
60 uint16_t GetSequenceNumber() const;
61
63 enum
64 {
65 CONTROL_PDU = 0,
66 DATA_PDU = 1
68
73 static TypeId GetTypeId();
74 TypeId GetInstanceTypeId() const override;
75 void Print(std::ostream& os) const override;
76 uint32_t GetSerializedSize() const override;
77 void Serialize(Buffer::Iterator start) const override;
78 uint32_t Deserialize(Buffer::Iterator start) override;
79
80 private:
81 uint8_t m_dcBit;
82 uint16_t m_sequenceNumber;
83};
84
85} // namespace ns3
86
87#endif // NR_PDCP_HEADER_H
The packet header for the Packet Data Convergence Protocol (PDCP) packets.
enum ns3::NrPdcpHeader::@0 DcBit_t
DcBit_t typedef.
void SetSequenceNumber(uint16_t sequenceNumber)
Set sequence number.
static TypeId GetTypeId()
Get the type ID.
uint8_t GetDcBit() const
Get DC bit.
uint16_t GetSequenceNumber() const
Get sequence number.
NrPdcpHeader()
Constructor.
void SetDcBit(uint8_t dcBit)
Set DC bit.