Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

Ieee80211MgmtSTASimplified Class Reference

#include <Ieee80211MgmtSTASimplified.h>

Inheritance diagram for Ieee80211MgmtSTASimplified:

Ieee80211MgmtBase PassiveQueueBase INotifiable IPassiveQueue List of all members.

Detailed Description

Used in 802.11 infrastructure mode: handles management frames for a station (STA). See corresponding NED file for a detailed description. This implementation ignores many details.

Author:
Andras Varga


Protected Member Functions

virtual int numInitStages () const
virtual void initialize (int)
virtual void handleTimer (cMessage *msg)
virtual void handleUpperMessage (cMessage *msg)
virtual void handleCommand (int msgkind, cPolymorphic *ctrl)
virtual Ieee80211DataFrameencapsulate (cMessage *msg)
virtual void receiveChangeNotification (int category, cPolymorphic *details)
Processing of different frame types
virtual void handleDataFrame (Ieee80211DataFrame *frame)
virtual void handleAuthenticationFrame (Ieee80211AuthenticationFrame *frame)
virtual void handleDeauthenticationFrame (Ieee80211DeauthenticationFrame *frame)
virtual void handleAssociationRequestFrame (Ieee80211AssociationRequestFrame *frame)
virtual void handleAssociationResponseFrame (Ieee80211AssociationResponseFrame *frame)
virtual void handleReassociationRequestFrame (Ieee80211ReassociationRequestFrame *frame)
virtual void handleReassociationResponseFrame (Ieee80211ReassociationResponseFrame *frame)
virtual void handleDisassociationFrame (Ieee80211DisassociationFrame *frame)
virtual void handleBeaconFrame (Ieee80211BeaconFrame *frame)
virtual void handleProbeRequestFrame (Ieee80211ProbeRequestFrame *frame)
virtual void handleProbeResponseFrame (Ieee80211ProbeResponseFrame *frame)

Protected Attributes

MACAddress accessPointAddress
int receiveSequence


Member Function Documentation

Ieee80211DataFrame * Ieee80211MgmtSTASimplified::encapsulate cMessage *  msg  )  [protected, virtual]
 

Utility function for handleUpperMessage()

00054 {
00055     Ieee80211DataFrame *frame = new Ieee80211DataFrame(msg->name());
00056 
00057     // frame goes to the AP
00058     frame->setToDS(true);
00059 
00060     // receiver is the AP
00061     frame->setReceiverAddress(accessPointAddress);
00062 
00063     // destination address is in address3
00064     Ieee802Ctrl *ctrl = check_and_cast<Ieee802Ctrl *>(msg->removeControlInfo());
00065     ASSERT(!ctrl->getDest().isUnspecified());
00066     frame->setAddress3(ctrl->getDest());
00067     delete ctrl;
00068 
00069     frame->encapsulate(msg);
00070     return frame;
00071 }

void Ieee80211MgmtSTASimplified::handleAssociationRequestFrame Ieee80211AssociationRequestFrame frame  )  [protected, virtual]
 

Implements Ieee80211MgmtBase.

00095 {
00096     dropManagementFrame(frame);
00097 }

void Ieee80211MgmtSTASimplified::handleAssociationResponseFrame Ieee80211AssociationResponseFrame frame  )  [protected, virtual]
 

Implements Ieee80211MgmtBase.

00100 {
00101     dropManagementFrame(frame);
00102 }

void Ieee80211MgmtSTASimplified::handleAuthenticationFrame Ieee80211AuthenticationFrame frame  )  [protected, virtual]
 

Implements Ieee80211MgmtBase.

00085 {
00086     dropManagementFrame(frame);
00087 }

void Ieee80211MgmtSTASimplified::handleBeaconFrame Ieee80211BeaconFrame frame  )  [protected, virtual]
 

Implements Ieee80211MgmtBase.

00120 {
00121     dropManagementFrame(frame);
00122 }

void Ieee80211MgmtSTASimplified::handleCommand int  msgkind,
cPolymorphic *  ctrl
[protected, virtual]
 

Implements abstract Ieee80211MgmtBase method -- throws an error (no commands supported)

Implements Ieee80211MgmtBase.

00049 {
00050     error("handleCommand(): no commands supported");
00051 }

void Ieee80211MgmtSTASimplified::handleDataFrame Ieee80211DataFrame frame  )  [protected, virtual]
 

Implements Ieee80211MgmtBase.

00080 {
00081     sendUp(decapsulate(frame));
00082 }

void Ieee80211MgmtSTASimplified::handleDeauthenticationFrame Ieee80211DeauthenticationFrame frame  )  [protected, virtual]
 

Implements Ieee80211MgmtBase.

00090 {
00091     dropManagementFrame(frame);
00092 }

void Ieee80211MgmtSTASimplified::handleDisassociationFrame Ieee80211DisassociationFrame frame  )  [protected, virtual]
 

Implements Ieee80211MgmtBase.

00115 {
00116     dropManagementFrame(frame);
00117 }

void Ieee80211MgmtSTASimplified::handleProbeRequestFrame Ieee80211ProbeRequestFrame frame  )  [protected, virtual]
 

Implements Ieee80211MgmtBase.

00125 {
00126     dropManagementFrame(frame);
00127 }

void Ieee80211MgmtSTASimplified::handleProbeResponseFrame Ieee80211ProbeResponseFrame frame  )  [protected, virtual]
 

Implements Ieee80211MgmtBase.

00130 {
00131     dropManagementFrame(frame);
00132 }

void Ieee80211MgmtSTASimplified::handleReassociationRequestFrame Ieee80211ReassociationRequestFrame frame  )  [protected, virtual]
 

Implements Ieee80211MgmtBase.

00105 {
00106     dropManagementFrame(frame);
00107 }

void Ieee80211MgmtSTASimplified::handleReassociationResponseFrame Ieee80211ReassociationResponseFrame frame  )  [protected, virtual]
 

Implements Ieee80211MgmtBase.

00110 {
00111     dropManagementFrame(frame);
00112 }

void Ieee80211MgmtSTASimplified::handleTimer cMessage *  msg  )  [protected, virtual]
 

Implements abstract Ieee80211MgmtBase method

Implements Ieee80211MgmtBase.

00038 {
00039     ASSERT(false);
00040 }

void Ieee80211MgmtSTASimplified::handleUpperMessage cMessage *  msg  )  [protected, virtual]
 

Implements abstract Ieee80211MgmtBase method

Implements Ieee80211MgmtBase.

00043 {
00044     Ieee80211DataFrame *frame = encapsulate(msg);
00045     sendOrEnqueue(frame);
00046 }

void Ieee80211MgmtSTASimplified::initialize int   )  [protected, virtual]
 

Reimplemented from Ieee80211MgmtBase.

00028 {
00029     Ieee80211MgmtBase::initialize(stage);
00030     if (stage==0)
00031     {
00032         accessPointAddress.setAddress(par("accessPointAddress").stringValue());
00033         receiveSequence = 0;
00034     }
00035 }

virtual int Ieee80211MgmtSTASimplified::numInitStages  )  const [inline, protected, virtual]
 

Reimplemented from Ieee80211MgmtBase.

00042 {return 2;}

void Ieee80211MgmtSTASimplified::receiveChangeNotification int  category,
cPolymorphic *  details
[protected, virtual]
 

Called by the NotificationBoard whenever a change occurs we're interested in

Implements INotifiable.

00074 {
00075     Enter_Method_Silent();
00076     printNotificationBanner(category, details);
00077 }


Member Data Documentation

MACAddress Ieee80211MgmtSTASimplified::accessPointAddress [protected]
 

int Ieee80211MgmtSTASimplified::receiveSequence [protected]
 


The documentation for this class was generated from the following files:
Generated on Thu Oct 19 18:22:23 2006 for INET Framework for OMNeT++/OMNEST by  doxygen 1.4.0