22 #include "ns3/address-utils.h"
105 return 1 + 1 + 1 + 2 + 2;
135 m_configurationChangeCount(0),
203 std::vector<DlFramePrefixIe>
218 return "OFDM Downlink Frame Prefix";
227 <<
", hcs = " << (uint32_t)
m_hcs;
233 int dlFramePrefixElementsSize = 0;
237 dlFramePrefixElementsSize += dlFramePrefixElement.GetSize();
240 return 6 + 4 + 1 + dlFramePrefixElementsSize + 1;
253 i = dlFramePrefixElement.
Write(i);
272 i = dlFramePrefixElement.
Read(i);
276 if (dlFramePrefixElement.
GetDiuc() == 14)
iterator in a Buffer instance
void WriteU32(uint32_t data)
void WriteU8(uint8_t data)
void Write(const uint8_t *buffer, uint32_t size)
void WriteU16(uint16_t data)
This class implements the DL Frame Prefix IE as described by IEEE-802.16 standard.
uint8_t GetDiuc() const
Get DIUC field.
uint8_t m_preamblePresent
preamble present
uint16_t GetStartTime() const
Get start time field.
uint16_t m_startTime
start time
uint8_t GetPreamblePresent() const
Get preamble present field.
uint16_t GetLength() const
Get length field.
uint8_t GetRateId() const
Get rate ID field.
void SetStartTime(uint16_t startTime)
Set start time field.
void SetDiuc(uint8_t diuc)
Set DIUC field.
void SetLength(uint16_t length)
Set length field.
Buffer::Iterator Read(Buffer::Iterator start)
Read item function.
void SetPreamblePresent(uint8_t preamblePresent)
Set preamble present field.
Buffer::Iterator Write(Buffer::Iterator start) const
Write item function.
uint16_t GetSize() const
Get size field.
void SetRateId(uint8_t rateId)
Set rate ID field.
uint32_t m_frameNumber
shall actually be only 4 LSB of the same field in OFDM DCD Channel Encodings
std::string GetName() const
Get name field.
uint8_t GetHcs() const
Get HCS field.
void SetConfigurationChangeCount(uint8_t configurationChangeCount)
Set configuration change count field.
void SetFrameNumber(uint32_t frameNumber)
Set frame number field.
uint8_t m_configurationChangeCount
shall actually be only 4 LSB of the same field in DCD
std::vector< DlFramePrefixIe > m_dlFramePrefixElements
vector of dl frame prefix elements
Mac48Address GetBaseStationId() const
Get base station ID field.
static TypeId GetTypeId()
Register this type.
std::vector< DlFramePrefixIe > GetDlFramePrefixElements() const
Get DL frame prefix elements.
uint32_t GetFrameNumber() const
Get frame number field.
Mac48Address m_baseStationId
base station ID
uint8_t m_hcs
Header Check Sequence.
uint8_t GetConfigurationChangeCount() const
Get configuration change count field.
void Print(std::ostream &os) const override
void AddDlFramePrefixElement(DlFramePrefixIe dlFramePrefixElement)
Add DL frame prefix element field.
void Serialize(Buffer::Iterator start) const override
~OfdmDownlinkFramePrefix() override
void SetBaseStationId(Mac48Address baseStationId)
Set base station ID field.
uint32_t GetSerializedSize() const override
OfdmDownlinkFramePrefix()
void SetHcs(uint8_t hcs)
Set HCS field.
a unique identifier for an interface.
TypeId SetParent(TypeId tid)
Set the parent TypeId.
Every class exported by the ns3 library is enclosed in the ns3 namespace.
void WriteTo(Buffer::Iterator &i, Ipv4Address ad)
Write an Ipv4Address to a Buffer.
void ReadFrom(Buffer::Iterator &i, Ipv4Address &ad)
Read an Ipv4Address from a Buffer.