Simple Module Ieee80211MgmtSTA

Package: inet.linklayer.ieee80211.mgmt
File: src/inet/linklayer/ieee80211/mgmt/Ieee80211MgmtSTA.ned

C++ definition

Used in 802.11 infrastructure mode: handles management frames for a station (STA).

Relies on the MAC layer (Ieee80211Mac) for reception and transmission of frames.

Author: Andras Varga

Ieee80211MgmtSTA

Usage diagram:

The following diagram shows usage relationships between types. Unresolved types are missing from the diagram.

Inheritance diagram:

The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram.

Parameters:

Name Type Default value Description
interfaceTableModule string

The path to the InterfaceTable module

numChannels int 1

number of channels to scan

macModule string

The path to the MAC module

Properties:

Name Value Description
display i=block/cogwheel

Gates:

Name Direction Size Description
upperLayerIn input
upperLayerOut output
macIn input
macOut output
agentIn input

used for attaching an agent algorithm

agentOut output

used for attaching an agent algorithm

Signals:

Name Type Unit
NF_L2_ASSOCIATED inet::InterfaceEntry
NF_L2_BEACON_LOST inet::InterfaceEntry

Source code:

//
// Used in 802.11 infrastructure mode: handles management frames for a station (STA).
//
// Relies on the MAC layer (~Ieee80211Mac) for reception and transmission of frames.
//
// @author Andras Varga
//
simple Ieee80211MgmtSTA like IIeee80211Mgmt
{
    parameters:
        string interfaceTableModule;   // The path to the InterfaceTable module
        int numChannels = default(1);  // number of channels to scan
        string macModule;               // The path to the MAC module
        @display("i=block/cogwheel");
        @signal[NF_L2_ASSOCIATED](type=inet::InterfaceEntry);
        @signal[NF_L2_BEACON_LOST](type=inet::InterfaceEntry);
    gates:
        input upperLayerIn;
        output upperLayerOut;
        input macIn @labels(Ieee80211Frame);
        output macOut @labels(Ieee80211Frame);
        input agentIn;   // used for attaching an agent algorithm
        output agentOut; // used for attaching an agent algorithm
}