class <Mac/Multihop> MultihopMac : public Mac


Inheritance:


Public Methods

inline double backoffBase()
inline double backoffTime(double bt)
inline double backoffTime()
inline BackoffHandler* bh()
int checkInterfaces(int)
probe state of this and other MACs
inline int mode(int m)
inline int mode()
MultihopMac()
inline PollAckHandler* pah()
inline MultihopMac* peer()
inline MultihopMac* peer(MultihopMac *p)
inline PollEvent* pendingPE(PollEvent *pe)
inline PollEvent* pendingPE()
inline PollHandler* ph()
access poll handler
inline Packet* pkt()
inline PollNackHandler* pnh()
void poll(Packet *)
poll peer mac
inline double pollTxtime(int s)
inline MultihopMacHandler* mh() { return &mh_; }
inline PollTimeoutHandler* pth()
void recv(Packet *, Handler *)
call from higher layer (LL)
inline double rx_rx()
access rx_rx time
inline double rx_tx()
access rx_tx time
void schedulePoll(MultihopMac *)
schedule poll for later
void send(Packet*)
send data packet (assume POLLed) link
inline double tx_rx()
access tx_rx time

Protected Fields

double backoffBase_
double backoffTime_
BackoffHandler bh_
handler for exponential backoffs
int mode_
IDLE/SND/RCV
PollAckHandler pah_
handler for POLL_ACK events
MultihopMac* peer_
peer mac
PollEvent* pendingPollEvent_
pending in scheduler
PollHandler ph_
handler for POLL events
Packet* pkt_
packet stored for poll retries
PollNackHandler pnh_
handler for POLL_NACK events
PollTimeoutHandler pth_
handler for POLL_TIMEOUT events
double rx_rx_
recv-->recv
double rx_tx_
recv-->transmit
double tx_rx_
Turnaround times: transmit-->recv

Inherited from Mac:

Public Fields

Mac instvar mclass_

Public Methods

inline int addr()
inline double bandwidth()
Mac instproc classify-macs {peerinfo}
virtual inline int hdr_dst(char* hdr, int dst = -2)
virtual inline int hdr_src(char* hdr, int src = -2)
virtual inline int hdr_type(char *hdr, u_int16_t type = 0)
virtual void installTap(Tap *t)
virtual void resume(Packet* p = 0)
virtual void sendDown(Packet* p)
virtual void sendUp(Packet *p)
inline MacState state()
inline MacState state(int m)
inline double txtime(Packet* p)
inline double txtime(int bytes)

Protected Fields

double bandwidth_
Handler* callback_
Channel* channel_
double delay_
MacHandlerResume hRes_
MacHandlerSend hSend_
int index_
Event intr_
LL* ll_
Phy* netif_
int off_mac_
Packet* pktRx_
Packet* pktTx_
MacState state_
Tap* tap_

Protected Methods

int command(int argc, const char*const* argv)
virtual int initialized()

Private Fields

NsObject* logtarget_

Private Methods

void mac_log(Packet *p)

Inherited from BiConnector:

Public Methods

NsObject* downtarget()
virtual void drop(Packet* p)
inline NsObject* uptarget()

Protected Fields

NsObject* downtarget_
NsObject* drop_
NsObject* uptarget_

Protected Methods

virtual void drop(Packet* p, const char *s)

Inherited from NsObject:

Public Methods

virtual void debug(const char *fmt, ...)
virtual int delay_bind_dispatch(const char *varName, const char *localName, TclObject *tracer)
virtual void delay_bind_init_all()
int isdebug()

Protected Fields

int debug_
int off_cmn_
int off_flags_

Protected Methods

void handle(Event*)
virtual void reset()

Inherited from Handler:


Documentation

MultihopMac()

void send(Packet*)
send data packet (assume POLLed) link

void recv(Packet *, Handler *)
call from higher layer (LL)

void poll(Packet *)
poll peer mac

int checkInterfaces(int)
probe state of this and other MACs

void schedulePoll(MultihopMac *)
schedule poll for later

inline int mode()

inline int mode(int m)

inline MultihopMac* peer()

inline MultihopMac* peer(MultihopMac *p)

inline double tx_rx()
access tx_rx time

inline double rx_tx()
access rx_tx time

inline double rx_rx()
access rx_rx time

inline double backoffBase()

inline double backoffTime()

inline double backoffTime(double bt)

inline PollEvent* pendingPE()

inline PollEvent* pendingPE(PollEvent *pe)

inline Packet* pkt()

inline PollHandler* ph()
access poll handler

inline PollAckHandler* pah()

inline PollNackHandler* pnh()

inline PollTimeoutHandler* pth()

inline BackoffHandler* bh()

inline double pollTxtime(int s)
inline MultihopMacHandler* mh() { return &mh_; }

int mode_
IDLE/SND/RCV

MultihopMac* peer_
peer mac

double tx_rx_
Turnaround times: transmit-->recv

double rx_tx_
recv-->transmit

double rx_rx_
recv-->recv

double backoffTime_

double backoffBase_

PollEvent* pendingPollEvent_
pending in scheduler

Packet* pkt_
packet stored for poll retries

PollHandler ph_
handler for POLL events

PollAckHandler pah_
handler for POLL_ACK events

PollNackHandler pnh_
handler for POLL_NACK events

PollTimeoutHandler pth_
handler for POLL_TIMEOUT events

BackoffHandler bh_
handler for exponential backoffs


This class has no child classes.

alphabetic index hierarchy of classes


this page has been generated automatically by doc++

Adapted for the NS documentation page

(c)opyright by Malte Zöckler, Roland Wunderling
contact: doc++@zib.de