DESERT 3.5.1
Loading...
Searching...
No Matches
uw-csma-ca.h File Reference
#include <mmac.h>
#include <queue>
#include <sstream>
#include <fstream>
#include <unistd.h>
#include <iostream>
#include <time.h>
#include "uw-csma-ca-hdrs.h"
Include dependency graph for uw-csma-ca.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  CsmaCa
 
class  CsmaCa::CsmaCaTimer
 

Macros

#define DROP_REASON_SNR   "SNR"
 
#define DROP_REASON_NOTFORME   "NFM"
 
#define DROP_REASON_NOTRIGHTSTATE   "NRS"
 
#define DROP_REASON_GENERICERROR   "ERR"
 
#define LOGERR(log)   printonLog(CSMA_CA_ERROR, log);
 
#define LOGDBG(log)   printonLog(CSMA_CA_DEBUG, log);
 
#define LOGWRN(log)   printonLog(CSMA_CA_WARN, log);
 
#define LOGINFO(log)   printonLog(CSMA_CA_INFO, log);
 

Typedefs

typedef enum CSMA_CA_TIMERS csma_ca_timers_t
 
typedef enum CSMA_CA_ACK_MODES ack_modes_t
 
typedef enum CSMA_CA_PKT_TYPE csma_ca_pkt_type_t
 
typedef enum CSMA_CA_STATES csma_ca_states_t
 
typedef enum log_level csma_ca_log_level_t
 

Enumerations

enum  CSMA_CA_TIMERS { CSMA_CA_DATA_TIMER , CSMA_CA_BACKOFF_TIMER , CSMA_CA_CTS_TIMER , CSMA_CA_ACK_TIMER }
 
enum  CSMA_CA_ACK_MODES { CSMA_CA_NO_ACK_MODE = 0 , CSMA_CA_ACK_MODE }
 
enum  CSMA_CA_STATES {
  CSMA_CA_IDLE = 0 , CSMA_CA_BACKOFF , CSMA_CA_TX_RTS , CSMA_CA_TX_CTS ,
  CSMA_CA_TX_DATA , CSMA_CA_WAIT_CTS , CSMA_CA_WAIT_DATA , CSMA_CA_WAIT_ACK ,
  CSMA_CA_TX_ACK
}
 
enum  CSMA_CA_PKT_TYPE { CSMA_CA_RTS , CSMA_CA_CTS , CSMA_CA_ACK , CSMA_CA_DATA }
 
enum  log_level { CSMA_CA_ERROR = 0 , CSMA_CA_WARN , CSMA_CA_INFO , CSMA_CA_DEBUG }
 

Variables

string log_level_string [] = {"ERROR", "WARNING", "INFO", "DEBUG"}
 

Detailed Description

Provides the description of CsmaCa Class.

Author
Federico Favaro
Version
1.0.0

Definition in file uw-csma-ca.h.

Macro Definition Documentation

◆ DROP_REASON_GENERICERROR

#define DROP_REASON_GENERICERROR   "ERR"

Definition at line 55 of file uw-csma-ca.h.

◆ DROP_REASON_NOTFORME

#define DROP_REASON_NOTFORME   "NFM"

Definition at line 53 of file uw-csma-ca.h.

◆ DROP_REASON_NOTRIGHTSTATE

#define DROP_REASON_NOTRIGHTSTATE   "NRS"

Definition at line 54 of file uw-csma-ca.h.

◆ DROP_REASON_SNR

#define DROP_REASON_SNR   "SNR"

Definition at line 52 of file uw-csma-ca.h.

◆ LOGDBG

#define LOGDBG (   log)    printonLog(CSMA_CA_DEBUG, log);

Definition at line 297 of file uw-csma-ca.h.

◆ LOGERR

#define LOGERR (   log)    printonLog(CSMA_CA_ERROR, log);

Definition at line 296 of file uw-csma-ca.h.

◆ LOGINFO

#define LOGINFO (   log)    printonLog(CSMA_CA_INFO, log);

Definition at line 299 of file uw-csma-ca.h.

◆ LOGWRN

#define LOGWRN (   log)    printonLog(CSMA_CA_WARN, log);

Definition at line 298 of file uw-csma-ca.h.

Typedef Documentation

◆ ack_modes_t

Definition at line 66 of file uw-csma-ca.h.

◆ csma_ca_log_level_t

Definition at line 88 of file uw-csma-ca.h.

◆ csma_ca_pkt_type_t

Definition at line 82 of file uw-csma-ca.h.

◆ csma_ca_states_t

Definition at line 84 of file uw-csma-ca.h.

◆ csma_ca_timers_t

Enumeration Type Documentation

◆ CSMA_CA_ACK_MODES

Enumerator
CSMA_CA_NO_ACK_MODE 
CSMA_CA_ACK_MODE 

Definition at line 64 of file uw-csma-ca.h.

◆ CSMA_CA_PKT_TYPE

Enumerator
CSMA_CA_RTS 
CSMA_CA_CTS 
CSMA_CA_ACK 
CSMA_CA_DATA 

Definition at line 80 of file uw-csma-ca.h.

◆ CSMA_CA_STATES

Enumerator
CSMA_CA_IDLE 
CSMA_CA_BACKOFF 
CSMA_CA_TX_RTS 
CSMA_CA_TX_CTS 
CSMA_CA_TX_DATA 
CSMA_CA_WAIT_CTS 
CSMA_CA_WAIT_DATA 
CSMA_CA_WAIT_ACK 
CSMA_CA_TX_ACK 

Definition at line 68 of file uw-csma-ca.h.

◆ CSMA_CA_TIMERS

Enumerator
CSMA_CA_DATA_TIMER 
CSMA_CA_BACKOFF_TIMER 
CSMA_CA_CTS_TIMER 
CSMA_CA_ACK_TIMER 

Definition at line 57 of file uw-csma-ca.h.

◆ log_level

enum log_level
Enumerator
CSMA_CA_ERROR 
CSMA_CA_WARN 
CSMA_CA_INFO 
CSMA_CA_DEBUG 

Definition at line 86 of file uw-csma-ca.h.

Variable Documentation

◆ log_level_string

string log_level_string[] = {"ERROR", "WARNING", "INFO", "DEBUG"}

Definition at line 92 of file uw-csma-ca.h.