ns2 Network Simulator      C++ Class Hierarchy of version ns-snapshot-20040722
Home |  Source Code |  Manual |  FAQ |  Mailing List Archive |  Search |  Download | 


Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

MacTdma Class Reference

#include <mac-tdma.h>

Inheritance diagram for MacTdma:

Mac BiConnector NsObject TclObject Handler List of all members.

Public Member Functions

 MacTdma (PHY_MIB *p)
void recv (Packet *p, Handler *h)
int hdr_dst (char *hdr, int dst=-2)
int hdr_src (char *hdr, int src=-2)
int hdr_type (char *hdr, u_int16_t type=0)
void slotHandler (Event *e)
void recvHandler (Event *e)
void sendHandler (Event *e)

Protected Attributes

PHY_MIBphymib_
int slot_packet_len_
int max_node_num_

Private Member Functions

int command (int argc, const char *const *argv)
void re_schedule ()
void makePreamble ()
void radioSwitch (int i)
void sendUp (Packet *p)
void sendDown (Packet *p)
void recvDATA (Packet *p)
void send ()
int is_idle (void)
void trace_pkt (Packet *p)
void dump (char *fname)
void mac_log (Packet *p)
double TX_Time (Packet *p)
u_int16_t usec (double t)

Private Attributes

SlotTdmaTimer mhSlot_
TxPktTdmaTimer mhTxPkt_
RxPktTdmaTimer mhRxPkt_
MacState rx_state_
MacState tx_state_
int radio_active_
int tx_active_
NsObjectlogtarget_
int slot_num_
int slot_count_

Static Private Attributes

int max_slot_num_ = 0
double slot_time_ = 0
double start_time_ = 0
int active_node_ = 0
int * tdma_schedule_ = NULL
int * tdma_preamble_ = NULL
int tdma_ps_ = 0
int tdma_pr_ = 0

Friends

class SlotTdmaTimer
class TxPktTdmaTimer
class RxPktTdmaTimer

Constructor & Destructor Documentation

MacTdma::MacTdma PHY_MIB   p
 


Member Function Documentation

int MacTdma::command int    argc,
const char *const *    argv
[private, virtual]
 

Reimplemented from Mac.

void MacTdma::dump char *    fname [private]
 

int MacTdma::hdr_dst char *    hdr,
int    dst = -2
[inline, virtual]
 

Reimplemented from Mac.

int MacTdma::hdr_src char *    hdr,
int    src = -2
[inline, virtual]
 

Reimplemented from Mac.

int MacTdma::hdr_type char *    hdr,
u_int16_t    type = 0
[inline, virtual]
 

Reimplemented from Mac.

int MacTdma::is_idle void    [inline, private]
 

void MacTdma::mac_log Packet   p [inline, private]
 

Reimplemented from Mac.

void MacTdma::makePreamble   [private]
 

void MacTdma::radioSwitch int    i [private]
 

void MacTdma::re_schedule   [private]
 

void MacTdma::recv Packet   p,
Handler   h
[virtual]
 

Reimplemented from Mac.

void MacTdma::recvDATA Packet   p [private]
 

void MacTdma::recvHandler Event   e
 

void MacTdma::send   [private]
 

void MacTdma::sendDown Packet   p [private, virtual]
 

Reimplemented from Mac.

void MacTdma::sendHandler Event   e
 

void MacTdma::sendUp Packet   p [private, virtual]
 

Reimplemented from Mac.

void MacTdma::slotHandler Event   e
 

void MacTdma::trace_pkt Packet   p [private]
 

double MacTdma::TX_Time Packet   p [inline, private]
 

u_int16_t MacTdma::usec double    t [inline, private]
 


Friends And Related Function Documentation

friend class RxPktTdmaTimer [friend]
 

friend class SlotTdmaTimer [friend]
 

friend class TxPktTdmaTimer [friend]
 


Member Data Documentation

int MacTdma::active_node_ = 0 [static, private]
 

NsObject* MacTdma::logtarget_ [private]
 

Reimplemented from Mac.

int MacTdma::max_node_num_ [protected]
 

int MacTdma::max_slot_num_ = 0 [static, private]
 

RxPktTdmaTimer MacTdma::mhRxPkt_ [private]
 

SlotTdmaTimer MacTdma::mhSlot_ [private]
 

TxPktTdmaTimer MacTdma::mhTxPkt_ [private]
 

PHY_MIB* MacTdma::phymib_ [protected]
 

int MacTdma::radio_active_ [private]
 

MacState MacTdma::rx_state_ [private]
 

int MacTdma::slot_count_ [private]
 

int MacTdma::slot_num_ [private]
 

int MacTdma::slot_packet_len_ [protected]
 

double MacTdma::slot_time_ = 0 [static, private]
 

double MacTdma::start_time_ = 0 [static, private]
 

int MacTdma::tdma_pr_ = 0 [static, private]
 

int * MacTdma::tdma_preamble_ = NULL [static, private]
 

int MacTdma::tdma_ps_ = 0 [static, private]
 

int * MacTdma::tdma_schedule_ = NULL [static, private]
 

int MacTdma::tx_active_ [private]
 

MacState MacTdma::tx_state_ [private]
 


The documentation for this class was generated from the following files:
This document is generated by doxygen.