INET Framework for OMNeT++/OMNEST
inet::ieee80211::DataFs Class Reference

#include <PrimitiveFrameSequences.h>

Inheritance diagram for inet::ieee80211::DataFs:
inet::ieee80211::IFrameSequence

Public Member Functions

virtual void startSequence (FrameSequenceContext *context, int firstStep) override
 
virtual IFrameSequenceStepprepareStep (FrameSequenceContext *context) override
 
virtual bool completeStep (FrameSequenceContext *context) override
 
virtual std::string getHistory () override
 
- Public Member Functions inherited from inet::ieee80211::IFrameSequence
virtual ~IFrameSequence ()
 

Protected Attributes

int firstStep = -1
 
int step = -1
 
int ackPolicy = -1
 

Member Function Documentation

bool inet::ieee80211::DataFs::completeStep ( FrameSequenceContext context)
overridevirtual

Implements inet::ieee80211::IFrameSequence.

131 {
132  switch (step) {
133  case 0:
134  step++;
135  return true;
136  default:
137  throw cRuntimeError("Unknown step");
138  }
139 }
int step
Definition: PrimitiveFrameSequences.h:44
virtual std::string inet::ieee80211::DataFs::getHistory ( )
inlineoverridevirtual

Implements inet::ieee80211::IFrameSequence.

52 { return "DATA"; }
IFrameSequenceStep * inet::ieee80211::DataFs::prepareStep ( FrameSequenceContext context)
overridevirtual

Implements inet::ieee80211::IFrameSequence.

117 {
118  switch (step) {
119  case 0: {
120  auto frame = check_and_cast<Ieee80211DataFrame *>(context->getInProgressFrames()->getFrameToTransmit());
121  return new TransmitStep(frame, context->getIfs());
122  }
123  case 1:
124  return nullptr;
125  default:
126  throw cRuntimeError("Unknown step");
127  }
128 }
virtual simtime_t getIfs() const
Definition: FrameSequenceContext.cc:34
virtual Ieee80211DataOrMgmtFrame * getFrameToTransmit()
Definition: InProgressFrames.cc:52
Class generated from inet/linklayer/ieee80211/mac/Ieee80211Frame.msg:177 by nedtool.
Definition: Ieee80211Frame_m.h:509
virtual InProgressFrames * getInProgressFrames() const
Definition: FrameSequenceContext.h:87
Definition: FrameSequenceStep.h:26
int step
Definition: PrimitiveFrameSequences.h:44
void inet::ieee80211::DataFs::startSequence ( FrameSequenceContext context,
int  firstStep 
)
overridevirtual

Implements inet::ieee80211::IFrameSequence.

111 {
112  this->firstStep = firstStep;
113  step = 0;
114 }
int firstStep
Definition: PrimitiveFrameSequences.h:43
int step
Definition: PrimitiveFrameSequences.h:44

Member Data Documentation

int inet::ieee80211::DataFs::ackPolicy = -1
protected
int inet::ieee80211::DataFs::firstStep = -1
protected
int inet::ieee80211::DataFs::step = -1
protected

The documentation for this class was generated from the following files: