20#ifndef SS_SERVICE_FLOW_MANAGER_H
21#define SS_SERVICE_FLOW_MANAGER_H
27#include "ns3/buffer.h"
28#include "ns3/event-id.h"
39class SubscriberStationNetDevice;
This class implements the DSA-ACK message described by "IEEE Standard for Local and metropolitan area...
This class implements the DSA-REQ message described by "IEEE Standard for Local and metropolitan area...
This class implements the DSA-RSP message described by "IEEE Standard for Local and metropolitan ar...
An identifier for simulation events.
Smart pointer class similar to boost::intrusive_ptr.
This class implements service flows as described by the IEEE-802.16 standard.
The same service flow manager class serves both for BS and SS though some functions are exclusive to ...
SsServiceFlowManager class.
void ScheduleDsaReq(const ServiceFlow *serviceFlow)
Schedule DSA response.
void ProcessDsaRsp(const DsaRsp &dsaRsp)
Process DSA response.
uint16_t m_currentTransactionId
current transaction ID
EventId GetDsaRspTimeoutEvent() const
Get DSA response timeout event.
uint8_t m_dsaReqRetries
DSA request retries.
EventId m_dsaAckTimeoutEvent
DSA ack timeout event.
ServiceFlow * m_pendingServiceFlow
pending service flow
EventId GetDsaAckTimeoutEvent() const
Get DSA ack timeout event.
void InitiateServiceFlows()
Initiate service flows.
ConfirmationCode
Confirmation code enumeration.
@ CONFIRMATION_CODE_SUCCESS
@ CONFIRMATION_CODE_REJECT
EventId m_dsaRspTimeoutEvent
DSA response timeout event.
DsaReq CreateDsaReq(const ServiceFlow *serviceFlow)
Create DSA request.
void AddServiceFlow(ServiceFlow *serviceFlow)
add a service flow to the list
Ptr< SubscriberStationNetDevice > m_device
the device
DsaReq m_dsaReq
DSA request.
uint16_t m_transactionIdIndex
transaction ID index
uint8_t m_maxDsaReqRetries
maximum DSA request retries
static TypeId GetTypeId()
Register this type.
void DoDispose() override
Destructor implementation.
~SsServiceFlowManager() override
void SetMaxDsaReqRetries(uint8_t maxDsaReqRetries)
sets the maximum retries on DSA request message
uint8_t GetMaxDsaReqRetries() const
Ptr< Packet > CreateDsaAck()
Create DSA ack.
a unique identifier for an interface.
Every class exported by the ns3 library is enclosed in the ns3 namespace.