WirelessNic

Package: inet.linklayer.common

WirelessNic

compound module

(no description)

classifier : like IIeee8021dQoSClassifier

IIeee8021dQoSClassifier: Interface for 802.1d QoS classifiers.

Source:
classifier: <classifierType> like IIeee8021dQoSClassifier if classifierType != "" {
    @display("p=80,70");
} mac : like IMACProtocol

IMACProtocol: This interface provides an abstraction for different network protocols.

Source:
mac: <macType> like IMACProtocol {
    @display("p=150,100");
} radio : like IRadio

IRadio: Prototype for radio modules.

Source:
radio: <radioType> like IRadio {
    @display("p=150,200");
}

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
classifierType string ""
macType string
radioType string
interfaceTableModule string
energySourceModule string

Properties

Name Value Description
display i=block/ifcard;bgb=250,300

Gates

Name Direction Size Description
upperLayerIn input
upperLayerOut output
radioIn input

Source code

module WirelessNic like IWirelessNic
{
    parameters:
        string classifierType = default("");
        string macType;
        string radioType;
        string interfaceTableModule;
        string energySourceModule;
        *.interfaceTableModule = default(absPath(this.interfaceTableModule));
        *.energySourceModule = default(absPath(this.energySourceModule));
        @display("i=block/ifcard;bgb=250,300");
    gates:
        input upperLayerIn;
        output upperLayerOut;
        input radioIn @labels(IRadioFrame);
    submodules:
        classifier: <classifierType> like IIeee8021dQoSClassifier if classifierType != "" {
            @display("p=80,70");
        }
        mac: <macType> like IMACProtocol {
            @display("p=150,100");
        }
        radio: <radioType> like IRadio {
            @display("p=150,200");
        }
    connections:
        radioIn --> { @display("m=s"); } --> radio.radioIn;
        radio.upperLayerIn <-- mac.lowerLayerOut;
        radio.upperLayerOut --> mac.lowerLayerIn;

        mac.upperLayerOut --> { @display("m=n"); } --> upperLayerOut;
        mac.upperLayerIn <-- { @display("m=n"); } <-- upperLayerIn if classifierType == "";
        mac.upperLayerIn <-- { @display("m=n"); } <-- classifier.out if classifierType != "";
        classifier.in <-- { @display("m=n"); } <-- upperLayerIn if classifierType != "";
}
File: src/inet/linklayer/common/WirelessNic.ned