DESERT 3.5.1
|
#include <uwmulti-stack-controller-phy.h>
Public Member Functions | |
UwMultiStackControllerPhy () | |
virtual | ~UwMultiStackControllerPhy () |
virtual int | command (int, const char *const *) |
virtual int | recvSyncClMsg (ClMessage *m) |
virtual void | recv (Packet *p, int idSrc) |
![]() | |
UwMultiStackController () | |
virtual | ~UwMultiStackController () |
virtual void | addLayer (int id, int order) |
virtual void | addThreshold (int i, int j, double thres_ij) |
virtual void | recv (Packet *p) |
int | getOrder (int layer_id) |
int | getId (int layer_order) |
Protected Types | |
enum | UWPHY_CONTROLLER_STATE { UWPHY_CONTROLLER_STATE_IDLE = 1 , UWPHY_CONTROLLER_STATE_BUSY_2_TX , UWPHY_CONTROLLER_STATE_BUSY_2_RX } |
![]() | |
enum | Mode { UW_MANUAL_SWITCH = 0 , UW_AUTOMATIC_SWITCH } |
Protected Member Functions | |
virtual void | initInfo () |
virtual void | stateIdle () |
virtual void | stateBusy2Rx (int id) |
virtual void | stateBusy2Tx (Packet *p) |
![]() | |
virtual void | recvFromUpperLayers (Packet *p) |
virtual int | getBestLayer (Packet *p) |
virtual bool | isLayerAvailable (int id) |
virtual double | getMetricFromSelectedLowerLayer (int id, Packet *p) |
virtual bool | getThreshold (int i, int j, double &thres_ij) |
virtual void | eraseThreshold (int i, int j) |
void | setThreshold (int i, int j, double thres_ij) |
Protected Attributes | |
int | receiving_id |
UWPHY_CONTROLLER_STATE | current_state |
![]() | |
int | debug_ |
double | min_delay_ |
Mode | switch_mode_ |
int | lower_id_active_ |
std::map< int, int > | id2order |
ThresMatrix | threshold_map |
std::map< int, int > | order2id |
int | signaling_pktSize_ |
Static Protected Attributes | |
static map< UWPHY_CONTROLLER_STATE, string > | state_info |
Additional Inherited Members | |
![]() | |
static int const | layer_not_exist = -1 |
Definition at line 47 of file uwmulti-stack-controller-phy.h.
|
protected |
Enumerator | |
---|---|
UWPHY_CONTROLLER_STATE_IDLE | |
UWPHY_CONTROLLER_STATE_BUSY_2_TX | |
UWPHY_CONTROLLER_STATE_BUSY_2_RX |
Definition at line 101 of file uwmulti-stack-controller-phy.h.
UwMultiStackControllerPhy::UwMultiStackControllerPhy | ( | ) |
Constructor of UwMultiPhy class.
Definition at line 60 of file uwmulti-stack-controller-phy.cc.
|
inlinevirtual |
Destructor of UwMultiPhy class.
Definition at line 59 of file uwmulti-stack-controller-phy.h.
|
virtual |
TCL command interpreter.
It implements the following OTcl methods:
argc | Number of arguments in argv. |
argv | Array of strings which are the command parameters (Note that argv[0] is the name of the object). |
Reimplemented from UwMultiStackController.
Reimplemented in UwMultiStackControllerPhyMaster, and UwMultiStackControllerPhySlave.
Definition at line 76 of file uwmulti-stack-controller-phy.cc.
|
protectedvirtual |
This function is used to initialize the UwMultiStackControllerPhy debugging info.
Definition at line 69 of file uwmulti-stack-controller-phy.cc.
|
virtual |
It manages each packet reception, either from the upper and the lower layer.
p | pointer to the packet will be received |
idSrc | unique id of the module that has sent the packet |
Reimplemented in UwMultiStackControllerPhyMaster, and UwMultiStackControllerPhySlave.
Definition at line 196 of file uwmulti-stack-controller-phy.cc.
|
virtual |
Cross-Layer messages synchronous interpreter.
It has to be properly extended in order to interpret custom cross-layer messages used by this particular plug-in. This type of communication need to be directly answered in the message exchanged in order to be synchronous with the source.
m | an instance of ClMessage that represent the message received and used for the answer |
Reimplemented in UwMultiStackControllerPhyMaster, and UwMultiStackControllerPhySlave.
Definition at line 91 of file uwmulti-stack-controller-phy.cc.
|
protectedvirtual |
Called when a node is receiving correctely a packet from the lower layer.
It sets the state busy due to the reception.
id | the identifier of the lower layer |
Definition at line 165 of file uwmulti-stack-controller-phy.cc.
|
protectedvirtual |
Called when a node is transmitting a packet.
The state is set busy due to the transmitting operation.
p | pointer to the packet will be received |
Definition at line 180 of file uwmulti-stack-controller-phy.cc.
|
protectedvirtual |
Node is in Idle state.
It changes its state only when it has to manage a packet reception.
Definition at line 150 of file uwmulti-stack-controller-phy.cc.
|
protected |
Definition at line 108 of file uwmulti-stack-controller-phy.h.
|
protected |
current receiving PHY ID
Definition at line 99 of file uwmulti-stack-controller-phy.h.
|
staticprotected |
Definition at line 110 of file uwmulti-stack-controller-phy.h.