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  

imepAgent Class Reference

#include <imep.h>

Inheritance diagram for imepAgent:

Agent Connector NsObject TclObject Handler List of all members.

Public Member Functions

 imepAgent (nsaddr_t index)
void recv (Packet *p, Handler *h)
int command (int argc, const char *const *argv)
void imepRegister (rtAgent *rt)
void imepGetLinkStatus (nsaddr_t index, u_int32_t &status)
void imepSetLinkInStatus (nsaddr_t index)
void imepSetLinkOutStatus (nsaddr_t index)
void imepSetLinkBiStatus (nsaddr_t index)
void imepSetLinkDownStatus (nsaddr_t index)
void imepPacketUndeliverable (Packet *p)
void imepGetBiLinks (int *&nblist, int &nbcnt)
void trace (char *fmt,...)

Public Attributes

ImepStat stats

Protected Member Functions

void Terminate ()
void handlerTimer (imepTimerType t)

Private Member Functions

void handlerBeaconTimer (void)
void handlerControlTimer (void)
void handlerReXmitTimer (void)
void handlerIncomingTimer (void)
void recv_incoming (Packet *p)
void recv_outgoing (Packet *p)
void imep_beacon_input (Packet *p)
void imep_ack_input (Packet *p)
void imep_hello_input (Packet *p)
void imep_object_input (Packet *p)
void imep_object_process (Packet *p)
void imep_ack_object (Packet *p)
void imep_input (Packet *p)
void imep_output (Packet *p)
void sendBeacon (void)
void sendHello (nsaddr_t index)
void sendAck (nsaddr_t index, u_int32_t seqno)
imepLink * findLink (nsaddr_t index)
void purgeLink (void)
void purgeReXmitQ (nsaddr_t index)
Packet * findObjectSequence (u_int8_t seqno)
void removeObjectResponse (Packet *p, nsaddr_t index)
imep_ack_block * findAckBlock (Packet *p)
imep_hello_block * findHelloBlock (Packet *p)
imep_object_block * findObjectBlock (Packet *p)
imep_response * findResponseList (Packet *p)
void aggregateAckBlock (Packet *p)
void aggregateHelloBlock (Packet *p)
void aggregateObjectBlock (Packet *p)
void createResponseList (Packet *p)
int getResponseListSize ()
void scheduleReXmit (Packet *p)
void scheduleIncoming (Packet *p, u_int32_t s)
u_int8_t nextSequence ()
int initialized ()
void imep_dump_header (Packet *p)
void log_neighbor_list (void)
char * dumpResponseList (Packet *p)
void toraCreateHeader (Packet *p, char *dst, int length)
void toraExtractHeader (Packet *p, char *dst)
int toraHeaderLength (struct hdr_tora *t)
 LIST_HEAD (_dummy_imepLinkList, imepLink) imepLinkHead

Private Attributes

imepTimer beaconTimer
imepTimer controlTimer
imepTimer rexmitTimer
imepTimer incomingTimer
nsaddr_t ipaddr
u_int32_t controlSequence
NsObject * recvtarget_
NsObject * sendtarget_
rtAgent * rtagent_
Trace * logtarget_
PacketQueue ackQueue
PacketQueue helloQueue
PacketQueue objectQueue
ReXmitQ rexmitq
dstQueue incomingQ

Friends

class imepTimer

Constructor & Destructor Documentation

imepAgent::imepAgent (  nsaddr_t    index ) 
 


Member Function Documentation

void imepAgent::aggregateAckBlock (  Packet *    p )  [private]
 

void imepAgent::aggregateHelloBlock (  Packet *    p )  [private]
 

void imepAgent::aggregateObjectBlock (  Packet *    p )  [private]
 

int imepAgent::command (  int    argc,
const char *const *    argv
)  [virtual]
 

Reimplemented from Agent.

void imepAgent::createResponseList (  Packet *    p )  [private]
 

char * imepAgent::dumpResponseList (  Packet *    p )  [private]
 

imep_ack_block * imepAgent::findAckBlock (  Packet *    p )  [private]
 

imep_hello_block * imepAgent::findHelloBlock (  Packet *    p )  [private]
 

imepLink * imepAgent::findLink (  nsaddr_t    index )  [private]
 

imep_object_block * imepAgent::findObjectBlock (  Packet *    p )  [private]
 

Packet * imepAgent::findObjectSequence (  u_int8_t    seqno )  [private]
 

struct imep_response * imepAgent::findResponseList (  Packet *    p )  [private]
 

int imepAgent::getResponseListSize (    )  [private]
 

void imepAgent::handlerBeaconTimer (  void    )  [private]
 

void imepAgent::handlerControlTimer (  void    )  [private]
 

void imepAgent::handlerIncomingTimer (  void    )  [private]
 

void imepAgent::handlerReXmitTimer (  void    )  [private]
 

void imepAgent::handlerTimer (  imepTimerType    t )  [protected]
 

void imepAgent::imep_ack_input (  Packet *    p )  [private]
 

void imepAgent::imep_ack_object (  Packet *    p )  [private]
 

void imepAgent::imep_beacon_input (  Packet *    p )  [private]
 

void imepAgent::imep_dump_header (  Packet *    p )  [private]
 

void imepAgent::imep_hello_input (  Packet *    p )  [private]
 

void imepAgent::imep_input (  Packet *    p )  [private]
 

void imepAgent::imep_object_input (  Packet *    p )  [private]
 

void imepAgent::imep_object_process (  Packet *    p )  [private]
 

void imepAgent::imep_output (  Packet *    p )  [private]
 

void imepAgent::imepGetBiLinks (  int *&    nblist,
int &    nbcnt
) 
 

void imepAgent::imepGetLinkStatus (  nsaddr_t    index,
u_int32_t &    status
) 
 

void imepAgent::imepPacketUndeliverable (  Packet *    p ) 
 

void imepAgent::imepRegister (  rtAgent *    rt ) 
 

void imepAgent::imepSetLinkBiStatus (  nsaddr_t    index ) 
 

void imepAgent::imepSetLinkDownStatus (  nsaddr_t    index ) 
 

void imepAgent::imepSetLinkInStatus (  nsaddr_t    index ) 
 

void imepAgent::imepSetLinkOutStatus (  nsaddr_t    index ) 
 

int imepAgent::initialized (    )  [inline, private]
 

imepAgent::LIST_HEAD (  _dummy_imepLinkList   ,
imepLink   
)  [private]
 

void imepAgent::log_neighbor_list (  void    )  [private]
 

u_int8_t imepAgent::nextSequence (    )  [inline, private]
 

void imepAgent::purgeLink (  void    )  [private]
 

void imepAgent::purgeReXmitQ (  nsaddr_t    index )  [private]
 

void imepAgent::recv (  Packet *    p,
Handler *    h
)  [virtual]
 

Reimplemented from Agent.

void imepAgent::recv_incoming (  Packet *    p )  [private]
 

void imepAgent::recv_outgoing (  Packet *    p )  [private]
 

void imepAgent::removeObjectResponse (  Packet *    p,
nsaddr_t    index
)  [private]
 

void imepAgent::scheduleIncoming (  Packet *    p,
u_int32_t    s
)  [private]
 

void imepAgent::scheduleReXmit (  Packet *    p )  [private]
 

void imepAgent::sendAck (  nsaddr_t    index,
u_int32_t    seqno
)  [private]
 

void imepAgent::sendBeacon (  void    )  [private]
 

void imepAgent::sendHello (  nsaddr_t    index )  [private]
 

void imepAgent::Terminate (    )  [protected]
 

void imepAgent::toraCreateHeader (  Packet *    p,
char *    dst,
int    length
)  [private]
 

void imepAgent::toraExtractHeader (  Packet *    p,
char *    dst
)  [private]
 

int imepAgent::toraHeaderLength (  struct hdr_tora *    t )  [private]
 

void imepAgent::trace (  char *    fmt,
...   
) 
 


Friends And Related Function Documentation

friend class imepTimer [friend]
 


Member Data Documentation

PacketQueue imepAgent::ackQueue [private]
 

imepTimer imepAgent::beaconTimer [private]
 

u_int32_t imepAgent::controlSequence [private]
 

imepTimer imepAgent::controlTimer [private]
 

PacketQueue imepAgent::helloQueue [private]
 

dstQueue imepAgent::incomingQ [private]
 

imepTimer imepAgent::incomingTimer [private]
 

nsaddr_t imepAgent::ipaddr [private]
 

Trace* imepAgent::logtarget_ [private]
 

PacketQueue imepAgent::objectQueue [private]
 

NsObject* imepAgent::recvtarget_ [private]
 

ReXmitQ imepAgent::rexmitq [private]
 

imepTimer imepAgent::rexmitTimer [private]
 

rtAgent* imepAgent::rtagent_ [private]
 

NsObject* imepAgent::sendtarget_ [private]
 

ImepStat imepAgent::stats
 


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