A Discrete-Event Network Simulator
API
lr-wpan-mac.h File Reference
#include <ns3/object.h>
#include <ns3/traced-callback.h>
#include <ns3/traced-value.h>
#include <ns3/mac16-address.h>
#include <ns3/mac64-address.h>
#include <ns3/sequence-number.h>
#include <ns3/lr-wpan-phy.h>
#include <ns3/lr-wpan-fields.h>
#include <ns3/event-id.h>
#include <deque>
+ Include dependency graph for lr-wpan-mac.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  ns3::LrWpanMac::IndTxQueueElement
 Helper structure for managing indirect transmission queue elements. More...
 
class  ns3::LrWpanMac
 Class that implements the LR-WPAN MAC state machine. More...
 
struct  ns3::McpsDataConfirmParams
 MCPS-DATA.confirm params. More...
 
struct  ns3::McpsDataIndicationParams
 MCPS-DATA.indication params. More...
 
struct  ns3::McpsDataRequestParams
 MCPS-DATA.request params. More...
 
struct  ns3::MlmeBeaconNotifyIndicationParams
 MLME-BEACON-NOTIFY.indication params. More...
 
struct  ns3::MlmePollConfirmParams
 MLME-START.confirm params. More...
 
struct  ns3::MlmePollRequestParams
 MLME-POLL.request params. More...
 
struct  ns3::MlmeStartConfirmParams
 MLME-START.confirm params. More...
 
struct  ns3::MlmeStartRequestParams
 MLME-START.request params. More...
 
struct  ns3::MlmeSyncLossIndicationParams
 MLME-SYNC-LOSS.indication params. More...
 
struct  ns3::MlmeSyncRequestParams
 MLME-SYNC.request params. More...
 
struct  ns3::LrWpanMac::TxQueueElement
 Helper structure for managing transmission queue elements. More...
 

Namespaces

 ns3
 Every class exported by the ns3 library is enclosed in the ns3 namespace.
 
 ns3::TracedValueCallback
 TracedValue Callback function types.
 

Typedefs

typedef void(* ns3::TracedValueCallback::LrWpanMacState) (LrWpanMacState oldValue, LrWpanMacState newValue)
 TracedValue callback signature for LrWpanMacState. More...
 
typedef Callback< void, McpsDataConfirmParams > ns3::McpsDataConfirmCallback
 This callback is called after a McpsDataRequest has been called from the higher layer. More...
 
typedef Callback< void, McpsDataIndicationParams, Ptr< Packet > > ns3::McpsDataIndicationCallback
 This callback is called after a Mcps has successfully received a frame and wants to deliver it to the higher layer. More...
 
typedef Callback< void, MlmeBeaconNotifyIndicationParams, Ptr< Packet > > ns3::MlmeBeaconNotifyIndicationCallback
 This callback is called after a Mlme has successfully received a beacon frame and wants to deliver it to the higher layer. More...
 
typedef Callback< void, MlmePollConfirmParams > ns3::MlmePollConfirmCallback
 This callback is called after a Mlme-Poll.Request has been called from the higher layer. More...
 
typedef Callback< void, MlmeStartConfirmParams > ns3::MlmeStartConfirmCallback
 This callback is called after a MlmeStartRequest has been called from the higher layer. More...
 
typedef Callback< void, MlmeSyncLossIndicationParams > ns3::MlmeSyncLossIndicationCallback
 This callback is called to indicate the loss of synchronization with a coordinator. More...
 
typedef void(* ns3::TracedValueCallback::SuperframeStatus) (SuperframeStatus oldValue, SuperframeStatus newValue)
 TracedValue callback signature for SuperframeStatus. More...
 

Enumerations

enum  ns3::LrWpanAddressMode { ns3::NO_PANID_ADDR = 0 , ns3::ADDR_MODE_RESERVED = 1 , ns3::SHORT_ADDR = 2 , ns3::EXT_ADDR = 3 }
 table 80 of 802.15.4 More...
 
enum  ns3::LrWpanAssociationStatus {
  ns3::ASSOCIATED = 0 , ns3::PAN_AT_CAPACITY = 1 , ns3::PAN_ACCESS_DENIED = 2 , ns3::ASSOCIATED_WITHOUT_ADDRESS = 0xfe ,
  ns3::DISASSOCIATED = 0xff
}
 table 83 of 802.15.4 More...
 
enum  ns3::LrWpanMacState {
  ns3::MAC_IDLE , ns3::MAC_CSMA , ns3::MAC_SENDING , ns3::MAC_ACK_PENDING ,
  ns3::CHANNEL_ACCESS_FAILURE , ns3::CHANNEL_IDLE , ns3::SET_PHY_TX_ON , ns3::MAC_GTS ,
  ns3::MAC_INACTIVE , ns3::MAC_CSMA_DEFERRED
}
 MAC states. More...
 
enum  ns3::LrWpanMcpsDataConfirmStatus {
  ns3::IEEE_802_15_4_SUCCESS = 0 , ns3::IEEE_802_15_4_TRANSACTION_OVERFLOW = 1 , ns3::IEEE_802_15_4_TRANSACTION_EXPIRED = 2 , ns3::IEEE_802_15_4_CHANNEL_ACCESS_FAILURE = 3 ,
  ns3::IEEE_802_15_4_INVALID_ADDRESS = 4 , ns3::IEEE_802_15_4_INVALID_GTS = 5 , ns3::IEEE_802_15_4_NO_ACK = 6 , ns3::IEEE_802_15_4_COUNTER_ERROR = 7 ,
  ns3::IEEE_802_15_4_FRAME_TOO_LONG = 8 , ns3::IEEE_802_15_4_UNAVAILABLE_KEY = 9 , ns3::IEEE_802_15_4_UNSUPPORTED_SECURITY = 10 , ns3::IEEE_802_15_4_INVALID_PARAMETER = 11
}
 Table 42 of 802.15.4-2006. More...
 
enum  ns3::LrWpanMlmePollConfirmStatus {
  ns3::MLMEPOLL_SUCCESS = 0 , ns3::MLMEPOLL_CHANNEL_ACCESS_FAILURE = 2 , ns3::MLMEPOLL_NO_ACK = 3 , ns3::MLMEPOLL_NO_DATA = 4 ,
  ns3::MLMEPOLL_COUNTER_ERROR = 5 , ns3::MLMEPOLL_FRAME_TOO_LONG = 6 , ns3::MLMEPOLL_UNAVAILABLE_KEY = 7 , ns3::MLMEPOLL_UNSUPPORTED_SECURITY = 8 ,
  ns3::MLMEPOLL_INVALID_PARAMETER = 9
}
 Table 39 of IEEE 802.15.4-2011. More...
 
enum  ns3::LrWpanMlmeStartConfirmStatus {
  ns3::MLMESTART_SUCCESS = 0 , ns3::MLMESTART_NO_SHORT_ADDRESS = 1 , ns3::MLMESTART_SUPERFRAME_OVERLAP = 2 , ns3::MLMESTART_TRACKING_OFF = 3 ,
  ns3::MLMESTART_INVALID_PARAMETER = 4 , ns3::MLMESTART_COUNTER_ERROR = 5 , ns3::MLMESTART_FRAME_TOO_LONG = 6 , ns3::MLMESTART_UNAVAILABLE_KEY = 7 ,
  ns3::MLMESTART_UNSUPPORTED_SECURITY = 8 , ns3::MLMESTART_CHANNEL_ACCESS_FAILURE = 9
}
 Table 35 of IEEE 802.15.4-2011. More...
 
enum  ns3::LrWpanSyncLossReason { ns3::MLMESYNCLOSS_PAN_ID_CONFLICT = 0 , ns3::MLMESYNCLOSS_REALIGMENT = 1 , ns3::MLMESYNCLOSS_BEACON_LOST = 2 , ns3::MLMESYNCLOSS_SUPERFRAME_OVERLAP = 3 }
 Table 37 of IEEE 802.15.4-2011. More...
 
enum  ns3::LrWpanTxOption { ns3::TX_OPTION_NONE = 0 , ns3::TX_OPTION_ACK = 1 , ns3::TX_OPTION_GTS = 2 , ns3::TX_OPTION_INDIRECT = 4 }
 Tx options. More...
 
enum  ns3::SuperframeStatus { ns3::BEACON , ns3::CAP , ns3::CFP , ns3::INACTIVE }
 Superframe status. More...
 
enum  ns3::SuperframeType { ns3::OUTGOING = 0 , ns3::INCOMING = 1 }
 Superframe type. More...