23 #include "ns3/address-utils.h"
30 m_preamblePresent (0),
103 return 1 + 1 + 1 + 2 + 2;
133 m_configurationChangeCount (0),
146 static TypeId tid =
TypeId (
"ns3::OfdmDownlinkFramePrefix")
148 .SetGroupName (
"Wimax")
168 uint8_t configurationChangeCount)
204 std::vector<DlFramePrefixIe>
219 return "OFDM Downlink Frame Prefix";
228 <<
", number of dl frame prefix elements = "
235 int dlFramePrefixElementsSize = 0;
237 for (std::vector<DlFramePrefixIe>::const_iterator iter =
241 dlFramePrefixElementsSize += dlFramePrefixElement.
GetSize ();
244 return 6 + 4 + 1 + dlFramePrefixElementsSize + 1;
255 for (std::vector<DlFramePrefixIe>::const_iterator iter =
259 i = dlFramePrefixElement.
Write (i);
278 i = dlFramePrefixElement.
Read (i);
282 if (dlFramePrefixElement.
GetDiuc () == 14)
iterator in a Buffer instance
void WriteU32(uint32_t data)
void WriteU8(uint8_t data)
void WriteU16(uint16_t data)
This class implements the DL Frame Prefix IE as described by IEEE-802.16 standard.
uint8_t GetPreamblePresent(void) const
Get preamble present field.
uint8_t m_preamblePresent
preamble present
uint16_t m_startTime
start time
uint16_t GetSize(void) const
Get size field.
void SetStartTime(uint16_t startTime)
Set start time field.
uint16_t GetLength(void) const
Get length 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.
uint8_t GetDiuc(void) const
Get DIUC field.
uint8_t GetRateId(void) const
Get rate ID field.
Buffer::Iterator Write(Buffer::Iterator start) const
Write item function.
void SetRateId(uint8_t rateId)
Set rate ID field.
uint16_t GetStartTime(void) const
Get start time field.
uint32_t m_frameNumber
shall actually be only 4 LSB of the same field in OFDM DCD Channel Encodings
std::string GetName(void) const
Get name field.
std::vector< DlFramePrefixIe > GetDlFramePrefixElements(void) const
Get DL frame prefix elements.
~OfdmDownlinkFramePrefix()
Mac48Address GetBaseStationId(void) const
Get base station ID field.
uint8_t GetConfigurationChangeCount(void) const
Get configuration change count field.
void Serialize(Buffer::Iterator start) const
void SetConfigurationChangeCount(uint8_t configurationChangeCount)
Set configuration change count field.
void Print(std::ostream &os) const
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
static TypeId GetTypeId(void)
Register this type.
uint32_t GetFrameNumber(void) const
Get frame number field.
uint32_t GetSerializedSize(void) const
Mac48Address m_baseStationId
base station ID
uint8_t m_hcs
Header Check Sequence.
void AddDlFramePrefixElement(DlFramePrefixIe dlFramePrefixElement)
Add DL frame prefix element field.
uint8_t GetHcs(void) const
Get HCS field.
void SetBaseStationId(Mac48Address baseStationId)
Set base station ID field.
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.