|
DESERT 4.0.0
|
#include <uw-aloha-q-sync-sink.h>


Public Member Functions | |
| UwAloha_Q_Sync_SINK () | |
| virtual | ~UwAloha_Q_Sync_SINK ()=default |
| virtual int | recvSyncClMsg (ClMessage *m) |
Protected Types | |
| enum | UWALOHAQ_SINK_STATUS { IDLE , TRANSMITTING , RECEIVING } |
| enum | UWALOHAQ_SINK_SLOT_STATUS { RECV_PERIOD , TRANSMIT_PERIOD } |
Protected Member Functions | |
| virtual void | handleTimerExpiration () |
| virtual void | start (double delay) |
| virtual void | stop () |
| virtual void | recvFromUpperLayers (Packet *p) |
| virtual void | Phy2MacEndRx (Packet *p) |
| virtual void | Phy2MacStartRx (Packet *p) |
| virtual void | Phy2MacEndTx (const Packet *p) |
| virtual void | txAck () |
| virtual void | initPkt (Packet *p) |
| virtual int | command (int argc, const char *const *argv) |
Protected Attributes | |
| UWALOHAQ_SINK_STATUS | sink_status |
| UWALOHAQ_SINK_SLOT_STATUS | sink_slot_status |
| double | start_time |
| UwAlohaQSyncTimerSink | alohaq_sync_sink_timer |
| int | debug_ |
| int | sea_trial_ |
| int | ACK_size |
| int | HDR_size |
| bool | enable |
| double | t_prop_max |
| double | t_dp |
| double | t_guard |
| int | nn |
| std::vector< int > | succ_macs |
| double | slot_duration_factor |
Friends | |
| class | UwAlohaQSyncTimerSink |
Class that represents an UWALOHAQ Sink
|
protected |
|
protected |
| UwAloha_Q_Sync_SINK::UwAloha_Q_Sync_SINK | ( | ) |
Constructor of the UwAloha_Q_Sync_SINK class
References ACK_size, debug_, HDR_size, nn, sea_trial_, slot_duration_factor, t_dp, and t_prop_max.
|
virtualdefault |
Destructor of the UwAloha_Q_Sync_SINK class
|
protectedvirtual |
TCL command interpreter. It implements the following OTcl methods:
| argc | Number of arguments in argv. |
| argv | Array of strings which are the command parameters (Note that argv[0] is the name of the object). |
References start(), start_time, and stop().
Referenced by recvSyncClMsg().

|
protectedvirtual |
Triggered upon timer expiration event
References alohaq_sync_sink_timer, debug_, nn, RECV_PERIOD, sink_slot_status, slot_duration_factor, succ_macs, t_dp, t_guard, t_prop_max, TRANSMIT_PERIOD, and txAck().

|
protectedvirtual |
|
protectedvirtual |
Method called when the Phy Layer finish to receive a Packet
| const | Packet* Pointer to an Packet object that rapresent the Packet in reception |
References debug_, IDLE, PT_ALOHAQ_SYNC_ACK, sink_slot_status, sink_status, succ_macs, and TRANSMIT_PERIOD.
|
protectedvirtual |
Method called when the Mac Layer start to transmit a Packet
| const | Packet* Pointer to an Packet object that rapresent the Packet in transmission Method called when the Mac Layer finish to transmit a Packet |
| const | Packet* Pointer to an Packet object that rapresent the Packet in transmission |
References debug_, IDLE, and sink_status.
|
protectedvirtual |
Method called when the Phy Layer start to receive a Packet
| const | Packet* Pointer to an Packet object that rapresent the Packet in reception |
References debug_, IDLE, RECEIVING, and sink_status.
|
protectedvirtual |
|
virtual |
|
protectedvirtual |
Receive the packet from the upper layer (e.g. IP)
| Packet* | pointer to the packet received Schedule the beginning of each SINK frame cycle |
| delay | to await before starting the protocol |
References alohaq_sync_sink_timer, enable, nn, and succ_macs.
Referenced by command().
|
protectedvirtual |
|
protectedvirtual |
Method called to transmit ACK packet
References debug_, initPkt(), sink_status, and TRANSMITTING.
Referenced by handleTimerExpiration().

|
friend |
|
protected |
Size of the ACK HDR if any
Referenced by initPkt(), and UwAloha_Q_Sync_SINK().
|
protected |
UwAlohaQ Sink Timer
Referenced by handleTimerExpiration(), start(), and stop().
|
protected |
Debug variable: 0 for no info,
1 for detailed info
Referenced by handleTimerExpiration(), Phy2MacEndRx(), Phy2MacEndTx(), Phy2MacStartRx(), txAck(), and UwAloha_Q_Sync_SINK().
|
protected |
Size of the HDR if any
Referenced by UwAloha_Q_Sync_SINK().
|
protected |
Number of nodes
Referenced by handleTimerExpiration(), initPkt(), start(), and UwAloha_Q_Sync_SINK().
|
protected |
Written log variable
Referenced by UwAloha_Q_Sync_SINK().
|
protected |
Variable that holds UWALOHAQ_SINK_SLOT_STATUS
Referenced by handleTimerExpiration(), and Phy2MacEndRx().
|
protected |
Variable that holds UWALOHAQ_SINK_STATUS
Referenced by Phy2MacEndRx(), Phy2MacEndTx(), Phy2MacStartRx(), and txAck().
|
protected |
slot_duration = t_dp * slot_duration_factor (applicable for nodes)
Referenced by handleTimerExpiration(), and UwAloha_Q_Sync_SINK().
|
protected |
Time to wait before starting the protocol
Referenced by command().
|
protected |
Store MAC adresses of successful transmittors
Referenced by handleTimerExpiration(), initPkt(), Phy2MacEndRx(), start(), and stop().
|
protected |
Transmission delay
Referenced by handleTimerExpiration(), and UwAloha_Q_Sync_SINK().
|
protected |
Guard interval
Referenced by handleTimerExpiration().
|
protected |
Maximal propagation delay
Referenced by handleTimerExpiration(), and UwAloha_Q_Sync_SINK().