Class GPSROption

File: src/inet/routing/gpsr/GPSR.msg

C++ definition

The GPSROption is used to add extra routing information for network datagrams.

For more information, see the GPSR paper http://www.eecs.harvard.edu/htk/publication/2000-mobi-karp-kung.pdf

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.

Extends:

Name Type Description
TLVOptionBase class (no description)

Fields:

Name Type Description
routingMode GPSRForwardingMode
destinationPosition Coord

D

perimeterRoutingStartPosition Coord

Lp

perimeterRoutingForwardPosition Coord

Lf

currentFaceFirstSenderAddress L3Address

e0

currentFaceFirstReceiverAddress L3Address

e0

senderAddress L3Address

TODO: this field is not strictly needed by GPSR (should be eliminated)

type short
length short

total length of option

Source code:

//
// The GPSROption is used to add extra routing information for network datagrams.
//
// For more information, see the GPSR paper
// http://www.eecs.harvard.edu/~htk/publication/2000-mobi-karp-kung.pdf
//
class GPSROption extends TLVOptionBase
{
    GPSRForwardingMode routingMode = (GPSRForwardingMode)-1;
    Coord destinationPosition;               // D
    Coord perimeterRoutingStartPosition;     // Lp
    Coord perimeterRoutingForwardPosition;   // Lf
    L3Address currentFaceFirstSenderAddress;   // e0
    L3Address currentFaceFirstReceiverAddress; // e0
    L3Address senderAddress; // TODO: this field is not strictly needed by GPSR (should be eliminated)
}