DESERT 3.5.1
Loading...
Searching...
No Matches
uwUFetch_NODE Class Reference

#include <uwUFetch_NODE.h>

Inheritance diagram for uwUFetch_NODE:
Collaboration diagram for uwUFetch_NODE:

Classes

class  uwUFetch_BackOffTimer
 
class  uwUFetch_BEACON_timer
 
class  uwUFetch_CBeacon_timer
 
class  uwUFetch_CTS_timer
 
class  uwUFetch_DATA_BEFORE_TX_timer
 
class  uwUFetch_DATA_timer
 
class  uwUFetch_NODE_timer
 
class  uwUFetch_POLL_timer
 
class  uwUFetch_PROBE_timer
 
class  uwUFetch_TRIGGER_timer
 

Public Member Functions

 uwUFetch_NODE ()
 
virtual ~uwUFetch_NODE ()
 
virtual int command (int argc, const char *const *argv)
 
virtual int crLayCommand (ClMessage *m)
 

Protected Types

enum  UWUFETCH_NODE_STATUS {
  UWUFETCH_NODE_STATUS_IDLE , UWUFETCH_NODE_STATUS_BEACON_RECEIVE , UWUFETCH_NODE_STATUS_TRANSMIT_PROBE , UWUFETCH_NODE_STATUS_WAIT_POLL_PACKET ,
  UWUFETCH_NODE_STATUS_POLL_RECEIVE , UWUFETCH_NODE_STATUS_TRANSMIT_DATA , UWUFETCH_NODE_STATUS_TRIGGER_RECEIVE , UWUFETCH_NODE_STATUS_RTS_TRANSMIT ,
  UWUFETCH_NODE_STATUS_WAIT_CTS_PACKET , UWUFETCH_NODE_STATUS_CTS_RECEIVE , UWUFETCH_NODE_STATUS_TRANSMIT_BEACON , UWUFETCH_NODE_STATUS_WAIT_PROBE_PACKET ,
  UWUFETCH_NODE_STATUS_PROBE_RX , UWUFETCH_NODE_STATUS_POLL_TX , UWUFETCH_NODE_STATUS_WAIT_DATA_NODE , UWUFETCH_NODE_STATUS_DATA_RX ,
  UWUFETCH_NODE_STATUS_WAIT_CBEACON_PACKET , UWUFETCH_NODE_STATUS_CBEACON_RECEIVE
}
 
enum  UWUFETCH_NODE_STATUS_CHANGE {
  UWFETCH_NODE_STATUS_CHANGE_STATE_IDLE , UWFETCH_NODE_STATUS_CHANGE_PACKET_ERROR , UWFETCH_NODE_STATUS_CHANGE_PACKET_FOR_ANOTHER_NODE , UWFETCH_NODE_STATUS_CHANGE_PACKET_UNKNOWN_TYPE ,
  UWUFETCH_NODE_STATUS_CHANGE_BEACON_RX , UWUFETCH_NODE_STATUS_CHANGE_PROBE_TX , UWUFETCH_NODE_STATUS_CHANGE_TO_WAIT_POLL_EXPIRED , UWUFETCH_NODE_STATUS_CHANGE_POLL_RX ,
  UWFETCH_NODE_STATUS_CHANGE_CBEACON_RX_DATA_ALREADY_TX , UWUFETCH_NODE_STATUS_CHANGE_MAX_DATA_PCK_TX , UWUFETCH_NODE_STATUS_CHANGE_DATA_PCK_TX , UWUFETCH_NODE_STATUS_CHANGE_TRIGGER_RX ,
  UWUFETCH_NODE_STATUS_CHANGE_RTS_TX , UWUFETCH_NODE_STATUS_CHANGE_TO_WAIT_CTS_EXPIRED , UWUFETCH_NODE_STATUS_CHANGE_CTS_RX , UWUFETCH_NODE_STATUS_CHANGE_BEACON_TX ,
  UWUFETCH_NODE_STATUS_CHANGE_CBEACON_TX , UWUFETCH_NODE_STATUS_CHANGE_PROBE_RX , UWUFETCH_NODE_STATUS_CHANGE_CBEACON_MAX_ALLOWED_TX_0_PROBE_RX , UWUFETCH_NODE_STATUS_CHANGE_CBEACON_ALLOWED_TX_0_PROBE_RX ,
  UWUFETCH_NODE_STATUS_CHANGE_MAX_PROBE_RX_PROBE_TO_NOT_EXPIRED , UWUFETCH_NODE_STATUS_CHANGE_TO_EXPIRED_AT_LEAST_1_PROBE_RX , UWUFETCH_NODE_STATUS_CHANGE_POLL_TX , UWUFETCH_NODE_STATUS_CHANGE_DATA_TO_EXPIRED ,
  UWUFETCH_NODE_STATUS_CHANGE_DATA_TO_EXPIRED_0_NODE_TO_POLL_NO_OTHER_CBEACON , UWUFETCH_NODE_STATUS_CHANGE_DATA_TO_EXPIRED_0_NODE_TO_POLL_YES_OTHER_CBEACON , UWUFETCH_NODE_STATUS_CHANGE_DATA_TO_EXPIRED_ANOTHER_NODE_TO_POLL , UWUFETCH_NODE_STATUS_CHANGE_DATA_RX ,
  UWUFETCH_NODE_STATUS_CHANGE_LAST_DATA_PCK_RX , UWUFETCH_NODE_STATUS_CHANGE_DATA_MAX_ALLOWED_PCK_RX_0_NODE_TO_POLL_NO_OTHER_CBEACON , UWUFETCH_NODE_STATUS_CHANGE_DATA_MAX_ALLOWED_PCK_RX_0_NODE_TO_POLL_YES_OTHER_CBEACON , UWUFETCH_NODE_STATUS_CHANGE_DATA_MAX_ALLOWED_PCK_RX_YES_NODE_TO_POLL ,
  UWUFETCH_NODE_STATUS_CHANGE_CBEACON_MAX_ALLOWED_TX , UWUFETCH_NODE_STATUS_CHANGE_BEACON_TO_EXPIRED , UWUFETCH_NODE_STATUS_CHANGE_TRIGGER_RX_BUT_HN_NO_DATA_TO_TX , UWUFETCH_NODE_STATUS_CHANGE_HN_TX_ALL_DATA_TO_AUV ,
  UWUFETCH_NODE_STATUS_CHANGE_HN_RX_TRIGGER_FROM_AUV_CORRUPTED , UWUFETCH_NODE_STATUS_CHANGE_HN_FINISH_TX_DATA_PCK_TO_AUV_RETURN_CBEACON_TX
}
 
enum  UWUFETCH_NODE_PACKET_TYPE {
  UWUFETCH_NODE_PACKET_TYPE_DATA , UWUFETCH_NODE_PACKET_TYPE_PROBE , UWUFETCH_NODE_PACKET_TYPE_POLL , UWUFETCH_NODE_PACKET_TYPE_BEACON ,
  UWUFETCH_NODE_PACKET_TYPE_TRIGGER , UWUFETCH_NODE_PACKET_TYPE_RTS , UWUFETCH_NODE_PACKET_TYPE_CTS
}
 
enum  UWUFETCH_TIMER_STATUS { UWUFETCH_TIMER_STATUS_IDLE , UWUFETCH_TIMER_STATUS_RUNNING , UWUFETCH_TIMER_STATUS_FROZEN , UWUFETCH_TIMER_STATUS_EXPIRED }
 

Protected Member Functions

virtual void Phy2MacStartRx (const Packet *p)
 
virtual void Phy2MacStartRx_HN (const Packet *p)
 
virtual void Phy2MacEndRx (Packet *p)
 
virtual void Phy2MacEndRx_HN_without (Packet *p)
 
virtual void Phy2MacEndRx_HN (Packet *p)
 
virtual void Mac2PhyStartTx (Packet *p)
 
virtual void Mac2PhyStartTx_HN (Packet *p)
 
virtual void Phy2MacEndTx (const Packet *p)
 
virtual void Phy2MacEndTx_HN (const Packet *p)
 
virtual void recvFromUpperLayers (Packet *p)
 
virtual void recvFromUpperLayers_HN (Packet *p)
 
virtual void printStateInfo (double delay=0)
 
virtual void initInfo ()
 
virtual void waitForUser ()
 
virtual void refreshReason (UWUFETCH_NODE_STATUS_CHANGE reason)
 
virtual void refreshState (UWUFETCH_NODE_STATUS state)
 
virtual void stateIdle_NODE ()
 
virtual void BEACON_rx ()
 
virtual void BCKTOExpired ()
 
virtual void state_PROBE_tx ()
 
virtual void PROBE_tx ()
 
virtual void state_wait_POLL ()
 
virtual void PollTOExpired ()
 
virtual void POLL_rx ()
 
virtual void state_DATA_NODE_first_tx ()
 
virtual void DataBeforeTxTOExpired ()
 
virtual void state_DATA_NODE_tx ()
 
virtual void state_DATA_NODE_finish_tx ()
 
virtual void DATA_NODE_tx ()
 
virtual void state_wait_CBEACON ()
 
virtual void CBeaconTOExpired ()
 
virtual void CBEACON_rx ()
 
virtual void stateIdle_HN ()
 
virtual void BeaconTxTOExpire ()
 
virtual void state_BEACON_tx ()
 
virtual void BEACON_tx ()
 
virtual void state_wait_PROBE ()
 
virtual void PROBE_rx ()
 
virtual void state_wait_other_PROBE ()
 
virtual void ProbeTOExpired ()
 
virtual void state_POLL_tx ()
 
virtual void POLL_tx ()
 
virtual void state_wait_first_DATA ()
 
virtual void state_wait_other_DATA ()
 
virtual void DataTOExpired ()
 
virtual void DATA_rx ()
 
virtual void state_CBEACON_tx ()
 
virtual void CBEACON_tx ()
 
virtual void TRIGGER_rx ()
 
virtual void TRIGGER_rx_without ()
 
virtual void state_RTS_tx ()
 
virtual void RTS_tx ()
 
virtual void state_wait_CTS ()
 
virtual void CtsTOExpired ()
 
virtual void CTS_rx ()
 
virtual void state_DATA_HN_first_tx ()
 
virtual void state_DATA_HN_first_tx_without ()
 
virtual void state_DATA_HN_tx ()
 
virtual void state_DATA_HN_tx_without ()
 
virtual void state_DATA_HN_finish_tx ()
 
virtual void state_DATA_HN_finish_tx_without ()
 
virtual void DATA_HN_tx ()
 
virtual void DATA_HN_tx_without ()
 
virtual void BCKTOExpired_HN ()
 
virtual void BCKTOExpired_HN_without ()
 
virtual void DataBeforeTxTOExpired_HN ()
 
virtual bool isHeadNode ()
 
virtual bool typeCommunication ()
 
virtual bool burstDATA ()
 
virtual double choiceBackOffTimer ()
 
virtual double choiceBackOffTimer_HN ()
 
virtual double getDataTimerValue ()
 
virtual void computeTxTime (UWUFETCH_NODE_PACKET_TYPE tp)
 
virtual void computeTxTime_HN (UWUFETCH_NODE_PACKET_TYPE tp)
 
virtual double getRTT ()
 
virtual void updateListProbbedNode ()
 
void incrBeaconPckTx_by_HN ()
 
int getBeaconTx_by_HN ()
 
void incrTotalBeaconPckTx_by_HN ()
 
int getTotalBeaconTx_by_HN ()
 
void incrProbePckRx_HN ()
 
int getProbePckRx_HN ()
 
void incrTotalProbePckRx_HN ()
 
int getTotalProbePckRx_HN ()
 
void incrTotalProbePckRx_corrupted_HN ()
 
int getTotalProbePckRx_corrupted_HN ()
 
void incrPollPckTx_by_HN ()
 
int getPollPckTx_by_HN ()
 
void incrTotalPollPckTx_by_HN ()
 
int getTotalPollPckTx_by_HN ()
 
void incrDataPckRx_by_HN ()
 
int getDataPckRx_by_HN ()
 
void incrTotalDataPckRx_by_HN ()
 
int getTotalDataPckRx_by_HN ()
 
void incrTotalDataPckRx_corrupted_by_HN ()
 
int getTotalDataPckRx_corrupted_by_HN ()
 
void incrCBeaconPckTx_by_HN ()
 
int getCBeaconPckTx_by_HN ()
 
void incrTotalCBeaconPckTx_by_HN ()
 
int getTotalCBeaconPckTx_by_HN ()
 
void incrTriggerPckRx_HN ()
 
int getTriggerPckRx_HN ()
 
void incrTotalTriggerPckRx_HN ()
 
int getTotalTriggerPckRx_HN ()
 
void incrTotalTriggerPckRx_corrupted_HN ()
 
int getTotalTriggerPckRx_corrupted_HN ()
 
void incrRtsPckTx_by_HN ()
 
int getRtsPckTx_by_HN ()
 
void incrTotalRtsPckTx_by_HN ()
 
int getTotalRtsPckTx_by_HN ()
 
void incrCtsPckRx_HN ()
 
int getCtsPckRx_HN ()
 
void incrTotalCtsPckRx_HN ()
 
int getTotalCtsPckRx_HN ()
 
void incrTotalCtsPckRx_corrupted_HN ()
 
int getTotalCtsPckRx_corrupted_HN ()
 
void incrDataPckTx_by_HN ()
 
int getDataPckTx_by_HN ()
 
void incrTotalDataPckTx_by_HN ()
 
int getTotalDataPckTx_by_HN ()
 
void incrBeaconPckRx_by_NODE ()
 
int getBeaconPckRx_by_NODE ()
 
void incrTotalBeaconPckRx_by_NODE ()
 
int getTotalBeaconPckRx_by_NODE ()
 
void incrTotalBeaconPckRx_corrupted_by_NODE ()
 
int getTotalBeaconPckRx_corrupted_by_NODE ()
 
void incrProbePckTx_by_NODE ()
 
int getProbePckTx_by_NODE ()
 
void incrTotalProbePckTx_by_NODE ()
 
int getTotalProbePckTx_by_NODE ()
 
void incrPollPckRx_by_NODE ()
 
int getPollPckRx_by_NODE ()
 
void incrTotalPollPckRx_by_NODE ()
 
int getTotalPollPckRx_by_NODE ()
 
void incrTotalPollPckRx_corrupted_by_NODE ()
 
int getTotalPollPckRx_corrupted_by_NODE ()
 
void incrDataPckTx_by_NODE ()
 
int getDataPckTx_by_NODE ()
 
void incrTotalDataPckTx_by_NODE ()
 
int getTotalDataPckTx_by_NODE ()
 
void incrCBeaconPckRx_by_NODE ()
 
int getCBeaconPckRx_by_NODE ()
 
void incrTotalCBeaconPckRx_by_NODE ()
 
int getTotalCBeaconPckRx_by_NODE ()
 
void incrTotalCBeaconPckRx_corrupted_by_NODE ()
 
int getTotalCBeaconPckRx_corrupted_by_NODE ()
 

Protected Attributes

int MAX_PAYLOAD
 
double T_GUARD
 
int MAXIMUM_BUFFER_DATA_PCK_NODE
 
double T_POLL
 
int debugMio_
 
int N_RUN
 
double TIME_BETWEEN_2_TX_DATA_NODE_HN
 
int MODE_COMM_HN_AUV
 
int MODE_BURST_DATA
 
uwUFetch_BackOffTimer BCK_timer_probe
 
uwUFetch_POLL_timer POLL_timer
 
uwUFetch_DATA_BEFORE_TX_timer DATA_BEFORE_TX_timer
 
uwUFetch_CBeacon_timer CBEACON_timer
 
double rx_BEACON_start_time
 
double rx_BEACON_finish_time
 
double tx_PROBE_start_time
 
double tx_PROBE_finish_time
 
double rx_POLL_start_time
 
double rx_POLL_finish_time
 
double tx_DATA_start_time
 
double tx_DATA_finish_time
 
double rx_CBEACON_start_time
 
double rx_CBEACON_finish_time
 
int n_tot_BEACON_pck_rx_by_NODE
 
int n_tot_BEACON_pck_rx_corr_by_NODE
 
int n_tot_PROBE_pck_tx_by_NODE
 
int n_tot_POLL_pck_rx_by_NODE
 
int n_tot_POLL_pck_rx_corr_by_NODE
 
int n_tot_DATA_pck_tx_by_NODE
 
int n_tot_CBEACON_pck_rx_by_NODE
 
int n_tot_CBEACON_pck_rx_corr_by_NODE
 
double T_min_bck_probe_node
 
double T_max_bck_probe_node
 
int num_cbeacon_node_rx
 
int mac_addr_HN_in_beacon
 
double bck_before_tx_probe
 
double Tprobe
 
double Tdata_NODE
 
double RTT
 
int mac_addr_HN_in_poll
 
int num_pck_to_tx_by_NODE
 
double Tdata_NODE_pck
 
int num_cbeacon_at_now_HN_tx
 
int mac_addr_HN_in_cbeacon
 
double T_min_bck_DATA
 
double T_max_bck_DATA
 
double bck_before_tx_data
 
int n_BEACON_pck_rx_by_NODE
 
int n_PROBE_pck_tx_by_NODE
 
int n_POLL_pck_rx_by_NODE
 
int n_DATA_pck_tx_by_NODE
 
int n_CBEACON_pck_rx_by_NODE
 
bool dataAlreadyTransmitted
 
bool rxBEACONEnabled
 
bool txPROBEEnabled
 
bool rxPOLLEnabled
 
bool txDATAEnabled
 
bool rxCBEACONEnabled
 
Packet * curr_BEACON_NODE_pck_rx
 
Packet * curr_PROBE_NODE_pck_tx
 
Packet * curr_POLL_NODE_pck_rx
 
Packet * curr_DATA_NODE_pck_tx
 
Packet * curr_CBEACON_NODE_pck_rx
 
std::queue< Packet * > Q_data
 
double T_START_PROCEDURE_HN_NODE
 
double T_MAX_BACKOFF_PROBE
 
double T_MIN_BACKOFF_PROBE
 
int PRINT_TRANSITIONS_INT
 
double T_PROBE
 
int MAX_ALLOWED_CBEACON_TX
 
int MAX_PCK_HN_WANT_RX_FROM_NODE
 
double T_CTS
 
int MAX_POLLED_NODE
 
double TIME_BETWEEN_2_TX_DATA_HN_AUV
 
uwUFetch_BEACON_timer BeaconBeforeTx_timer
 
uwUFetch_PROBE_timer PROBE_timer
 
uwUFetch_DATA_timer DATA_timer
 
uwUFetch_BackOffTimer BCK_timer_rts
 
uwUFetch_CTS_timer CTS_timer
 
uwUFetch_BackOffTimer BCK_timer_data
 
double tx_BEACON_start_HN_time
 
double tx_BEACON_finish_HN_time
 
double rx_PROBE_start_HN_time
 
double rx_PROBE_finish_HN_time
 
double tx_POLL_start_HN_time
 
double tx_POLL_finish_HN_time
 
double rx_DATA_start_HN_time
 
double rx_DATA_finish_HN_time
 
double tx_CBEACON_start_HN_time
 
double tx_CBEACON_finish_HN_time
 
double rx_TRIGGER_start_HN_time
 
double rx_TRIGGER_finish_HN_time
 
double tx_RTS_start_HN_time
 
double tx_RTS_finish_HN_time
 
double rx_CTS_start_HN_time
 
double rx_CTS_finish_HN_time
 
double tx_DATA_start_HN_time
 
double tx_DATA_finish_HN_time
 
int n_tot_BEACON_pck_tx_by_HN
 
int n_tot_PROBE_pck_rx_by_HN
 
int n_tot_PROBE_pck_corr_rx_by_HN
 
int n_tot_POLL_pck_tx_by_HN
 
int n_tot_DATA_pck_rx_by_HN
 
int n_tot_DATA_pck_rx_corr_by_HN
 
int n_tot_CBEACON_pck_tx_by_HN
 
int n_tot_TRIGGER_pck_rx_by_HN
 
int n_tot_TRIGGER_pck_rx_corr_by_HN
 
int n_tot_RTS_pck_tx_by_HN
 
int n_tot_CTS_pck_rx_by_HN
 
int n_tot_CTS_pck_rx_corr_by_HN
 
int n_tot_DATA_pck_tx_by_HN
 
int mac_addr_NODE_polled
 
int number_data_pck_HN_rx_exact
 
int pck_number_id
 
double data_timeout
 
double Tbeacon
 
double Tpoll
 
double Trts
 
double Tdata_HN
 
int mac_addr_NODE_in_data
 
double bck_before_tx_RTS
 
double T_min_bck_RTS
 
double T_max_bck_RTS
 
int mac_addr_AUV_in_trigger
 
int mac_addr_AUV_in_CTS
 
int max_data_HN_can_tx
 
int max_pck_HN_can_tx
 
double Tdata_HN_pck
 
bool CTSrx
 
bool txRTSbeforeCBEACON
 
bool sectionCBeacon
 
int n_BEACON_pck_tx_by_HN
 
int n_PROBE_pck_rx_by_HN
 
int n_POLL_pck_tx_by_HN
 
int n_DATA_pck_rx_by_HN
 
int n_CBEACON_pck_tx_by_HN
 
int n_TRIGGER_pck_rx_by_HN
 
int n_RTS_pck_tx_by_HN
 
int n_CTS_pck_rx_by_HN
 
int n_DATA_pck_tx_by_HN
 
bool txBEACONEnabled
 
bool rxPROBEEnabled
 
bool txPOLLEnabled
 
bool rxDATAEnabled
 
bool txCBEACONEnabled
 
bool rxTRIGGEREnabled
 
bool txRTSEnabled
 
bool rxCTSEnabled
 
bool txDATAEnabledHN
 
Packet * curr_BEACON_HN_pck_tx
 
Packet * curr_PROBE_HN_pck_rx
 
Packet * curr_POLL_HN_pck_tx
 
Packet * curr_DATA_HN_pck_rx
 
Packet * curr_CBEACON_HN_pck_tx
 
Packet * curr_TRIGGER_HN_pck_rx
 
Packet * curr_RTS_HN_pck_tx
 
Packet * curr_CTS_HN_pck_rx
 
Packet * curr_DATA_HN_pck_tx
 
Packet * curr_DATA_NODE_pck_tx_HN
 
std::queue< Packet * > Q_data_HN
 
std::queue< int > Q_data_source_SN
 
std::queue< int > Q_probbed_mac_HN
 
std::queue< int > Q_probbed_n_pcks_NODE_want_tx_HN
 
std::queue< double > Q_probbed_backoff_time
 
UWUFETCH_NODE_STATUS_CHANGE last_reason
 
UWUFETCH_NODE_STATUS curr_state
 
UWUFETCH_NODE_STATUS prev_state
 
bool print_transitions
 
int HEADNODE
 
std::ofstream fout
 
std::ofstream out_file_logging
 

Static Protected Attributes

static bool initialized = false
 
static std::map< UWUFETCH_NODE_STATUS, std::string > statusInfo
 
static std::map< UWUFETCH_NODE_STATUS_CHANGE, std::string > statusChange
 
static std::map< UWUFETCH_NODE_PACKET_TYPE, std::string > packetType
 
static std::map< UWUFETCH_TIMER_STATUS, std::string > statusTimer
 

Detailed Description

Definition at line 135 of file uwUFetch_NODE.h.

Member Enumeration Documentation

◆ UWUFETCH_NODE_PACKET_TYPE

Enumerator
UWUFETCH_NODE_PACKET_TYPE_DATA 
UWUFETCH_NODE_PACKET_TYPE_PROBE 
UWUFETCH_NODE_PACKET_TYPE_POLL 
UWUFETCH_NODE_PACKET_TYPE_BEACON 
UWUFETCH_NODE_PACKET_TYPE_TRIGGER 
UWUFETCH_NODE_PACKET_TYPE_RTS 
UWUFETCH_NODE_PACKET_TYPE_CTS 

Definition at line 235 of file uwUFetch_NODE.h.

◆ UWUFETCH_NODE_STATUS

< States in which SN or HN may be during Its execution

Enumerator
UWUFETCH_NODE_STATUS_IDLE 
UWUFETCH_NODE_STATUS_BEACON_RECEIVE 
UWUFETCH_NODE_STATUS_TRANSMIT_PROBE 
UWUFETCH_NODE_STATUS_WAIT_POLL_PACKET 
UWUFETCH_NODE_STATUS_POLL_RECEIVE 
UWUFETCH_NODE_STATUS_TRANSMIT_DATA 
UWUFETCH_NODE_STATUS_TRIGGER_RECEIVE 
UWUFETCH_NODE_STATUS_RTS_TRANSMIT 
UWUFETCH_NODE_STATUS_WAIT_CTS_PACKET 
UWUFETCH_NODE_STATUS_CTS_RECEIVE 
UWUFETCH_NODE_STATUS_TRANSMIT_BEACON 
UWUFETCH_NODE_STATUS_WAIT_PROBE_PACKET 
UWUFETCH_NODE_STATUS_PROBE_RX 
UWUFETCH_NODE_STATUS_POLL_TX 
UWUFETCH_NODE_STATUS_WAIT_DATA_NODE 
UWUFETCH_NODE_STATUS_DATA_RX 
UWUFETCH_NODE_STATUS_WAIT_CBEACON_PACKET 
UWUFETCH_NODE_STATUS_CBEACON_RECEIVE 

Definition at line 171 of file uwUFetch_NODE.h.

◆ UWUFETCH_NODE_STATUS_CHANGE

Enumerator
UWFETCH_NODE_STATUS_CHANGE_STATE_IDLE 
UWFETCH_NODE_STATUS_CHANGE_PACKET_ERROR 
UWFETCH_NODE_STATUS_CHANGE_PACKET_FOR_ANOTHER_NODE 
UWFETCH_NODE_STATUS_CHANGE_PACKET_UNKNOWN_TYPE 
UWUFETCH_NODE_STATUS_CHANGE_BEACON_RX 
UWUFETCH_NODE_STATUS_CHANGE_PROBE_TX 
UWUFETCH_NODE_STATUS_CHANGE_TO_WAIT_POLL_EXPIRED 
UWUFETCH_NODE_STATUS_CHANGE_POLL_RX 
UWFETCH_NODE_STATUS_CHANGE_CBEACON_RX_DATA_ALREADY_TX 
UWUFETCH_NODE_STATUS_CHANGE_MAX_DATA_PCK_TX 
UWUFETCH_NODE_STATUS_CHANGE_DATA_PCK_TX 
UWUFETCH_NODE_STATUS_CHANGE_TRIGGER_RX 
UWUFETCH_NODE_STATUS_CHANGE_RTS_TX 
UWUFETCH_NODE_STATUS_CHANGE_TO_WAIT_CTS_EXPIRED 
UWUFETCH_NODE_STATUS_CHANGE_CTS_RX 
UWUFETCH_NODE_STATUS_CHANGE_BEACON_TX 
UWUFETCH_NODE_STATUS_CHANGE_CBEACON_TX 
UWUFETCH_NODE_STATUS_CHANGE_PROBE_RX 
UWUFETCH_NODE_STATUS_CHANGE_CBEACON_MAX_ALLOWED_TX_0_PROBE_RX 
UWUFETCH_NODE_STATUS_CHANGE_CBEACON_ALLOWED_TX_0_PROBE_RX 
UWUFETCH_NODE_STATUS_CHANGE_MAX_PROBE_RX_PROBE_TO_NOT_EXPIRED 
UWUFETCH_NODE_STATUS_CHANGE_TO_EXPIRED_AT_LEAST_1_PROBE_RX 
UWUFETCH_NODE_STATUS_CHANGE_POLL_TX 
UWUFETCH_NODE_STATUS_CHANGE_DATA_TO_EXPIRED 
UWUFETCH_NODE_STATUS_CHANGE_DATA_TO_EXPIRED_0_NODE_TO_POLL_NO_OTHER_CBEACON 
UWUFETCH_NODE_STATUS_CHANGE_DATA_TO_EXPIRED_0_NODE_TO_POLL_YES_OTHER_CBEACON 
UWUFETCH_NODE_STATUS_CHANGE_DATA_TO_EXPIRED_ANOTHER_NODE_TO_POLL 
UWUFETCH_NODE_STATUS_CHANGE_DATA_RX 
UWUFETCH_NODE_STATUS_CHANGE_LAST_DATA_PCK_RX 
UWUFETCH_NODE_STATUS_CHANGE_DATA_MAX_ALLOWED_PCK_RX_0_NODE_TO_POLL_NO_OTHER_CBEACON 
UWUFETCH_NODE_STATUS_CHANGE_DATA_MAX_ALLOWED_PCK_RX_0_NODE_TO_POLL_YES_OTHER_CBEACON 
UWUFETCH_NODE_STATUS_CHANGE_DATA_MAX_ALLOWED_PCK_RX_YES_NODE_TO_POLL 
UWUFETCH_NODE_STATUS_CHANGE_CBEACON_MAX_ALLOWED_TX 
UWUFETCH_NODE_STATUS_CHANGE_BEACON_TO_EXPIRED 
UWUFETCH_NODE_STATUS_CHANGE_TRIGGER_RX_BUT_HN_NO_DATA_TO_TX 
UWUFETCH_NODE_STATUS_CHANGE_HN_TX_ALL_DATA_TO_AUV 
UWUFETCH_NODE_STATUS_CHANGE_HN_RX_TRIGGER_FROM_AUV_CORRUPTED 
UWUFETCH_NODE_STATUS_CHANGE_HN_FINISH_TX_DATA_PCK_TO_AUV_RETURN_CBEACON_TX 

Definition at line 193 of file uwUFetch_NODE.h.

◆ UWUFETCH_TIMER_STATUS

Enumerator
UWUFETCH_TIMER_STATUS_IDLE 
UWUFETCH_TIMER_STATUS_RUNNING 
UWUFETCH_TIMER_STATUS_FROZEN 
UWUFETCH_TIMER_STATUS_EXPIRED 

Definition at line 246 of file uwUFetch_NODE.h.

Constructor & Destructor Documentation

◆ uwUFetch_NODE()

uwUFetch_NODE::uwUFetch_NODE ( )

Constructor of uwUFetch_NODE class.

Constructor of the class uwUFetch_NODE.

Definition at line 81 of file uwUFetch_NODE_SENSOR.cpp.

◆ ~uwUFetch_NODE()

uwUFetch_NODE::~uwUFetch_NODE ( )
virtual

Destructor of uwUFetch_NODE class.

Definition at line 272 of file uwUFetch_NODE_SENSOR.cpp.

Member Function Documentation

◆ BCKTOExpired()

void uwUFetch_NODE::BCKTOExpired ( )
protectedvirtual

Handle the.

Definition at line 1862 of file uwUFetch_NODE_SENSOR.cpp.

◆ BCKTOExpired_HN()

void uwUFetch_NODE::BCKTOExpired_HN ( )
protectedvirtual

Backoff timeout is expired.

After the expiration HN can pass the successive DATA packet that will be transmitted to Its physical layer and then forwarded to the AUV. In this case the communication between HN and AUV take place with RTS and CTS packets

Definition at line 1610 of file uwUFetch_NODE_HEADNODE.cpp.

◆ BCKTOExpired_HN_without()

void uwUFetch_NODE::BCKTOExpired_HN_without ( )
protectedvirtual

Backoff timeout is expired.

After the expiration HN can pass the successive DATA packet that will be transmitted to Its physical layer and then forwarded to the AUV. In this case the communication between HN and AUV take place without RTS and CTS packets

Definition at line 539 of file uwUFetch_NODE_HEADNODE_mod_2.cpp.

◆ BEACON_rx()

void uwUFetch_NODE::BEACON_rx ( )
protectedvirtual

SN received a BEACON packet.

Extract all information contained into It.

Definition at line 1780 of file uwUFetch_NODE_SENSOR.cpp.

◆ BEACON_tx()

void uwUFetch_NODE::BEACON_tx ( )
protectedvirtual

HN transmit the BEACON packet.

Definition at line 2332 of file uwUFetch_NODE_HEADNODE.cpp.

◆ BeaconTxTOExpire()

void uwUFetch_NODE::BeaconTxTOExpire ( )
protectedvirtual

BEACON timeout is expired.

In this case the HN has not received any TRIGGER packet, so start the communication with the SNs of the network.

Before to start the communication between AUV, HN move the data packets from the SN queue to the HN data queue. This operation is done only by the HN that function also as SN

Definition at line 1416 of file uwUFetch_NODE_HEADNODE.cpp.

◆ burstDATA()

bool uwUFetch_NODE::burstDATA ( )
protectedvirtual

Indicate whether the transmission of DATA packets to the AUV take place with or without burst data.

Returns
true Transmission take place with burst data

Definition at line 3115 of file uwUFetch_NODE_HEADNODE_mod_1.cpp.

◆ CBEACON_rx()

void uwUFetch_NODE::CBEACON_rx ( )
protectedvirtual

SN has received a CBEACON packet from HN.

Extract all information contained into It.

Definition at line 2474 of file uwUFetch_NODE_SENSOR.cpp.

◆ CBEACON_tx()

void uwUFetch_NODE::CBEACON_tx ( )
protectedvirtual

HN transmit the BEACON packet.

Definition at line 3383 of file uwUFetch_NODE_HEADNODE.cpp.

◆ CBeaconTOExpired()

void uwUFetch_NODE::CBeaconTOExpired ( )
protectedvirtual

CBEACON timeout is expired.

In this case SN return in Idle state and wait another BEACON packet from an another or the same HN packet

Definition at line 2441 of file uwUFetch_NODE_SENSOR.cpp.

◆ choiceBackOffTimer()

double uwUFetch_NODE::choiceBackOffTimer ( )
protectedvirtual

Choose the backoff timeout used by SN before to transmit a PROBE packet.

Returns
double backoff timeout choosen by SN

Definition at line 2823 of file uwUFetch_NODE_SENSOR.cpp.

◆ choiceBackOffTimer_HN()

double uwUFetch_NODE::choiceBackOffTimer_HN ( )
protectedvirtual

Choose the backoff timeout used by HN before to transmit a RTS packet.

Returns
double backoff timeout choosen by HN

Definition at line 3413 of file uwUFetch_NODE_HEADNODE.cpp.

◆ command()

int uwUFetch_NODE::command ( int  argc,
const char *const *  argv 
)
virtual

TCL command interpreter.

It implements the following OTcl methods:

Parameters
argcNumber of arguments in argv.
argvArray of strings which are the command parameters (Note that argv[0] is the name of the object).
Returns
TCL_OK or TCL_ERROR whether the command has been dispatched successfully or not.

Definition at line 278 of file uwUFetch_NODE_SENSOR.cpp.

◆ computeTxTime()

void uwUFetch_NODE::computeTxTime ( UWUFETCH_NODE_PACKET_TYPE  tp)
protectedvirtual

Compute the transmission time for the packets transmitted by the SNs.

Parameters
tptype of packet which should be transmitted

Definition at line 2835 of file uwUFetch_NODE_SENSOR.cpp.

◆ computeTxTime_HN()

void uwUFetch_NODE::computeTxTime_HN ( UWUFETCH_NODE_PACKET_TYPE  tp)
protectedvirtual

Compute the transmission time for the packets transmitted by the HNs.

Parameters
tptype of packet which should be transmitted

Definition at line 3510 of file uwUFetch_NODE_HEADNODE.cpp.

◆ crLayCommand()

int uwUFetch_NODE::crLayCommand ( ClMessage *  m)
virtual

Cross-Layer messages interpreter.

Parameters
ClMessage*an instance of ClMessage that represent the message received
Returns
0 if successful.

Definition at line 264 of file uwUFetch_NODE_SENSOR.cpp.

◆ CTS_rx()

void uwUFetch_NODE::CTS_rx ( )
protectedvirtual

HN has received a CTS packet from AUV.

Extract all information contained into It.

Definition at line 1897 of file uwUFetch_NODE_HEADNODE.cpp.

◆ CtsTOExpired()

void uwUFetch_NODE::CtsTOExpired ( )
protectedvirtual

CTS timeout is expired.

HN in this case return in idle state and interrupt the communication with AUV

Definition at line 1832 of file uwUFetch_NODE_HEADNODE.cpp.

◆ DATA_HN_tx()

void uwUFetch_NODE::DATA_HN_tx ( )
protectedvirtual

HN transmit a DATA packet to the AUV.

In this case the communication between HN and AUV take place with RTS and CTS packets

Definition at line 2060 of file uwUFetch_NODE_HEADNODE.cpp.

◆ DATA_HN_tx_without()

void uwUFetch_NODE::DATA_HN_tx_without ( )
protectedvirtual

HN transmit a DATA packet to the AUV.

In this case the communication between HN and AUV take place without RTS and CTS packets

Definition at line 660 of file uwUFetch_NODE_HEADNODE_mod_2.cpp.

◆ DATA_NODE_tx()

void uwUFetch_NODE::DATA_NODE_tx ( )
protectedvirtual

SN transmit a DATA packet to a specific HN.

Definition at line 2258 of file uwUFetch_NODE_SENSOR.cpp.

◆ DATA_rx()

void uwUFetch_NODE::DATA_rx ( )
protectedvirtual

HN has received a BEACON packet from SN.

Extract all information contained into It.

Save the information of the NODE that has sent the DATA packet correctly to the HN

Definition at line 3053 of file uwUFetch_NODE_HEADNODE.cpp.

◆ DataBeforeTxTOExpired()

void uwUFetch_NODE::DataBeforeTxTOExpired ( )
protectedvirtual

Data timeout.

After this timeout is expired the SN pass the DATA packet to its phy level that will then transmit to a specific HN

Definition at line 2274 of file uwUFetch_NODE_SENSOR.cpp.

◆ DataBeforeTxTOExpired_HN()

void uwUFetch_NODE::DataBeforeTxTOExpired_HN ( )
protectedvirtual

Backoff timeout is expired.

After the expiration HN can pass the successive DATA packet that will be transmitted to Its physical layer and then forwarded to the AUV. In this case the communication between HN and AUV take place without RTS and CTS packets

Definition at line 2082 of file uwUFetch_NODE_HEADNODE.cpp.

◆ DataTOExpired()

void uwUFetch_NODE::DataTOExpired ( )
protectedvirtual

DATA timeout is expired.

HN is not enabled to receive other DATA packets and return in IDLE state or start the initialization and start transmission of new POLL packet.

Definition at line 2913 of file uwUFetch_NODE_HEADNODE.cpp.

◆ getBeaconPckRx_by_NODE()

int uwUFetch_NODE::getBeaconPckRx_by_NODE ( )
inlineprotected

Number of BEACON packets received by the SN during a single cycle BEACON-PROBE-POLL-DATA-CBEACON of the simulation.

Returns
int n_BEACON_pck_rx_by_NODE

Definition at line 1809 of file uwUFetch_NODE.h.

◆ getBeaconTx_by_HN()

int uwUFetch_NODE::getBeaconTx_by_HN ( )
inlineprotected

Number of BEACON packet transmitted by the HN during a single cycle BEACON-PROBE-POLL-DATA-CBEACON of the simulation.

Returns
int n_BEACON_pck_tx_by_HN

Definition at line 1321 of file uwUFetch_NODE.h.

◆ getCBeaconPckRx_by_NODE()

int uwUFetch_NODE::getCBeaconPckRx_by_NODE ( )
inlineprotected

Number of CBEACON packets received by the SN during a single cycle BEACON-PROBE-POLL-DATA-CBEACON of the simulation.

Returns
int n_CBEACON_pck_rx_by_NODE

Definition at line 2029 of file uwUFetch_NODE.h.

◆ getCBeaconPckTx_by_HN()

int uwUFetch_NODE::getCBeaconPckTx_by_HN ( )
inlineprotected

Number of CBEACON packets transmitted by the HN during a single cycle BEACON-PROBE-POLL-DATA-CBEACON of the simulation.

Returns
int n_CBEACON_pck_tx_by_HN

Definition at line 1541 of file uwUFetch_NODE.h.

◆ getCtsPckRx_HN()

int uwUFetch_NODE::getCtsPckRx_HN ( )
inlineprotected

Number of CTS packets received by the HN during a single cycle TRIGGER-RTS-CTS-DATA of the simulation.

Returns
int n_CTS_pck_rx_by_HN

Definition at line 1695 of file uwUFetch_NODE.h.

◆ getDataPckRx_by_HN()

int uwUFetch_NODE::getDataPckRx_by_HN ( )
inlineprotected

Number of DATA packets transmitted by the HN during a single cycle BEACON-PROBE-POLL-DATA-CBEACON of the simulation.

Returns
int n_DATA_pck_rx_by_HN

Definition at line 1475 of file uwUFetch_NODE.h.

◆ getDataPckTx_by_HN()

int uwUFetch_NODE::getDataPckTx_by_HN ( )
inlineprotected

Number of DATA packets transmitted by the HN during a single cycle TRIGGER-RTS-CTS-DATA of the simulation.

Returns
int n_DATA_pck_tx_by_HN

Definition at line 1761 of file uwUFetch_NODE.h.

◆ getDataPckTx_by_NODE()

int uwUFetch_NODE::getDataPckTx_by_NODE ( )
inlineprotected

Number of DATA packets transmitted by the SN during a single cycle BEACON-PROBE-POLL-DATA-CBEACON of the simulation.

Returns
int n_DATA_pck_tx_by_NODE

Definition at line 1985 of file uwUFetch_NODE.h.

◆ getDataTimerValue()

double uwUFetch_NODE::getDataTimerValue ( )
protectedvirtual

Compute the interval time within HN want to receive all DATA packets from a specific SN.

Returns
double Timeout within the HN want to receive all DATA packets from a specific SN

Definition at line 3451 of file uwUFetch_NODE_HEADNODE.cpp.

◆ getPollPckRx_by_NODE()

int uwUFetch_NODE::getPollPckRx_by_NODE ( )
inlineprotected

Number of POLL packets received by the SN during a single cycle BEACON-PROBE-POLL-DATA-CBEACON of the simulation.

Returns
int n_POLL_pck_rx_by_NODE

Definition at line 1919 of file uwUFetch_NODE.h.

◆ getPollPckTx_by_HN()

int uwUFetch_NODE::getPollPckTx_by_HN ( )
inlineprotected

Number of POLL packet transmitted by the HN during a single cycle BEACON-PROBE-POLL-DATA-CBEACON of the simulation.

Returns
int n_POLL_pck_tx_by_HN

Definition at line 1431 of file uwUFetch_NODE.h.

◆ getProbePckRx_HN()

int uwUFetch_NODE::getProbePckRx_HN ( )
inlineprotected

Number of PROBE packets received by the HN during a single cycle BEACON-PROBE-POLL-DATA-CBEACON of the simulation.

Returns
int n_PROBE_pck_rx_by_HN

Definition at line 1365 of file uwUFetch_NODE.h.

◆ getProbePckTx_by_NODE()

int uwUFetch_NODE::getProbePckTx_by_NODE ( )
inlineprotected

Number of PROBE packets transmitted by the SN during a single cycle BEACON-PROBE-POLL-DATA-CBEACON of the simulation.

Returns
int n_PROBE_pck_tx_by_NODE

Definition at line 1875 of file uwUFetch_NODE.h.

◆ getRtsPckTx_by_HN()

int uwUFetch_NODE::getRtsPckTx_by_HN ( )
inlineprotected

Number of RTS packets transmitted by the HN during a single cycle TRIGGER-RTS-CTS-DATA of the simulation.

Returns
int n_RTS_pck_tx_by_HN

Definition at line 1651 of file uwUFetch_NODE.h.

◆ getRTT()

double uwUFetch_NODE::getRTT ( )
protectedvirtual

Compute the round trip time.

Returns
double round trip time

Definition at line 3537 of file uwUFetch_NODE_HEADNODE.cpp.

◆ getTotalBeaconPckRx_by_NODE()

int uwUFetch_NODE::getTotalBeaconPckRx_by_NODE ( )
inlineprotected

Total number of BEACON packets received correctly or not by SN during an entire duration of simulation.

Returns
int n_tot_BEACON_pck_rx_by_NODE

Definition at line 1831 of file uwUFetch_NODE.h.

◆ getTotalBeaconPckRx_corrupted_by_NODE()

int uwUFetch_NODE::getTotalBeaconPckRx_corrupted_by_NODE ( )
inlineprotected

Total number of corrupted BEACON packets received by SN during an entire duration of simulation.

Returns
int n_tot_BEACON_pck_rx_corr_by_NODE

Definition at line 1853 of file uwUFetch_NODE.h.

◆ getTotalBeaconTx_by_HN()

int uwUFetch_NODE::getTotalBeaconTx_by_HN ( )
inlineprotected

Total number of BEACON packets transmitted by the HN during an entire simulation.

Returns
int n_tot_BEACON_pck_tx_by_HN

Definition at line 1343 of file uwUFetch_NODE.h.

◆ getTotalCBeaconPckRx_by_NODE()

int uwUFetch_NODE::getTotalCBeaconPckRx_by_NODE ( )
inlineprotected

Total number of CBEACON packets received correctly or not by SN during an entire duration of simulation.

Returns
int n_tot_CBEACON_pck_rx_by_NODE

Definition at line 2051 of file uwUFetch_NODE.h.

◆ getTotalCBeaconPckRx_corrupted_by_NODE()

int uwUFetch_NODE::getTotalCBeaconPckRx_corrupted_by_NODE ( )
inlineprotected

Total number of corrupted CBEACON packets received by SN during an entire duration of simulation.

Returns
int n_tot_CBEACON_pck_rx_corr_by_NODE

Definition at line 2073 of file uwUFetch_NODE.h.

◆ getTotalCBeaconPckTx_by_HN()

int uwUFetch_NODE::getTotalCBeaconPckTx_by_HN ( )
inlineprotected

Total number of CBEACON packets transmitted by the HN during an entire simulation.

Returns
int n_tot_CBEACON_pck_tx_by_HN

Definition at line 1563 of file uwUFetch_NODE.h.

◆ getTotalCtsPckRx_corrupted_HN()

int uwUFetch_NODE::getTotalCtsPckRx_corrupted_HN ( )
inlineprotected

Total number of corrupted CTS packets received by the HN during an entire simulation.

Returns
int n_tot_CTS_pck_rx_corr_by_HN

Definition at line 1739 of file uwUFetch_NODE.h.

◆ getTotalCtsPckRx_HN()

int uwUFetch_NODE::getTotalCtsPckRx_HN ( )
inlineprotected

Total number of CTS packets correctly or not received by the HN during an entire simulation.

Returns
int n_tot_CTS_pck_rx_by_HN

Definition at line 1717 of file uwUFetch_NODE.h.

◆ getTotalDataPckRx_by_HN()

int uwUFetch_NODE::getTotalDataPckRx_by_HN ( )
inlineprotected

Total number of DATA packets correctly or not received by the HN during an entire simulation.

Returns
int n_tot_DATA_pck_rx_by_HN

Definition at line 1497 of file uwUFetch_NODE.h.

◆ getTotalDataPckRx_corrupted_by_HN()

int uwUFetch_NODE::getTotalDataPckRx_corrupted_by_HN ( )
inlineprotected

Total number of corrupted DATA packets received by the HN during an entire simulation.

Returns
int n_tot_DATA_pck_rx_corr_by_HN

Definition at line 1519 of file uwUFetch_NODE.h.

◆ getTotalDataPckTx_by_HN()

int uwUFetch_NODE::getTotalDataPckTx_by_HN ( )
inlineprotected

Total number of DATA packets transmitted by the HN during an entire simulation.

Returns
int n_tot_DATA_pck_tx_by_HN

Definition at line 1783 of file uwUFetch_NODE.h.

◆ getTotalDataPckTx_by_NODE()

int uwUFetch_NODE::getTotalDataPckTx_by_NODE ( )
inlineprotected

Total number of DATA packets transmitted by SN during an entire duration of simulation.

Returns
int n_tot_DATA_pck_tx_by_NODE

Definition at line 2007 of file uwUFetch_NODE.h.

◆ getTotalPollPckRx_by_NODE()

int uwUFetch_NODE::getTotalPollPckRx_by_NODE ( )
inlineprotected

Total number of POLL packets received correctly or not by SN during an entire duration of simulation.

Returns
int n_tot_POLL_pck_rx_by_NODE

Definition at line 1941 of file uwUFetch_NODE.h.

◆ getTotalPollPckRx_corrupted_by_NODE()

int uwUFetch_NODE::getTotalPollPckRx_corrupted_by_NODE ( )
inlineprotected

Total number of corrupted POLL packets received by SN during an entire duration of simulation.

Returns
int n_tot_POLL_pck_rx_corr_by_NODE

Definition at line 1963 of file uwUFetch_NODE.h.

◆ getTotalPollPckTx_by_HN()

int uwUFetch_NODE::getTotalPollPckTx_by_HN ( )
inlineprotected

Total number of POLL packets transmitted by the HN during an entire simulation.

Returns
int n_tot_POLL_pck_tx_by_HN

Definition at line 1453 of file uwUFetch_NODE.h.

◆ getTotalProbePckRx_corrupted_HN()

int uwUFetch_NODE::getTotalProbePckRx_corrupted_HN ( )
inlineprotected

Total number of corrupted PROBE packets received by the HN during an entire simulation.

Returns
int n_tot_PROBE_pck_corr_rx_by_HN

Definition at line 1409 of file uwUFetch_NODE.h.

◆ getTotalProbePckRx_HN()

int uwUFetch_NODE::getTotalProbePckRx_HN ( )
inlineprotected

Total number of PROBE packets correctly or not received by the HN during an entire simulation.

Returns
int n_tot_PROBE_pck_rx_by_HN

Definition at line 1387 of file uwUFetch_NODE.h.

◆ getTotalProbePckTx_by_NODE()

int uwUFetch_NODE::getTotalProbePckTx_by_NODE ( )
inlineprotected

Total number of PROBE packets transmitted by SN during an entire duration of simulation.

Returns
int n_tot_PROBE_pck_tx_by_NODE

Definition at line 1897 of file uwUFetch_NODE.h.

◆ getTotalRtsPckTx_by_HN()

int uwUFetch_NODE::getTotalRtsPckTx_by_HN ( )
inlineprotected

Total number of RTS packets transmitted by the HN during an entire simulation.

Returns
int n_tot_RTS_pck_tx_by_HN

Definition at line 1673 of file uwUFetch_NODE.h.

◆ getTotalTriggerPckRx_corrupted_HN()

int uwUFetch_NODE::getTotalTriggerPckRx_corrupted_HN ( )
inlineprotected

Total number of corrupted TRIGGER packets received by the HN during an entire simulation.

Returns
int n_tot_TRIGGER_pck_rx_corr_by_HN

Definition at line 1629 of file uwUFetch_NODE.h.

◆ getTotalTriggerPckRx_HN()

int uwUFetch_NODE::getTotalTriggerPckRx_HN ( )
inlineprotected

Total number of TRIGGER packets correctly or not received by the HN during an entire simulation.

Returns
int n_tot_TRIGGER_pck_rx_by_HN

Definition at line 1607 of file uwUFetch_NODE.h.

◆ getTriggerPckRx_HN()

int uwUFetch_NODE::getTriggerPckRx_HN ( )
inlineprotected

Number of TRIGGER packets received by the HN during a single cycle TRIGGER-RTS-CTS-DATA of the simulation.

Returns
int n_TRIGGER_pck_rx_by_HN

Definition at line 1585 of file uwUFetch_NODE.h.

◆ incrBeaconPckRx_by_NODE()

void uwUFetch_NODE::incrBeaconPckRx_by_NODE ( )
inlineprotected

Increase the number of BEACON packets received by the SN during a single cycle BEACON-PROBE-POLL-DATA-CBEACON of the simulation.

Definition at line 1797 of file uwUFetch_NODE.h.

◆ incrBeaconPckTx_by_HN()

void uwUFetch_NODE::incrBeaconPckTx_by_HN ( )
inlineprotected

Increase the number of BEACON packet transmitted by the HN during a single cycle BEACON-PROBE-POLL-DATA-CBEACON of the simulation.

Definition at line 1309 of file uwUFetch_NODE.h.

◆ incrCBeaconPckRx_by_NODE()

void uwUFetch_NODE::incrCBeaconPckRx_by_NODE ( )
inlineprotected

Increase the number of CBEACON packets received by the SN during a single cycle BEACON-PROBE-POLL-DATA-CBEACON of the simulation.

Definition at line 2017 of file uwUFetch_NODE.h.

◆ incrCBeaconPckTx_by_HN()

void uwUFetch_NODE::incrCBeaconPckTx_by_HN ( )
inlineprotected

Increase the number of CBEACON packets transmitted by the HN during a single cycle BEACON-PROBE-POLL-DATA-CBEACON of the simulation.

Definition at line 1529 of file uwUFetch_NODE.h.

◆ incrCtsPckRx_HN()

void uwUFetch_NODE::incrCtsPckRx_HN ( )
inlineprotected

Increase the number of CTS packets received by the HN during a single cycle TRIGGER-RTS-CTS-DATA of the simulation.

Definition at line 1683 of file uwUFetch_NODE.h.

◆ incrDataPckRx_by_HN()

void uwUFetch_NODE::incrDataPckRx_by_HN ( )
inlineprotected

Increase the number of DATA packets transmitted by the HN during a single cycle BEACON-PROBE-POLL-DATA-CBEACON of the simulation.

Definition at line 1463 of file uwUFetch_NODE.h.

◆ incrDataPckTx_by_HN()

void uwUFetch_NODE::incrDataPckTx_by_HN ( )
inlineprotected

Increase the number of DATA packets transmitted by the HN during a single cycle TRIGGER-RTS-CTS-DATA of the simulation.

Definition at line 1749 of file uwUFetch_NODE.h.

◆ incrDataPckTx_by_NODE()

void uwUFetch_NODE::incrDataPckTx_by_NODE ( )
inlineprotected

Increase the number of DATA packets transmitted by the SN during a single cycle BEACON-PROBE-POLL-DATA-CBEACON of the simulation.

Definition at line 1973 of file uwUFetch_NODE.h.

◆ incrPollPckRx_by_NODE()

void uwUFetch_NODE::incrPollPckRx_by_NODE ( )
inlineprotected

Increase the number of POLL packets received by the SN during a single cycle BEACON-PROBE-POLL-DATA-CBEACON of the simulation.

Definition at line 1907 of file uwUFetch_NODE.h.

◆ incrPollPckTx_by_HN()

void uwUFetch_NODE::incrPollPckTx_by_HN ( )
inlineprotected

Increase the number of POLL packets transmitted by the HN during a single cycle BEACON-PROBE-POLL-DATA-CBEACON of the simulation.

Definition at line 1419 of file uwUFetch_NODE.h.

◆ incrProbePckRx_HN()

void uwUFetch_NODE::incrProbePckRx_HN ( )
inlineprotected

Increase number of PROBE packets received by the HN during a single cycle BEACON-PROBE-POLL-DATA-CBEACON of the simulation.

Definition at line 1353 of file uwUFetch_NODE.h.

◆ incrProbePckTx_by_NODE()

void uwUFetch_NODE::incrProbePckTx_by_NODE ( )
inlineprotected

Increase the number of PROBE packets transmitted by the SN during a single cycle BEACON-PROBE-POLL-DATA-CBEACON of the simulation.

Definition at line 1863 of file uwUFetch_NODE.h.

◆ incrRtsPckTx_by_HN()

void uwUFetch_NODE::incrRtsPckTx_by_HN ( )
inlineprotected

Increase the number of RTS packets transmitted by the HN during a single cycle TRIGGER-RTS-CTS-DATA of the simulation.

Definition at line 1639 of file uwUFetch_NODE.h.

◆ incrTotalBeaconPckRx_by_NODE()

void uwUFetch_NODE::incrTotalBeaconPckRx_by_NODE ( )
inlineprotected

Increase the total number of BEACON packets received correctly or not by SN during an entire duration of simulation.

Definition at line 1819 of file uwUFetch_NODE.h.

◆ incrTotalBeaconPckRx_corrupted_by_NODE()

void uwUFetch_NODE::incrTotalBeaconPckRx_corrupted_by_NODE ( )
inlineprotected

Increase the total number of corrupted BEACON packets received by SN during an entire duration of simulation.

Definition at line 1841 of file uwUFetch_NODE.h.

◆ incrTotalBeaconPckTx_by_HN()

void uwUFetch_NODE::incrTotalBeaconPckTx_by_HN ( )
inlineprotected

Increase the total number of BEACON packets transmitted by the HN during an entire simulation.

Definition at line 1331 of file uwUFetch_NODE.h.

◆ incrTotalCBeaconPckRx_by_NODE()

void uwUFetch_NODE::incrTotalCBeaconPckRx_by_NODE ( )
inlineprotected

Increase the total number of CBEACON packets received correctly or not by SN during an entire duration of simulation.

Definition at line 2039 of file uwUFetch_NODE.h.

◆ incrTotalCBeaconPckRx_corrupted_by_NODE()

void uwUFetch_NODE::incrTotalCBeaconPckRx_corrupted_by_NODE ( )
inlineprotected

Increase the total number of corrupted CBEACON packets received by SN during an entire duration of simulation.

Definition at line 2061 of file uwUFetch_NODE.h.

◆ incrTotalCBeaconPckTx_by_HN()

void uwUFetch_NODE::incrTotalCBeaconPckTx_by_HN ( )
inlineprotected

Increase the total number of CBEACON packets transmitted by the HN during an entire simulation.

Definition at line 1551 of file uwUFetch_NODE.h.

◆ incrTotalCtsPckRx_corrupted_HN()

void uwUFetch_NODE::incrTotalCtsPckRx_corrupted_HN ( )
inlineprotected

Increase the total number of corrupted CTS packets received by the HN during an entire simulation.

Definition at line 1727 of file uwUFetch_NODE.h.

◆ incrTotalCtsPckRx_HN()

void uwUFetch_NODE::incrTotalCtsPckRx_HN ( )
inlineprotected

Increase the total number of CTS packets correctly or not received by the HN during an entire simulation.

Definition at line 1705 of file uwUFetch_NODE.h.

◆ incrTotalDataPckRx_by_HN()

void uwUFetch_NODE::incrTotalDataPckRx_by_HN ( )
inlineprotected

Increase total number of DATA packets correctly or not received by the HN during an entire simulation.

Definition at line 1485 of file uwUFetch_NODE.h.

◆ incrTotalDataPckRx_corrupted_by_HN()

void uwUFetch_NODE::incrTotalDataPckRx_corrupted_by_HN ( )
inlineprotected

Increase total number of corrupted DATA packets received by the HN during an entire simulation.

Definition at line 1507 of file uwUFetch_NODE.h.

◆ incrTotalDataPckTx_by_HN()

void uwUFetch_NODE::incrTotalDataPckTx_by_HN ( )
inlineprotected

Increase the total number of DATA packets transmitted by the HN during an entire simulation.

Definition at line 1771 of file uwUFetch_NODE.h.

◆ incrTotalDataPckTx_by_NODE()

void uwUFetch_NODE::incrTotalDataPckTx_by_NODE ( )
inlineprotected

Increase the total number of DATA packets transmitted by SN during an entire duration of simulation.

Definition at line 1995 of file uwUFetch_NODE.h.

◆ incrTotalPollPckRx_by_NODE()

void uwUFetch_NODE::incrTotalPollPckRx_by_NODE ( )
inlineprotected

Increase the total number of POLL packets received correctly or not by SN during an entire duration of simulation.

Definition at line 1929 of file uwUFetch_NODE.h.

◆ incrTotalPollPckRx_corrupted_by_NODE()

void uwUFetch_NODE::incrTotalPollPckRx_corrupted_by_NODE ( )
inlineprotected

Increase the total number of corrupted POLL packets received by SN during an entire duration of simulation.

Definition at line 1951 of file uwUFetch_NODE.h.

◆ incrTotalPollPckTx_by_HN()

void uwUFetch_NODE::incrTotalPollPckTx_by_HN ( )
inlineprotected

Increase the total number of POLL packets transmitted by the HN during an entire simulation.

Definition at line 1441 of file uwUFetch_NODE.h.

◆ incrTotalProbePckRx_corrupted_HN()

void uwUFetch_NODE::incrTotalProbePckRx_corrupted_HN ( )
inlineprotected

Increase the total number of corrupted PROBE packets received by the HN during an entire simulation.

Definition at line 1397 of file uwUFetch_NODE.h.

◆ incrTotalProbePckRx_HN()

void uwUFetch_NODE::incrTotalProbePckRx_HN ( )
inlineprotected

Increase total number of PROBE packets correctly or not received by the HN during an entire simulation.

Definition at line 1375 of file uwUFetch_NODE.h.

◆ incrTotalProbePckTx_by_NODE()

void uwUFetch_NODE::incrTotalProbePckTx_by_NODE ( )
inlineprotected

Increase the total number of PROBE packets transmitted by SN during an entire duration of simulation.

Definition at line 1885 of file uwUFetch_NODE.h.

◆ incrTotalRtsPckTx_by_HN()

void uwUFetch_NODE::incrTotalRtsPckTx_by_HN ( )
inlineprotected

Increase the total number of RTS packets transmitted by the HN during an entire simulation.

Definition at line 1661 of file uwUFetch_NODE.h.

◆ incrTotalTriggerPckRx_corrupted_HN()

void uwUFetch_NODE::incrTotalTriggerPckRx_corrupted_HN ( )
inlineprotected

Increase the total number of corrupted TRIGGER packets received by the HN during an entire simulation.

Definition at line 1617 of file uwUFetch_NODE.h.

◆ incrTotalTriggerPckRx_HN()

void uwUFetch_NODE::incrTotalTriggerPckRx_HN ( )
inlineprotected

Increase the total number of TRIGGER packets correctly or not received by the HN during an entire simulation.

Definition at line 1595 of file uwUFetch_NODE.h.

◆ incrTriggerPckRx_HN()

void uwUFetch_NODE::incrTriggerPckRx_HN ( )
inlineprotected

Increase the number of TRIGGER packets received by the HN during a single cycle TRIGGER-RTS-CTS-DATA of the simulation.

Definition at line 1573 of file uwUFetch_NODE.h.

◆ initInfo()

void uwUFetch_NODE::initInfo ( )
protectedvirtual

Initialize the protocol at the beginning of the simulation.

This method is called by a command in TCL.

Definition at line 415 of file uwUFetch_NODE_SENSOR.cpp.

◆ isHeadNode()

bool uwUFetch_NODE::isHeadNode ( )
protectedvirtual

Indicate if the node created work as head node or sensor node.

Returns
true The node work as HN

Definition at line 2813 of file uwUFetch_NODE_SENSOR.cpp.

◆ Mac2PhyStartTx()

void uwUFetch_NODE::Mac2PhyStartTx ( Packet *  p)
protectedvirtual

This method must be called by the SN-MAC to instruct the PHY to start the transmission of a packet.

Parameters
ppointer to the packet to be transmitted

Definition at line 1603 of file uwUFetch_NODE_SENSOR.cpp.

◆ Mac2PhyStartTx_HN()

void uwUFetch_NODE::Mac2PhyStartTx_HN ( Packet *  p)
protectedvirtual

This method must be called by the HN-MAC to instruct the PHY to start the transmission of a packet.

Parameters
ppointer to the packet to be transmitted

Definition at line 984 of file uwUFetch_NODE_HEADNODE.cpp.

◆ Phy2MacEndRx()

void uwUFetch_NODE::Phy2MacEndRx ( Packet *  p)
protectedvirtual

Handle the end-of-PHY-reception event.

Parameters
ppointer to the packet whose reception has ended.

Se il beacon è ricevuto dal nodo da cui sto aspettando il POLL, allora considera il BEACON anche se é in errore e ritorna nello stato di IDLE resettando il POLL timeout, altrimenti droppa semplicemente il pacchetto

Save the information of POLL HEADER

Definition at line 696 of file uwUFetch_NODE_SENSOR.cpp.

◆ Phy2MacEndRx_HN()

void uwUFetch_NODE::Phy2MacEndRx_HN ( Packet *  p)
protectedvirtual

Handle the end-of-PHY-reception event for HEAD NODE.

Handle the end-of-PHY-reception event.

Parameters
ppointer to the packet whose reception has ended.

remove the DATA packet into the queue of the SENSOR NODE and put It into the queue of HN

Parameters
p

Definition at line 198 of file uwUFetch_NODE_HEADNODE.cpp.

◆ Phy2MacEndRx_HN_without()

void uwUFetch_NODE::Phy2MacEndRx_HN_without ( Packet *  p)
protectedvirtual

Handle the end-of-PHY-reception event for HEAD NODE in the case that the communication don't use RTS-CTS packets.

Parameters
ppointer to the packet whose reception has ended.

Before to start the communication between AUV, HN move the data packets from the SN queue to the HN data queue. This operation is done only by the HN that function also as SN

Definition at line 48 of file uwUFetch_NODE_HEADNODE_mod_2.cpp.

◆ Phy2MacEndTx()

void uwUFetch_NODE::Phy2MacEndTx ( const Packet *  p)
protectedvirtual

Handle the end-of-PHY-transmission event.

Parameters
ppointer to the packet whose transmission has ended. Note that the Packet is not any more under control of the SN-MAC at the time this event occurs, hence the 'const' declaration.

Definition at line 1662 of file uwUFetch_NODE_SENSOR.cpp.

◆ Phy2MacEndTx_HN()

void uwUFetch_NODE::Phy2MacEndTx_HN ( const Packet *  p)
protectedvirtual

Handle the end-of-PHY-transmission event for HEAD NODE.

Handle the end-of-PHY-transmission event.

Parameters
ppointer to the packet whose transmission has ended. Note that the Packet is not any more under control of the HN-MAC at the time this event occurs, hence the 'const' declaration.
ppointer to the packet whose transmission has ended. Note that the Packet is not any more under control of the MAC at the time this event occurs, hence the 'const' declaration.

Definition at line 1107 of file uwUFetch_NODE_HEADNODE.cpp.

◆ Phy2MacStartRx()

void uwUFetch_NODE::Phy2MacStartRx ( const Packet *  p)
protectedvirtual

Handle the detected-start-of-PHY-reception event for SENSOR NODE.

Parameters
ppointer to the packet whose reception has begun.

Definition at line 580 of file uwUFetch_NODE_SENSOR.cpp.

◆ Phy2MacStartRx_HN()

void uwUFetch_NODE::Phy2MacStartRx_HN ( const Packet *  p)
protectedvirtual

Handle the detected-start-of-PHY-reception event for HEAD NODE.

Parameters
ppointer to the packet whose reception has begun.

Definition at line 56 of file uwUFetch_NODE_HEADNODE.cpp.

◆ POLL_rx()

void uwUFetch_NODE::POLL_rx ( )
protectedvirtual

SN has received a POLL packet from a specific HN.

Extract all information contained into It.

Save the information of POLL HEADER

Definition at line 2147 of file uwUFetch_NODE_SENSOR.cpp.

◆ POLL_tx()

void uwUFetch_NODE::POLL_tx ( )
protectedvirtual

HN transmit POLL packet to a specific SN of th network.

Definition at line 2794 of file uwUFetch_NODE_HEADNODE.cpp.

◆ PollTOExpired()

void uwUFetch_NODE::PollTOExpired ( )
protectedvirtual

POLL timeout is expired.

SN return in Idle state and wait a BEACON packet, or start to wait a CBEACON packet from HN.

Definition at line 2090 of file uwUFetch_NODE_SENSOR.cpp.

◆ printStateInfo()

void uwUFetch_NODE::printStateInfo ( double  delay = 0)
protectedvirtual

Prints a file with every state change for debug purposes.

Parameters
doubledelay

Definition at line 2969 of file uwUFetch_NODE_SENSOR.cpp.

◆ PROBE_rx()

void uwUFetch_NODE::PROBE_rx ( )
protectedvirtual

HN has received a PROBE packet from SN.

Extract all information contained into It.

Save the information of the NODE that has sent the PROBE packet correctly to the HN

Definition at line 2517 of file uwUFetch_NODE_HEADNODE.cpp.

◆ PROBE_tx()

void uwUFetch_NODE::PROBE_tx ( )
protectedvirtual

Transmission of PROBE packet by SN to the specific HN.

Definition at line 2022 of file uwUFetch_NODE_SENSOR.cpp.

◆ ProbeTOExpired()

void uwUFetch_NODE::ProbeTOExpired ( )
protectedvirtual

Probe timeout is expired.

The HN start to transmit a POLL packet in unicast to a specific SN from which It has received a POLL packet. The order of the transmission of POLL packet is FIFO type.

Definition at line 2404 of file uwUFetch_NODE_HEADNODE.cpp.

◆ recvFromUpperLayers()

void uwUFetch_NODE::recvFromUpperLayers ( Packet *  p)
protectedvirtual

Handle a packet coming from upper layers of SN.

Parameters
ppacket that node receiving from upper layer. DATA packet created by application layer

Definition at line 2859 of file uwUFetch_NODE_SENSOR.cpp.

◆ recvFromUpperLayers_HN()

void uwUFetch_NODE::recvFromUpperLayers_HN ( Packet *  p)
protectedvirtual

Handle a packet coming from upper layers of HN.

Parameters
ppacket that node receiving from upper layer. DATA packet created by application layer

Definition at line 3479 of file uwUFetch_NODE_HEADNODE.cpp.

◆ refreshReason()

virtual void uwUFetch_NODE::refreshReason ( UWUFETCH_NODE_STATUS_CHANGE  reason)
inlineprotectedvirtual

Refresh the reason for the changing of the state.

Parameters
UWPOLLING_AUV_REASONThe reason of the change of the state of the protocol

Definition at line 872 of file uwUFetch_NODE.h.

◆ refreshState()

virtual void uwUFetch_NODE::refreshState ( UWUFETCH_NODE_STATUS  state)
inlineprotectedvirtual

Definition at line 883 of file uwUFetch_NODE.h.

◆ RTS_tx()

void uwUFetch_NODE::RTS_tx ( )
protectedvirtual

HN transmit a RTS packet to the AUV.

Definition at line 1763 of file uwUFetch_NODE_HEADNODE.cpp.

◆ state_BEACON_tx()

void uwUFetch_NODE::state_BEACON_tx ( )
protectedvirtual

HN initialize the BEACON packet that will be forwarded in broadcast at all SNs of the network.

Definition at line 2210 of file uwUFetch_NODE_HEADNODE.cpp.

◆ state_CBEACON_tx()

void uwUFetch_NODE::state_CBEACON_tx ( )
protectedvirtual

HN initialize the CBEACON packet that will be forwarded in broadcast at all SNs of the network.

Definition at line 3263 of file uwUFetch_NODE_HEADNODE.cpp.

◆ state_DATA_HN_finish_tx()

void uwUFetch_NODE::state_DATA_HN_finish_tx ( )
protectedvirtual

HN has finished to transmit the sequence of DATA packets promises to the AUV with the exchange of previous RTS and CTS packets.

Definition at line 2149 of file uwUFetch_NODE_HEADNODE.cpp.

◆ state_DATA_HN_finish_tx_without()

void uwUFetch_NODE::state_DATA_HN_finish_tx_without ( )
protectedvirtual

HN has finished to transmit the sequence of DATA packets to the AUV.

In this case the communication between HN and AUV take place without RTS and CTS packets

Definition at line 759 of file uwUFetch_NODE_HEADNODE_mod_2.cpp.

◆ state_DATA_HN_first_tx()

void uwUFetch_NODE::state_DATA_HN_first_tx ( )
protectedvirtual

HN initialize the FIRST DATA packet that will be forwarded to the AUV node.

In this case the communication between HN and AUV take place with RTS and CTS packets

hdr_uwmphy_modem* modemh = HDR_UWMPHY_MODEM(curr_DATA_HN_pck_tx); modemh->use_burst_data() = 1; if ( getDataPckTx_by_HN() == (max_data_HN_can_tx) ) { modemh->last_packet() = 1; modemh->use_burst_data() = 1; } else { modemh->last_packet() = 0; modemh->use_burst_data() = 1; }

Definition at line 1989 of file uwUFetch_NODE_HEADNODE.cpp.

◆ state_DATA_HN_first_tx_without()

void uwUFetch_NODE::state_DATA_HN_first_tx_without ( )
protectedvirtual

HN initialize the FIRST DATA packet that will be forwarded to the AUV node.

In this case the communication between HN and AUV take place without RTS and CTS packets

Definition at line 558 of file uwUFetch_NODE_HEADNODE_mod_2.cpp.

◆ state_DATA_HN_tx()

void uwUFetch_NODE::state_DATA_HN_tx ( )
protectedvirtual

HN initialize the second and successive DATA packets that will be forwarded to the AUV node.

In this case the communication between HN and AUV take place with RTS and CTS packets

Definition at line 2095 of file uwUFetch_NODE_HEADNODE.cpp.

◆ state_DATA_HN_tx_without()

void uwUFetch_NODE::state_DATA_HN_tx_without ( )
protectedvirtual

HN initialize the second and successive DATA packets that will be forwarded to the AUV node.

In this case the communication between HN and AUV take place without RTS and CTS packets

Definition at line 677 of file uwUFetch_NODE_HEADNODE_mod_2.cpp.

◆ state_DATA_NODE_finish_tx()

void uwUFetch_NODE::state_DATA_NODE_finish_tx ( )
protectedvirtual

SN has finished to transmit the last DATA packet promises with a PROBE packet to a specif HN.

Definition at line 2334 of file uwUFetch_NODE_SENSOR.cpp.

◆ state_DATA_NODE_first_tx()

void uwUFetch_NODE::state_DATA_NODE_first_tx ( )
protectedvirtual

SN initialize the FIRST DATA packet that will be forwarded to a specific HN.

Definition at line 2219 of file uwUFetch_NODE_SENSOR.cpp.

◆ state_DATA_NODE_tx()

void uwUFetch_NODE::state_DATA_NODE_tx ( )
protectedvirtual

SN initialize the second or successive DATA packet that will be forwarded to a specific HN.

Definition at line 2294 of file uwUFetch_NODE_SENSOR.cpp.

◆ state_POLL_tx()

void uwUFetch_NODE::state_POLL_tx ( )
protectedvirtual

HN initialize the POLL packet that will be forwarded to a specific SN of the network.

Definition at line 2686 of file uwUFetch_NODE_HEADNODE.cpp.

◆ state_PROBE_tx()

void uwUFetch_NODE::state_PROBE_tx ( )
protectedvirtual

SN initialize the PROBE packet that will be forwarded to a specific HN.

Definition at line 1888 of file uwUFetch_NODE_SENSOR.cpp.

◆ state_RTS_tx()

void uwUFetch_NODE::state_RTS_tx ( )
protectedvirtual

HN initialize the RTS packet that will be forwarded to the AUV.

Definition at line 1635 of file uwUFetch_NODE_HEADNODE.cpp.

◆ state_wait_CBEACON()

void uwUFetch_NODE::state_wait_CBEACON ( )
protectedvirtual

SN wait a CBEACON packet for a pre-established interval time.

During this interval time SN is enabled to received a CBEACON packet from HN

Definition at line 2399 of file uwUFetch_NODE_SENSOR.cpp.

◆ state_wait_CTS()

void uwUFetch_NODE::state_wait_CTS ( )
protectedvirtual

HN start to wait a CTS packet for a pre-established time interval.

During this interval time Hn is enabled to receive a CTS packet from AUV

Definition at line 1779 of file uwUFetch_NODE_HEADNODE.cpp.

◆ state_wait_first_DATA()

void uwUFetch_NODE::state_wait_first_DATA ( )
protectedvirtual

HN start to wait the FIRST DATA packet from SN.

During this interval time the HN is enabled to received DATA packets from a specifical SN.

Definition at line 2814 of file uwUFetch_NODE_HEADNODE.cpp.

◆ state_wait_other_DATA()

void uwUFetch_NODE::state_wait_other_DATA ( )
protectedvirtual

HN start to wait the second or successive DATA packet from SN.

During this interval time the HN is enabled to received DATA packets from a specifical SN.

Definition at line 2877 of file uwUFetch_NODE_HEADNODE.cpp.

◆ state_wait_other_PROBE()

void uwUFetch_NODE::state_wait_other_PROBE ( )
protectedvirtual

HN start to wait the second or successive PROBE packet from some SNs.

During this interval time the HN is enabled to received more than one PROBE packets.

Definition at line 2641 of file uwUFetch_NODE_HEADNODE.cpp.

◆ state_wait_POLL()

void uwUFetch_NODE::state_wait_POLL ( )
protectedvirtual

SN wait a POLL packet from a specific HN.

For an interval time Sn is enabled to receive POLL packets.

Definition at line 2041 of file uwUFetch_NODE_SENSOR.cpp.

◆ state_wait_PROBE()

void uwUFetch_NODE::state_wait_PROBE ( )
protectedvirtual

HN start to wait the FIRST PROBE packet from some SNs.

During this interval time the HN is enabled to received more than one PROBE packets.

Definition at line 2349 of file uwUFetch_NODE_HEADNODE.cpp.

◆ stateIdle_HN()

void uwUFetch_NODE::stateIdle_HN ( )
protectedvirtual

Idle state for HN.

Each variables are resetted

Before to enter in idle state and wait a trigger packet from the HN, or before to start the communication with sensor nodes, HN empty his data queue

Time interval that will expire before that the HN start the initialization of the BEACON packet and its transmission

Time interval that will expire before that the HN start the initialization of the BEACON packet and its transmission

Definition at line 1283 of file uwUFetch_NODE_HEADNODE.cpp.

◆ stateIdle_NODE()

void uwUFetch_NODE::stateIdle_NODE ( )
protectedvirtual

Idle state for SN.

Each variables are resetted

Definition at line 1738 of file uwUFetch_NODE_SENSOR.cpp.

◆ TRIGGER_rx()

void uwUFetch_NODE::TRIGGER_rx ( )
protectedvirtual

HN has received a TRIGGER packet from AUV.

Extract all information contained into It. In this case the communication with take place with RTS and CTS packets

Definition at line 1460 of file uwUFetch_NODE_HEADNODE.cpp.

◆ TRIGGER_rx_without()

void uwUFetch_NODE::TRIGGER_rx_without ( )
protectedvirtual

HN has received a TRIGGER packet from AUV.

Extract all information contained into It. In this case the communication with AUV take place without RTS and CTS packets

Definition at line 409 of file uwUFetch_NODE_HEADNODE_mod_2.cpp.

◆ typeCommunication()

bool uwUFetch_NODE::typeCommunication ( )
protectedvirtual

Indicate if the communiation between HN and AUV take place with or without RTS and CTS packets.

Returns
true Communication between HN-AUV take place without RTS and CTS

Definition at line 3403 of file uwUFetch_NODE_HEADNODE.cpp.

◆ updateListProbbedNode()

void uwUFetch_NODE::updateListProbbedNode ( )
protectedvirtual

Update the list of the SN from which HN has received the PROBE packets.

This update is executed after the transmission of POLL packet to the SN

Definition at line 3552 of file uwUFetch_NODE_HEADNODE.cpp.

◆ waitForUser()

void uwUFetch_NODE::waitForUser ( )
protectedvirtual

Method used for debug.

Definition at line 2961 of file uwUFetch_NODE_SENSOR.cpp.

Member Data Documentation

◆ bck_before_tx_data

double uwUFetch_NODE::bck_before_tx_data
protected

Time value chosen by the HN and used by It for transmit a DATA packet to the AUV.

Definition at line 2210 of file uwUFetch_NODE.h.

◆ bck_before_tx_probe

double uwUFetch_NODE::bck_before_tx_probe
protected

Backoff time choiced by SN before to transmit a PROBE packet to the HN.

Definition at line 2180 of file uwUFetch_NODE.h.

◆ bck_before_tx_RTS

double uwUFetch_NODE::bck_before_tx_RTS
protected

Time value choice by the HN and used for transmit a RTS packet to the AUV.

Definition at line 2431 of file uwUFetch_NODE.h.

◆ BCK_timer_data

uwUFetch_BackOffTimer uwUFetch_NODE::BCK_timer_data
protected

Interval time before that the HN transmit his DATA packet to the AUV.

Definition at line 2318 of file uwUFetch_NODE.h.

◆ BCK_timer_probe

uwUFetch_BackOffTimer uwUFetch_NODE::BCK_timer_probe
protected

Interval time in which HN is enabled to receive PROBE packets from SNs.

Definition at line 2103 of file uwUFetch_NODE.h.

◆ BCK_timer_rts

uwUFetch_BackOffTimer uwUFetch_NODE::BCK_timer_rts
protected

Schedule the backoff timeout timer.

Definition at line 2315 of file uwUFetch_NODE.h.

◆ BeaconBeforeTx_timer

uwUFetch_BEACON_timer uwUFetch_NODE::BeaconBeforeTx_timer
protected

Schedule the BEACON timeout timer.

Definition at line 2311 of file uwUFetch_NODE.h.

◆ CBEACON_timer

uwUFetch_CBeacon_timer uwUFetch_NODE::CBEACON_timer
protected

Definition at line 2113 of file uwUFetch_NODE.h.

◆ CTS_timer

uwUFetch_CTS_timer uwUFetch_NODE::CTS_timer
protected

Schedule the CTS timeout timer.

Definition at line 2316 of file uwUFetch_NODE.h.

◆ CTSrx

bool uwUFetch_NODE::CTSrx
protected

true HN has received a CTS packet after the transmission of RTS

Definition at line 2449 of file uwUFetch_NODE.h.

◆ curr_BEACON_HN_pck_tx

Packet* uwUFetch_NODE::curr_BEACON_HN_pck_tx
protected

Pointer to the BEACON packet that is being transmitted by HN.

Definition at line 2517 of file uwUFetch_NODE.h.

◆ curr_BEACON_NODE_pck_rx

Packet* uwUFetch_NODE::curr_BEACON_NODE_pck_rx
protected

Pointer to the BEACON packet that is being received by SN.

Definition at line 2252 of file uwUFetch_NODE.h.

◆ curr_CBEACON_HN_pck_tx

Packet* uwUFetch_NODE::curr_CBEACON_HN_pck_tx
protected

Pointer to the CBEACON packet that is being transmitted by HN.

Definition at line 2526 of file uwUFetch_NODE.h.

◆ curr_CBEACON_NODE_pck_rx

Packet* uwUFetch_NODE::curr_CBEACON_NODE_pck_rx
protected

Pointer to the CBEACON packet that is being received by SN

Definition at line 2263 of file uwUFetch_NODE.h.

◆ curr_CTS_HN_pck_rx

Packet* uwUFetch_NODE::curr_CTS_HN_pck_rx
protected

Pointer to the CTS packet that is being received by HN.

Definition at line 2532 of file uwUFetch_NODE.h.

◆ curr_DATA_HN_pck_rx

Packet* uwUFetch_NODE::curr_DATA_HN_pck_rx
protected

Pointer to the DATA packet that is being received by HN from SN.

Definition at line 2524 of file uwUFetch_NODE.h.

◆ curr_DATA_HN_pck_tx

Packet* uwUFetch_NODE::curr_DATA_HN_pck_tx
protected

Pointer to the DATA packet that is being transmitted by HN to the AUV.

Definition at line 2534 of file uwUFetch_NODE.h.

◆ curr_DATA_NODE_pck_tx

Packet* uwUFetch_NODE::curr_DATA_NODE_pck_tx
protected

Pointer to the DATA packet that is being transmitted by SN.

Definition at line 2260 of file uwUFetch_NODE.h.

◆ curr_DATA_NODE_pck_tx_HN

Packet* uwUFetch_NODE::curr_DATA_NODE_pck_tx_HN
protected

Pointer to the DATA packet that is being transmitted by HN.

Definition at line 2536 of file uwUFetch_NODE.h.

◆ curr_POLL_HN_pck_tx

Packet* uwUFetch_NODE::curr_POLL_HN_pck_tx
protected

Pointer to the POLL packet that is being transmitted by HN.

Definition at line 2522 of file uwUFetch_NODE.h.

◆ curr_POLL_NODE_pck_rx

Packet* uwUFetch_NODE::curr_POLL_NODE_pck_rx
protected

Pointer to the POLL packet that is being received by SN.

Definition at line 2257 of file uwUFetch_NODE.h.

◆ curr_PROBE_HN_pck_rx

Packet* uwUFetch_NODE::curr_PROBE_HN_pck_rx
protected

Pointer to the PROBE packet that is being received by HN.

Definition at line 2520 of file uwUFetch_NODE.h.

◆ curr_PROBE_NODE_pck_tx

Packet* uwUFetch_NODE::curr_PROBE_NODE_pck_tx
protected

Pointer to the PROBE packet that is being transmitted by SN.

Definition at line 2254 of file uwUFetch_NODE.h.

◆ curr_RTS_HN_pck_tx

Packet* uwUFetch_NODE::curr_RTS_HN_pck_tx
protected

Pointer to the RTS packet that is being transmitted by HN.

Definition at line 2530 of file uwUFetch_NODE.h.

◆ curr_state

UWUFETCH_NODE_STATUS uwUFetch_NODE::curr_state
protected

Current state in which the SN or HN is located.

Definition at line 2564 of file uwUFetch_NODE.h.

◆ curr_TRIGGER_HN_pck_rx

Packet* uwUFetch_NODE::curr_TRIGGER_HN_pck_rx
protected

Pointer to the TRIGGER packet that is being received by HN.

Definition at line 2528 of file uwUFetch_NODE.h.

◆ DATA_BEFORE_TX_timer

uwUFetch_DATA_BEFORE_TX_timer uwUFetch_NODE::DATA_BEFORE_TX_timer
protected

Definition at line 2109 of file uwUFetch_NODE.h.

◆ data_timeout

double uwUFetch_NODE::data_timeout
protected

Interval time in which the HN want to receive all DATA packets from the node that have polled.

Definition at line 2418 of file uwUFetch_NODE.h.

◆ DATA_timer

uwUFetch_DATA_timer uwUFetch_NODE::DATA_timer
protected

Schedule the DATA timeout timer.

Definition at line 2313 of file uwUFetch_NODE.h.

◆ dataAlreadyTransmitted

bool uwUFetch_NODE::dataAlreadyTransmitted
protected

Indicate whether the SN has transmit at least one DATA packets during the cycle BEACON-PROBE-POLL-DATA-CBEACON of the simulation.

Definition at line 2234 of file uwUFetch_NODE.h.

◆ debugMio_

int uwUFetch_NODE::debugMio_
protected

Used if we want to create the logging file.

Definition at line 2090 of file uwUFetch_NODE.h.

◆ fout

std::ofstream uwUFetch_NODE::fout
protected

Variable that handle the file in which the protocol write the state transition for debug purposes.

Definition at line 2592 of file uwUFetch_NODE.h.

◆ HEADNODE

int uwUFetch_NODE::HEADNODE
protected

Indicate if the node work as HEAD NODE or SENSOR NODE.

Definition at line 2574 of file uwUFetch_NODE.h.

◆ initialized

bool uwUFetch_NODE::initialized = false
staticprotected

Indicate if the protocol has been initialized or not.

Definition at line 2569 of file uwUFetch_NODE.h.

◆ last_reason

UWUFETCH_NODE_STATUS_CHANGE uwUFetch_NODE::last_reason
protected

Last reason because the SN or HN change its state.

Definition at line 2561 of file uwUFetch_NODE.h.

◆ mac_addr_AUV_in_CTS

int uwUFetch_NODE::mac_addr_AUV_in_CTS
protected

AUV-MAC address contained int the CTS packet received by HN.

Definition at line 2441 of file uwUFetch_NODE.h.

◆ mac_addr_AUV_in_trigger

int uwUFetch_NODE::mac_addr_AUV_in_trigger
protected

AUV-MAC address contained in the TRIGGER packet received by the HN.

Definition at line 2439 of file uwUFetch_NODE.h.

◆ mac_addr_HN_in_beacon

int uwUFetch_NODE::mac_addr_HN_in_beacon
protected

HN MAC address from which the SN has received PROBE packet.

Definition at line 2178 of file uwUFetch_NODE.h.

◆ mac_addr_HN_in_cbeacon

int uwUFetch_NODE::mac_addr_HN_in_cbeacon
protected

HN MAC address from which the SN has received the CBEACON packet.

Definition at line 2200 of file uwUFetch_NODE.h.

◆ mac_addr_HN_in_poll

int uwUFetch_NODE::mac_addr_HN_in_poll
protected

HN MAC address from which the SN has received the POLL packet.

Definition at line 2189 of file uwUFetch_NODE.h.

◆ mac_addr_NODE_in_data

int uwUFetch_NODE::mac_addr_NODE_in_data
protected

Mac address of the node from which the HN has received a DATA packet.

Definition at line 2429 of file uwUFetch_NODE.h.

◆ mac_addr_NODE_polled

int uwUFetch_NODE::mac_addr_NODE_polled
protected

SN-MAC address of the node that the HN is going to be poll and from which It want to receive DATA packets.

Definition at line 2410 of file uwUFetch_NODE.h.

◆ MAX_ALLOWED_CBEACON_TX

int uwUFetch_NODE::MAX_ALLOWED_CBEACON_TX
protected

Definition at line 2292 of file uwUFetch_NODE.h.

◆ max_data_HN_can_tx

int uwUFetch_NODE::max_data_HN_can_tx
protected

Maximum number of DATA packets that the HN must transmit to the AUV.

Definition at line 2444 of file uwUFetch_NODE.h.

◆ MAX_PAYLOAD

int uwUFetch_NODE::MAX_PAYLOAD
protected

Maximum size of payload DATA packet.

Definition at line 2082 of file uwUFetch_NODE.h.

◆ max_pck_HN_can_tx

int uwUFetch_NODE::max_pck_HN_can_tx
protected

Maximum number of DATA packets that AUV want to receive from HN.

Definition at line 2446 of file uwUFetch_NODE.h.

◆ MAX_PCK_HN_WANT_RX_FROM_NODE

int uwUFetch_NODE::MAX_PCK_HN_WANT_RX_FROM_NODE
protected

Definition at line 2295 of file uwUFetch_NODE.h.

◆ MAX_POLLED_NODE

int uwUFetch_NODE::MAX_POLLED_NODE
protected

Maximum number of PROBE packets that the HN can receive from the SN after the transmission of a BEACON or CBEACON.

Definition at line 2301 of file uwUFetch_NODE.h.

◆ MAXIMUM_BUFFER_DATA_PCK_NODE

int uwUFetch_NODE::MAXIMUM_BUFFER_DATA_PCK_NODE
protected

Maximum number of DATA packets that the SN can store in Its queue.

Definition at line 2086 of file uwUFetch_NODE.h.

◆ MODE_BURST_DATA

int uwUFetch_NODE::MODE_BURST_DATA
protected

Indicate if it's used or not the burst data.

0=not use burst date, 1=use burst data.

Definition at line 2099 of file uwUFetch_NODE.h.

◆ MODE_COMM_HN_AUV

int uwUFetch_NODE::MODE_COMM_HN_AUV
protected

Indicate the type of communication between HN and AUV, 0 = communication with RTS-CTS, 1 = communication without RTS-CTS.

Definition at line 2095 of file uwUFetch_NODE.h.

◆ n_BEACON_pck_rx_by_NODE

int uwUFetch_NODE::n_BEACON_pck_rx_by_NODE
protected

Number of BEACON receive by the SN during a single cycle BEACON-PROBE-POLL-DATA-CBEACON of the simulation.

Definition at line 2214 of file uwUFetch_NODE.h.

◆ n_BEACON_pck_tx_by_HN

int uwUFetch_NODE::n_BEACON_pck_tx_by_HN
protected

Number of BEACON packet transmitted by the HN during a single cycle BEACON-PROBE-POLL-DATA-CBEACON of the simulation.

Definition at line 2458 of file uwUFetch_NODE.h.

◆ n_CBEACON_pck_rx_by_NODE

int uwUFetch_NODE::n_CBEACON_pck_rx_by_NODE
protected

Number of CBEACON received by the SN during a single cycle BEACON-PROBE-POLL-DATA-CBEACON of the simulation.

Definition at line 2230 of file uwUFetch_NODE.h.

◆ n_CBEACON_pck_tx_by_HN

int uwUFetch_NODE::n_CBEACON_pck_tx_by_HN
protected

Number of CBEACON packet transmitted by the HN during a single cycle BEACON-PROBE-POLL-DATA-CBEACON of the simulation.

Definition at line 2476 of file uwUFetch_NODE.h.

◆ n_CTS_pck_rx_by_HN

int uwUFetch_NODE::n_CTS_pck_rx_by_HN
protected

Number of CTS packet received by the HN during a single cycle TRIGGER-RTS-CTS-DATA of the simulation.

Definition at line 2487 of file uwUFetch_NODE.h.

◆ n_DATA_pck_rx_by_HN

int uwUFetch_NODE::n_DATA_pck_rx_by_HN
protected

Number of DATA packet received by the HN during a single cycle BEACON-PROBE-POLL-DATA-CBEACON of the simulation.

Definition at line 2472 of file uwUFetch_NODE.h.

◆ n_DATA_pck_tx_by_HN

int uwUFetch_NODE::n_DATA_pck_tx_by_HN
protected

Number of DATA packet transmitted by the HN during a single cycle TRIGGER-RTS-CTS-DATA of the simulation.

Definition at line 2490 of file uwUFetch_NODE.h.

◆ n_DATA_pck_tx_by_NODE

int uwUFetch_NODE::n_DATA_pck_tx_by_NODE
protected

Number of DATA transmitted by the SN during a single cycle BEACON-PROBE-POLL-DATA-CBEACON of the simulation.

Definition at line 2226 of file uwUFetch_NODE.h.

◆ n_POLL_pck_rx_by_NODE

int uwUFetch_NODE::n_POLL_pck_rx_by_NODE
protected

Number of POLL received by the SN during a single cycle BEACON-PROBE-POLL-DATA-CBEACON of the simulation.

Definition at line 2222 of file uwUFetch_NODE.h.

◆ n_POLL_pck_tx_by_HN

int uwUFetch_NODE::n_POLL_pck_tx_by_HN
protected

Number of POLL packet transmitted by the HN during a single cycle BEACON-PROBE-POLL-DATA-CBEACON of the simulation.

Definition at line 2467 of file uwUFetch_NODE.h.

◆ n_PROBE_pck_rx_by_HN

int uwUFetch_NODE::n_PROBE_pck_rx_by_HN
protected

Number of PROBE packet received by the HN during a single cycle BEACON-PROBE-POLL-DATA-CBEACON of the simulation.

Definition at line 2462 of file uwUFetch_NODE.h.

◆ n_PROBE_pck_tx_by_NODE

int uwUFetch_NODE::n_PROBE_pck_tx_by_NODE
protected

Number of PROBE transmitted by the SN during a single cycle BEACON-PROBE-POLL-DATA-CBEACON of the simulation.

Definition at line 2218 of file uwUFetch_NODE.h.

◆ n_RTS_pck_tx_by_HN

int uwUFetch_NODE::n_RTS_pck_tx_by_HN
protected

Number of RTS packet transmitted by the HN during a single cycle TRIGGER-RTS-CTS-DATA of the simulation.

Definition at line 2484 of file uwUFetch_NODE.h.

◆ N_RUN

int uwUFetch_NODE::N_RUN
protected

Indicate the number of the run in execution.

Definition at line 2091 of file uwUFetch_NODE.h.

◆ n_tot_BEACON_pck_rx_by_NODE

int uwUFetch_NODE::n_tot_BEACON_pck_rx_by_NODE
protected

Total number of BEACON packets received correctly or not by SN during an entire duration of simulation.

Definition at line 2141 of file uwUFetch_NODE.h.

◆ n_tot_BEACON_pck_rx_corr_by_NODE

int uwUFetch_NODE::n_tot_BEACON_pck_rx_corr_by_NODE
protected

Total number of BEACON packets received corrupted by SN during an entire duration of simulation.

Definition at line 2144 of file uwUFetch_NODE.h.

◆ n_tot_BEACON_pck_tx_by_HN

int uwUFetch_NODE::n_tot_BEACON_pck_tx_by_HN
protected

Total number of BEACON packets transmitted by the HN during an entire simulation.

Definition at line 2371 of file uwUFetch_NODE.h.

◆ n_tot_CBEACON_pck_rx_by_NODE

int uwUFetch_NODE::n_tot_CBEACON_pck_rx_by_NODE
protected

Total number of CBEACON packets received correctly or not by SN during an entire duration of simulation.

Definition at line 2160 of file uwUFetch_NODE.h.

◆ n_tot_CBEACON_pck_rx_corr_by_NODE

int uwUFetch_NODE::n_tot_CBEACON_pck_rx_corr_by_NODE
protected

Total number of CBEACON packets received corrupted by the SN during an entire duration of simulation.

Definition at line 2164 of file uwUFetch_NODE.h.

◆ n_tot_CBEACON_pck_tx_by_HN

int uwUFetch_NODE::n_tot_CBEACON_pck_tx_by_HN
protected

Total number of CBEACON packets transmitted by the HN during an entire simulation.

Definition at line 2389 of file uwUFetch_NODE.h.

◆ n_tot_CTS_pck_rx_by_HN

int uwUFetch_NODE::n_tot_CTS_pck_rx_by_HN
protected

Total number of CTS packets correctly or not received by the HN during an entire simulation.

Definition at line 2402 of file uwUFetch_NODE.h.

◆ n_tot_CTS_pck_rx_corr_by_HN

int uwUFetch_NODE::n_tot_CTS_pck_rx_corr_by_HN
protected

Total number of corrupted CTS packets received by the HN during an entire simulation.

Definition at line 2405 of file uwUFetch_NODE.h.

◆ n_tot_DATA_pck_rx_by_HN

int uwUFetch_NODE::n_tot_DATA_pck_rx_by_HN
protected

Total number of DATA packets correctly or not received by the HN during an entire simulation.

Definition at line 2383 of file uwUFetch_NODE.h.

◆ n_tot_DATA_pck_rx_corr_by_HN

int uwUFetch_NODE::n_tot_DATA_pck_rx_corr_by_HN
protected

Total number of corrupted DATA packets received by the HN during an entire simulation.

Definition at line 2386 of file uwUFetch_NODE.h.

◆ n_tot_DATA_pck_tx_by_HN

int uwUFetch_NODE::n_tot_DATA_pck_tx_by_HN
protected

Total number of DATA packets transmitted by the HN during an entire simulation.

Definition at line 2408 of file uwUFetch_NODE.h.

◆ n_tot_DATA_pck_tx_by_NODE

int uwUFetch_NODE::n_tot_DATA_pck_tx_by_NODE
protected

Total number of DATA packets transmitted by the SN during an entire duration of simulation.

Definition at line 2156 of file uwUFetch_NODE.h.

◆ n_tot_POLL_pck_rx_by_NODE

int uwUFetch_NODE::n_tot_POLL_pck_rx_by_NODE
protected

Total number of POLL packets received correctly or not by SN during an entire duration of simulation.

Definition at line 2150 of file uwUFetch_NODE.h.

◆ n_tot_POLL_pck_rx_corr_by_NODE

int uwUFetch_NODE::n_tot_POLL_pck_rx_corr_by_NODE
protected

Total number of POLL packets received corrupted by SN during an entire duration of simulation.

Definition at line 2153 of file uwUFetch_NODE.h.

◆ n_tot_POLL_pck_tx_by_HN

int uwUFetch_NODE::n_tot_POLL_pck_tx_by_HN
protected

Total number of POLL packets transmitted by the HN during an entire simulation.

Definition at line 2381 of file uwUFetch_NODE.h.

◆ n_tot_PROBE_pck_corr_rx_by_HN

int uwUFetch_NODE::n_tot_PROBE_pck_corr_rx_by_HN
protected

Total number of corrupted PROBE packets received by the HN during an entire simulation.

Definition at line 2378 of file uwUFetch_NODE.h.

◆ n_tot_PROBE_pck_rx_by_HN

int uwUFetch_NODE::n_tot_PROBE_pck_rx_by_HN
protected

Total number of PROBE packets correctly or not received by the HN during an entire simulation.

Definition at line 2375 of file uwUFetch_NODE.h.

◆ n_tot_PROBE_pck_tx_by_NODE

int uwUFetch_NODE::n_tot_PROBE_pck_tx_by_NODE
protected

Total number of PROBE packets transmitted by SN during an entire duration of simulation.

Definition at line 2147 of file uwUFetch_NODE.h.

◆ n_tot_RTS_pck_tx_by_HN

int uwUFetch_NODE::n_tot_RTS_pck_tx_by_HN
protected

Total number of RTS packets transmitted by the HN during an entire simulation.

Definition at line 2400 of file uwUFetch_NODE.h.

◆ n_tot_TRIGGER_pck_rx_by_HN

int uwUFetch_NODE::n_tot_TRIGGER_pck_rx_by_HN
protected

Total number of TRIGGER packets correctly or not received by the HN during an entire simulation.

Definition at line 2392 of file uwUFetch_NODE.h.

◆ n_tot_TRIGGER_pck_rx_corr_by_HN

int uwUFetch_NODE::n_tot_TRIGGER_pck_rx_corr_by_HN
protected

Total number of corrupted TRIGGER packets received by the HN during an entire simulation.

Definition at line 2396 of file uwUFetch_NODE.h.

◆ n_TRIGGER_pck_rx_by_HN

int uwUFetch_NODE::n_TRIGGER_pck_rx_by_HN
protected

Number of TRIGGER packet received by the HN during a single cycle TRIGGER-RTS-CTS-DATA of the simulation.

Definition at line 2481 of file uwUFetch_NODE.h.

◆ num_cbeacon_at_now_HN_tx

int uwUFetch_NODE::num_cbeacon_at_now_HN_tx
protected

NUmber of CBEACON packets transmitted by the HN during the single cycle BEACON-PROBE-POLL-DATA-CBEACON.

Definition at line 2197 of file uwUFetch_NODE.h.

◆ num_cbeacon_node_rx

int uwUFetch_NODE::num_cbeacon_node_rx
protected

Number of CBEACON that the node have received from the specific HN before to receive an another BEACON packet.

Definition at line 2175 of file uwUFetch_NODE.h.

◆ num_pck_to_tx_by_NODE

int uwUFetch_NODE::num_pck_to_tx_by_NODE
protected

Number of DATA packets that the SN at the instant time of BEACON reception has available to transmit to the HN.

Definition at line 2192 of file uwUFetch_NODE.h.

◆ number_data_pck_HN_rx_exact

int uwUFetch_NODE::number_data_pck_HN_rx_exact
protected

Exact number of DATA packets that the HN want to receive from the SN that have polled.

Definition at line 2414 of file uwUFetch_NODE.h.

◆ out_file_logging

std::ofstream uwUFetch_NODE::out_file_logging
protected

Variable that handle the file in which the protocol write the statistics.

Definition at line 2596 of file uwUFetch_NODE.h.

◆ packetType

std::map< uwUFetch_NODE::UWUFETCH_NODE_PACKET_TYPE, std::string > uwUFetch_NODE::packetType
staticprotected

Map the UWUFETCH_NODE_PACKET_TYPE to the description of packet type.

Definition at line 2585 of file uwUFetch_NODE.h.

◆ pck_number_id

int uwUFetch_NODE::pck_number_id
protected

Unique identifier of the DATA packet received.

Definition at line 2417 of file uwUFetch_NODE.h.

◆ POLL_timer

uwUFetch_POLL_timer uwUFetch_NODE::POLL_timer
protected

Interval time in which SN is enabled to receive POLL packet from the specific HN.

Definition at line 2107 of file uwUFetch_NODE.h.

◆ prev_state

UWUFETCH_NODE_STATUS uwUFetch_NODE::prev_state
protected

Previous state in which the SN or HN it was located.

Definition at line 2565 of file uwUFetch_NODE.h.

◆ print_transitions

bool uwUFetch_NODE::print_transitions
protected

true if the writing of state transitions in the file is enabled.

Definition at line 2572 of file uwUFetch_NODE.h.

◆ PRINT_TRANSITIONS_INT

int uwUFetch_NODE::PRINT_TRANSITIONS_INT
protected

0 reason because the SN or HN is passed from a state to another state is not logged in a file

Definition at line 2285 of file uwUFetch_NODE.h.

◆ PROBE_timer

uwUFetch_PROBE_timer uwUFetch_NODE::PROBE_timer
protected

Schedule the PROBE timeout timer.

Definition at line 2312 of file uwUFetch_NODE.h.

◆ Q_data

std::queue<Packet *> uwUFetch_NODE::Q_data
protected

Queue of DATA packets stored by the SN.

Definition at line 2267 of file uwUFetch_NODE.h.

◆ Q_data_HN

std:: queue<Packet *> uwUFetch_NODE::Q_data_HN
protected

Queue of DATA packets stored by the HNs and received from SN.

Definition at line 2542 of file uwUFetch_NODE.h.

◆ Q_data_source_SN

std::queue<int> uwUFetch_NODE::Q_data_source_SN
protected

Queue that contain the MAC address from which the HN has received the DATA packet.

Definition at line 2544 of file uwUFetch_NODE.h.

◆ Q_probbed_backoff_time

std::queue<double> uwUFetch_NODE::Q_probbed_backoff_time
protected

Queue that stored the backoff time choice by the single nodes before to transmit the PROBE packet to the HN.

Definition at line 2554 of file uwUFetch_NODE.h.

◆ Q_probbed_mac_HN

std::queue<int> uwUFetch_NODE::Q_probbed_mac_HN
protected

Queue that store the MAC address of the SN from which the HN has received correctly the PROBE packets.

Definition at line 2547 of file uwUFetch_NODE.h.

◆ Q_probbed_n_pcks_NODE_want_tx_HN

std::queue<int> uwUFetch_NODE::Q_probbed_n_pcks_NODE_want_tx_HN
protected

Queue that store the number of DATA packets that the single SN want to tx to the HN.

Definition at line 2551 of file uwUFetch_NODE.h.

◆ RTT

double uwUFetch_NODE::RTT
protected

Round trip time value.

Definition at line 2187 of file uwUFetch_NODE.h.

◆ rx_BEACON_finish_time

double uwUFetch_NODE::rx_BEACON_finish_time
protected

Indicates when SN finished the reception of BEACON packet from HN.

Definition at line 2121 of file uwUFetch_NODE.h.

◆ rx_BEACON_start_time

double uwUFetch_NODE::rx_BEACON_start_time
protected

Indicates when SN started the reception of BEACON packet from HN.

Definition at line 2119 of file uwUFetch_NODE.h.

◆ rx_CBEACON_finish_time

double uwUFetch_NODE::rx_CBEACON_finish_time
protected

Indicates when SN finished the reception of BEACON packet from HN.

Definition at line 2139 of file uwUFetch_NODE.h.

◆ rx_CBEACON_start_time

double uwUFetch_NODE::rx_CBEACON_start_time
protected

Indicates when SN started the reception of CBEACON packet from HN.

Definition at line 2136 of file uwUFetch_NODE.h.

◆ rx_CTS_finish_HN_time

double uwUFetch_NODE::rx_CTS_finish_HN_time
protected

Indicates when HN finished the reception of CTS packet from the SNs.

Definition at line 2365 of file uwUFetch_NODE.h.

◆ rx_CTS_start_HN_time

double uwUFetch_NODE::rx_CTS_start_HN_time
protected

Indicates when HN started the reception of CTS packet from the AUV.

Definition at line 2363 of file uwUFetch_NODE.h.

◆ rx_DATA_finish_HN_time

double uwUFetch_NODE::rx_DATA_finish_HN_time
protected

Indicates when HN finished the reception of DATA packet from the SNs.

Definition at line 2342 of file uwUFetch_NODE.h.

◆ rx_DATA_start_HN_time

double uwUFetch_NODE::rx_DATA_start_HN_time
protected

Indicates when HN started the reception of DATA packet from the SNs.

Definition at line 2339 of file uwUFetch_NODE.h.

◆ rx_POLL_finish_time

double uwUFetch_NODE::rx_POLL_finish_time
protected

Indicates when SN finished the reception of POLL packet from HN.

Definition at line 2130 of file uwUFetch_NODE.h.

◆ rx_POLL_start_time

double uwUFetch_NODE::rx_POLL_start_time
protected

Indicates when SN started the reception of POLL packet from HN.

Definition at line 2127 of file uwUFetch_NODE.h.

◆ rx_PROBE_finish_HN_time

double uwUFetch_NODE::rx_PROBE_finish_HN_time
protected

Indicates when HN finished the reception of PROBE packet from the SNs.

Definition at line 2331 of file uwUFetch_NODE.h.

◆ rx_PROBE_start_HN_time

double uwUFetch_NODE::rx_PROBE_start_HN_time
protected

Indicates when HN started the reception of PROBE packet from the SNs.

Definition at line 2329 of file uwUFetch_NODE.h.

◆ rx_TRIGGER_finish_HN_time

double uwUFetch_NODE::rx_TRIGGER_finish_HN_time
protected

Indicates when HN finished the reception of TRIGGER packet from the AUV.

Definition at line 2354 of file uwUFetch_NODE.h.

◆ rx_TRIGGER_start_HN_time

double uwUFetch_NODE::rx_TRIGGER_start_HN_time
protected

Indicates when HN started the reception of TRIGGER packet from the AUV.

Definition at line 2351 of file uwUFetch_NODE.h.

◆ rxBEACONEnabled

bool uwUFetch_NODE::rxBEACONEnabled
protected

true if SN is enabled to receive a BEACON packet from the HN

Definition at line 2239 of file uwUFetch_NODE.h.

◆ rxCBEACONEnabled

bool uwUFetch_NODE::rxCBEACONEnabled
protected

true if SN is enabled to receive a CBEACON packet from the HN

Definition at line 2248 of file uwUFetch_NODE.h.

◆ rxCTSEnabled

bool uwUFetch_NODE::rxCTSEnabled
protected

true if HN is enabled to receive a CTS packet from the AUV

Definition at line 2510 of file uwUFetch_NODE.h.

◆ rxDATAEnabled

bool uwUFetch_NODE::rxDATAEnabled
protected

true if HN is enabled to receive a DATA packet from teh SN

Definition at line 2502 of file uwUFetch_NODE.h.

◆ rxPOLLEnabled

bool uwUFetch_NODE::rxPOLLEnabled
protected

true if SN is enabled to receive a POLL packet from the HN

Definition at line 2244 of file uwUFetch_NODE.h.

◆ rxPROBEEnabled

bool uwUFetch_NODE::rxPROBEEnabled
protected

true if HN is enabled to receive a PROBE packet from the SN

Definition at line 2498 of file uwUFetch_NODE.h.

◆ rxTRIGGEREnabled

bool uwUFetch_NODE::rxTRIGGEREnabled
protected

true if HN is enabled to receive a TRIGGER packet from the AUV

Definition at line 2506 of file uwUFetch_NODE.h.

◆ sectionCBeacon

bool uwUFetch_NODE::sectionCBeacon
protected

true HN has started the transmission of RTS packet when It was in the CBEACON section.

Definition at line 2454 of file uwUFetch_NODE.h.

◆ statusChange

std::map< uwUFetch_NODE::UWUFETCH_NODE_STATUS_CHANGE, std::string > uwUFetch_NODE::statusChange
staticprotected

Map the UWUFETCH_NODE_STATUS_CHANGE to the description the reason of changing state.

Definition at line 2582 of file uwUFetch_NODE.h.

◆ statusInfo

std::map< uwUFetch_NODE::UWUFETCH_NODE_STATUS, std::string > uwUFetch_NODE::statusInfo
staticprotected

Map the UWUFETCH_NODE_STATUS to the description of each state.

Definition at line 2579 of file uwUFetch_NODE.h.

◆ statusTimer

std::map< uwUFetch_NODE::UWUFETCH_TIMER_STATUS, std::string > uwUFetch_NODE::statusTimer
staticprotected

Map the UWUFETCH_TIMER_STATUS to the description of the timers.

Definition at line 2588 of file uwUFetch_NODE.h.

◆ T_CTS

double uwUFetch_NODE::T_CTS
protected

Definition at line 2299 of file uwUFetch_NODE.h.

◆ T_GUARD

double uwUFetch_NODE::T_GUARD
protected

Guard interval used for successive transmission of DATA packets.

Definition at line 2084 of file uwUFetch_NODE.h.

◆ T_MAX_BACKOFF_PROBE

double uwUFetch_NODE::T_MAX_BACKOFF_PROBE
protected

Upper bound timer interval of back-off value used by the SN to choice its back-off time before to transmit a PROBE packet.

Definition at line 2279 of file uwUFetch_NODE.h.

◆ T_max_bck_DATA

double uwUFetch_NODE::T_max_bck_DATA
protected

Upper bound time interval from which the HN choice its backoff timer before to transmit a DATA packet to the AUV.

Definition at line 2207 of file uwUFetch_NODE.h.

◆ T_max_bck_probe_node

double uwUFetch_NODE::T_max_bck_probe_node
protected

Upper bound timer interval used by the SN to choice the interval time before to transmit a PROBE packet to the HN.

Definition at line 2171 of file uwUFetch_NODE.h.

◆ T_max_bck_RTS

double uwUFetch_NODE::T_max_bck_RTS
protected

Upper bound interval time from which the HN choice his backoff timer before to transmit a RTS packet to the AUV.

Definition at line 2436 of file uwUFetch_NODE.h.

◆ T_MIN_BACKOFF_PROBE

double uwUFetch_NODE::T_MIN_BACKOFF_PROBE
protected

Lower bound timer interval of back-off value used by the SN to choice its back-off time before to transmit a PROBE packet.

Definition at line 2282 of file uwUFetch_NODE.h.

◆ T_min_bck_DATA

double uwUFetch_NODE::T_min_bck_DATA
protected

Lower bound time interval from which the HN choice its backoff timer before to transmit a DATA packet to the AUV.

Definition at line 2203 of file uwUFetch_NODE.h.

◆ T_min_bck_probe_node

double uwUFetch_NODE::T_min_bck_probe_node
protected

Lower bound timer interval used by the SN to choice the interval time before to transmit a PROBE packet to the HN.

Definition at line 2168 of file uwUFetch_NODE.h.

◆ T_min_bck_RTS

double uwUFetch_NODE::T_min_bck_RTS
protected

Lower bound interval time from which the HN choice its backoff timer before to transmit a RTS packet to the AUV.

Definition at line 2433 of file uwUFetch_NODE.h.

◆ T_POLL

double uwUFetch_NODE::T_POLL
protected

Interval time in which the SN wait a POLL packet from the HN.

Definition at line 2088 of file uwUFetch_NODE.h.

◆ T_PROBE

double uwUFetch_NODE::T_PROBE
protected

Interval time in which HN is enabled to received PROBE packets from SNs after the transmission of TRIGGER packet.

Definition at line 2289 of file uwUFetch_NODE.h.

◆ T_START_PROCEDURE_HN_NODE

double uwUFetch_NODE::T_START_PROCEDURE_HN_NODE
protected

Time within HN is enabled to received a TRIGGER packet from AUV.

If in this time the AUV never receive a TRIGGER packet start the communication with the SN

Definition at line 2274 of file uwUFetch_NODE.h.

◆ Tbeacon

double uwUFetch_NODE::Tbeacon
protected

Time needed to transmit a BEACON packet.

It consider also a propagation delay.

Definition at line 2420 of file uwUFetch_NODE.h.

◆ Tdata_HN

double uwUFetch_NODE::Tdata_HN
protected

Time needed to transmit a DATA packet.

It consider also a propagation delay.

Definition at line 2427 of file uwUFetch_NODE.h.

◆ Tdata_HN_pck

double uwUFetch_NODE::Tdata_HN_pck
protected

Time to transmit a DATA packet by the HN.

Definition at line 2448 of file uwUFetch_NODE.h.

◆ Tdata_NODE

double uwUFetch_NODE::Tdata_NODE
protected

Time duration needed for SN to transmit a DATA packet to the HN.

It include the time delay propagation.

Definition at line 2184 of file uwUFetch_NODE.h.

◆ Tdata_NODE_pck

double uwUFetch_NODE::Tdata_NODE_pck
protected

Time duration need for SN for transmit a DATA packet to the HN.

Definition at line 2195 of file uwUFetch_NODE.h.

◆ TIME_BETWEEN_2_TX_DATA_HN_AUV

double uwUFetch_NODE::TIME_BETWEEN_2_TX_DATA_HN_AUV
protected

Interval time used by HN before to transmit the next DATA packet to the AUV.

Definition at line 2305 of file uwUFetch_NODE.h.

◆ TIME_BETWEEN_2_TX_DATA_NODE_HN

double uwUFetch_NODE::TIME_BETWEEN_2_TX_DATA_NODE_HN
protected

Interval time used by the SN before to transmit the next DATA packet to the HN.

Definition at line 2092 of file uwUFetch_NODE.h.

◆ Tpoll

double uwUFetch_NODE::Tpoll
protected

Time needed to transmit a POLL packet.

It consider also a propagation delay.

Definition at line 2423 of file uwUFetch_NODE.h.

◆ Tprobe

double uwUFetch_NODE::Tprobe
protected

Time duration needed for SN to transmit a PROBE packet to the HN.

It include the time delay propagation.

Definition at line 2182 of file uwUFetch_NODE.h.

◆ Trts

double uwUFetch_NODE::Trts
protected

Time needed to transmit a RTS packet.

It consider also a propagation delay.

Definition at line 2425 of file uwUFetch_NODE.h.

◆ tx_BEACON_finish_HN_time

double uwUFetch_NODE::tx_BEACON_finish_HN_time
protected

Indicates when HN finished the transmission of BEACON packet to the SNs.

Definition at line 2326 of file uwUFetch_NODE.h.

◆ tx_BEACON_start_HN_time

double uwUFetch_NODE::tx_BEACON_start_HN_time
protected

Indicates when HN started the transmission of BEACON packet to the SNs.

Definition at line 2322 of file uwUFetch_NODE.h.

◆ tx_CBEACON_finish_HN_time

double uwUFetch_NODE::tx_CBEACON_finish_HN_time
protected

Indicates when HN finished the transmission of CBEACON packet to the SNs.

Definition at line 2347 of file uwUFetch_NODE.h.

◆ tx_CBEACON_start_HN_time

double uwUFetch_NODE::tx_CBEACON_start_HN_time
protected

Indicates when HN started the transmission of CBEACON packet to the SNs.

Definition at line 2344 of file uwUFetch_NODE.h.

◆ tx_DATA_finish_HN_time

double uwUFetch_NODE::tx_DATA_finish_HN_time
protected

Indicates when HN finished the transmission of DATA packet to the AUV.

Definition at line 2369 of file uwUFetch_NODE.h.

◆ tx_DATA_finish_time

double uwUFetch_NODE::tx_DATA_finish_time
protected

Indicates when SN finished a transmission of DATA packet to the HN.

Definition at line 2134 of file uwUFetch_NODE.h.

◆ tx_DATA_start_HN_time

double uwUFetch_NODE::tx_DATA_start_HN_time
protected

Indicates when HN started the transmission of DATA packet to the AUV.

Definition at line 2367 of file uwUFetch_NODE.h.

◆ tx_DATA_start_time

double uwUFetch_NODE::tx_DATA_start_time
protected

Indicates when SN start a transmission of DATA packet to the HN.

Definition at line 2132 of file uwUFetch_NODE.h.

◆ tx_POLL_finish_HN_time

double uwUFetch_NODE::tx_POLL_finish_HN_time
protected

Indicates when HN finished the transmission of POLL packet to a specific SN.

Definition at line 2336 of file uwUFetch_NODE.h.

◆ tx_POLL_start_HN_time

double uwUFetch_NODE::tx_POLL_start_HN_time
protected

Indicates when HN started the transmission of POLL packet to a specific SN.

Definition at line 2333 of file uwUFetch_NODE.h.

◆ tx_PROBE_finish_time

double uwUFetch_NODE::tx_PROBE_finish_time
protected

Indicates when SN finished a transmission of PROBE packet.

Definition at line 2125 of file uwUFetch_NODE.h.

◆ tx_PROBE_start_time

double uwUFetch_NODE::tx_PROBE_start_time
protected

Indicates when SN start a transmission of PROBE packet.

Definition at line 2123 of file uwUFetch_NODE.h.

◆ tx_RTS_finish_HN_time

double uwUFetch_NODE::tx_RTS_finish_HN_time
protected

Indicates when HN finished the transmission of RTS packet to the AUV.

Definition at line 2360 of file uwUFetch_NODE.h.

◆ tx_RTS_start_HN_time

double uwUFetch_NODE::tx_RTS_start_HN_time
protected

Indicates when HN started the transmission of RTS packet to the AUV.

Definition at line 2358 of file uwUFetch_NODE.h.

◆ txBEACONEnabled

bool uwUFetch_NODE::txBEACONEnabled
protected

true if HN is enabled to transmit a BEACON packet to the SN

Definition at line 2495 of file uwUFetch_NODE.h.

◆ txCBEACONEnabled

bool uwUFetch_NODE::txCBEACONEnabled
protected

true if HN is enabled to transmit a CBEACON packet to the SN

Definition at line 2504 of file uwUFetch_NODE.h.

◆ txDATAEnabled

bool uwUFetch_NODE::txDATAEnabled
protected

true if SN is enabled to transmit a DATA packet to the HN

Definition at line 2246 of file uwUFetch_NODE.h.

◆ txDATAEnabledHN

bool uwUFetch_NODE::txDATAEnabledHN
protected

true if HN is enabled to transmit a DATA packet to the AUV

Definition at line 2513 of file uwUFetch_NODE.h.

◆ txPOLLEnabled

bool uwUFetch_NODE::txPOLLEnabled
protected

true if HN is enabled to transmit a POLL packet to the SN

Definition at line 2500 of file uwUFetch_NODE.h.

◆ txPROBEEnabled

bool uwUFetch_NODE::txPROBEEnabled
protected

true if SN is enabled to transmit a PROBE packet to the HN

Definition at line 2242 of file uwUFetch_NODE.h.

◆ txRTSbeforeCBEACON

bool uwUFetch_NODE::txRTSbeforeCBEACON
protected

true HN block the transmission of CBEACON because It try to communicate with the AUV.

Definition at line 2451 of file uwUFetch_NODE.h.

◆ txRTSEnabled

bool uwUFetch_NODE::txRTSEnabled
protected

true if HN is enabled to transmit a RTS packet to the AUV

Definition at line 2508 of file uwUFetch_NODE.h.


The documentation for this class was generated from the following files: