Main Page   Namespace List   Class Hierarchy   Data Structures   File List   Namespace Members   Data Fields   Globals   Related Pages  

bogotel::CMsgTransport Class Reference

#include <MsgTransport.h>

Collaboration diagram for bogotel::CMsgTransport:

Collaboration graph
[legend]

Public Member Functions

 CMsgTransport (CBgtRt *pBgtRt)
virtual ~CMsgTransport ()
int init ()
int sendMsg (CMsg *pMsg)

Static Public Member Functions

void do_thread_listen (void *param)
void do_thread_talk (void *param)
int openListenerSocket (struct sockaddr_in *pAddr, int *pFd, u_short usPort)

Private Member Functions

int openTalkerSocket ()
void runListener ()
void runTalker ()

Private Attributes

boost::thread * m_pthrdListener
boost::thread * m_pthrdTalker
boost::mutex m_mtxStartup
boost::condition m_condStartup
bool m_bListenerStarted
bool m_bStopTalker
bool m_bStopListener
boost::mutex m_mtxDeque
boost::mutex m_mtxAddedToQueue
boost::condition m_condEvent
u_short m_usMyPort
u_short m_usOppPort
std::string m_strOppIp
CBgtRtm_pBgtRt
DEQUE_STRING m_deqMsg
sockaddr_in m_addrListener
int m_fdListener
sockaddr_in m_addrTalker
int m_fdTalker

Constructor & Destructor Documentation

bogotel::CMsgTransport::CMsgTransport CBgtRt pBgtRt  ) 
 

Definition at line 27 of file MsgTransport.cpp.

bogotel::CMsgTransport::~CMsgTransport  )  [virtual]
 

Definition at line 38 of file MsgTransport.cpp.


Member Function Documentation

int bogotel::CMsgTransport::init  ) 
 

Definition at line 57 of file MsgTransport.cpp.

References bogotel::g_util, bogotel::CUtil::getInstanceNum(), bogotel::CProperties::getProperty(), bogotel::CUtil::log(), m_bListenerStarted, m_condStartup, m_mtxStartup, bogotel::CUtil::m_propIni, m_pthrdListener, m_strOppIp, m_usMyPort, m_usOppPort, bogotel::resultERROR, and bogotel::resultSUCCESS.

int bogotel::CMsgTransport::sendMsg CMsg pMsg  ) 
 

Definition at line 260 of file MsgTransport.cpp.

References bogotel::g_util, bogotel::CUtil::log(), m_condEvent, m_deqMsg, m_mtxDeque, MAXBUFLEN, bogotel::resultFUNC_BAD_PARAMETER, bogotel::resultSUCCESS, and bogotel::CMsg::toString().

Referenced by bogotel::CVoiceDev::sendMsg(), and bogotel::CSignalDev::sendMsg().

void bogotel::CMsgTransport::do_thread_listen void *  param  )  [static]
 

Definition at line 102 of file MsgTransport.cpp.

References bogotel::g_util, and bogotel::CUtil::log().

void bogotel::CMsgTransport::do_thread_talk void *  param  )  [static]
 

Definition at line 112 of file MsgTransport.cpp.

References bogotel::g_util, and bogotel::CUtil::log().

int bogotel::CMsgTransport::openListenerSocket struct sockaddr_in *  pAddr,
int *  pFd,
u_short  usPort
[static]
 

Definition at line 205 of file MsgTransport.cpp.

References bogotel::g_util, bogotel::CUtil::log(), bogotel::resultSOCKET_ERROR, bogotel::resultSOCKET_IN_USE, and bogotel::resultSUCCESS.

Referenced by runListener().

int bogotel::CMsgTransport::openTalkerSocket  )  [private]
 

Definition at line 235 of file MsgTransport.cpp.

References bogotel::g_util, bogotel::CUtil::log(), m_addrTalker, m_fdTalker, m_strOppIp, m_usOppPort, bogotel::resultSOCKET_ERROR, and bogotel::resultSUCCESS.

Referenced by runTalker().

void bogotel::CMsgTransport::runListener  )  [private]
 

Definition at line 170 of file MsgTransport.cpp.

References bogotel::g_util, bogotel::CBgtRt::incomingMsg(), bogotel::CMsg::init(), bogotel::CUtil::log(), m_addrListener, m_bListenerStarted, m_bStopListener, m_condStartup, m_fdListener, m_pBgtRt, m_usMyPort, MAXBUFLEN, openListenerSocket(), and bogotel::resultSUCCESS.

void bogotel::CMsgTransport::runTalker  )  [private]
 

Definition at line 122 of file MsgTransport.cpp.

References bogotel::g_util, bogotel::CUtil::log(), m_bStopTalker, m_condEvent, m_deqMsg, m_fdTalker, m_mtxAddedToQueue, m_mtxDeque, openTalkerSocket(), and bogotel::resultSUCCESS.


Field Documentation

boost::thread* bogotel::CMsgTransport::m_pthrdListener [private]
 

Definition at line 100 of file MsgTransport.h.

Referenced by init().

boost::thread* bogotel::CMsgTransport::m_pthrdTalker [private]
 

Definition at line 101 of file MsgTransport.h.

boost::mutex bogotel::CMsgTransport::m_mtxStartup [private]
 

Definition at line 103 of file MsgTransport.h.

Referenced by init().

boost::condition bogotel::CMsgTransport::m_condStartup [private]
 

Definition at line 104 of file MsgTransport.h.

Referenced by init(), and runListener().

bool bogotel::CMsgTransport::m_bListenerStarted [private]
 

Definition at line 105 of file MsgTransport.h.

Referenced by init(), and runListener().

bool bogotel::CMsgTransport::m_bStopTalker [private]
 

Definition at line 107 of file MsgTransport.h.

Referenced by runTalker().

bool bogotel::CMsgTransport::m_bStopListener [private]
 

Definition at line 108 of file MsgTransport.h.

Referenced by runListener().

boost::mutex bogotel::CMsgTransport::m_mtxDeque [private]
 

Definition at line 110 of file MsgTransport.h.

Referenced by runTalker(), and sendMsg().

boost::mutex bogotel::CMsgTransport::m_mtxAddedToQueue [private]
 

Definition at line 112 of file MsgTransport.h.

Referenced by runTalker().

boost::condition bogotel::CMsgTransport::m_condEvent [private]
 

Definition at line 113 of file MsgTransport.h.

Referenced by runTalker(), and sendMsg().

u_short bogotel::CMsgTransport::m_usMyPort [private]
 

Definition at line 115 of file MsgTransport.h.

Referenced by init(), and runListener().

u_short bogotel::CMsgTransport::m_usOppPort [private]
 

Definition at line 116 of file MsgTransport.h.

Referenced by init(), and openTalkerSocket().

std::string bogotel::CMsgTransport::m_strOppIp [private]
 

Definition at line 117 of file MsgTransport.h.

Referenced by init(), and openTalkerSocket().

CBgtRt* bogotel::CMsgTransport::m_pBgtRt [private]
 

Definition at line 118 of file MsgTransport.h.

Referenced by runListener().

DEQUE_STRING bogotel::CMsgTransport::m_deqMsg [private]
 

Definition at line 119 of file MsgTransport.h.

Referenced by runTalker(), and sendMsg().

struct sockaddr_in bogotel::CMsgTransport::m_addrListener [private]
 

Definition at line 121 of file MsgTransport.h.

Referenced by runListener().

int bogotel::CMsgTransport::m_fdListener [private]
 

Definition at line 122 of file MsgTransport.h.

Referenced by runListener().

struct sockaddr_in bogotel::CMsgTransport::m_addrTalker [private]
 

Definition at line 124 of file MsgTransport.h.

Referenced by openTalkerSocket().

int bogotel::CMsgTransport::m_fdTalker [private]
 

Definition at line 125 of file MsgTransport.h.

Referenced by openTalkerSocket(), and runTalker().


The documentation for this class was generated from the following files:
Generated on Tue Aug 12 12:42:22 2003 for bogotel by doxygen 1.3. Hosted by SourceForge.net Logo