#include <XrdOdcMsg.hh>

Public Member Functions | |
| int | ID () |
| void | Lock () |
| void | Recycle () |
| void | UnLock () |
| int | Wait4Reply (int wtime) |
| XrdOdcMsg () | |
| ~XrdOdcMsg () | |
Static Public Member Functions | |
| static XrdOdcMsg * | Alloc (XrdOucErrInfo *erp) |
| static int | Init () |
| static int | mapError (const char *ecode) |
| static int | Reply (int msgid, char *reply) |
Static Private Member Functions | |
| static XrdOdcMsg * | RemFromWaitQ (int msgid) |
Private Attributes | |
| XrdOdcMsg * | next |
| XrdSysCondVar | Hold |
| int | inwaitq |
| int | id |
| XrdOucErrInfo * | Resp |
Static Private Attributes | |
| static int | nextid = 0 |
| static XrdOdcMsg * | msgTab = 0 |
| static XrdOdcMsg * | nextfree = 0 |
| static XrdSysMutex | FreeMsgQ |
| XrdOdcMsg::~XrdOdcMsg | ( | ) | [inline] |
| XrdOdcMsg * XrdOdcMsg::Alloc | ( | XrdOucErrInfo * | erp | ) | [static] |
References FreeMsgQ, Hold, id, inwaitq, XrdSysCondVar::Lock(), XrdSysMutex::Lock(), next, nextfree, nextid, Resp, XrdSysMutex::UnLock(), and XRDODC_INCMASK.
Referenced by XrdOdcFinderRMT::send2Man().
| int XrdOdcMsg::ID | ( | ) | [inline] |
References id.
Referenced by XrdOdcFinderRMT::send2Man().
| int XrdOdcMsg::Init | ( | ) | [static] |
References id, msgTab, next, nextfree, nextid, and XRDODC_MAXMSGS.
Referenced by XrdOdcConfig::Configure().
| void XrdOdcMsg::Lock | ( | ) | [inline] |
References Hold, and XrdSysCondVar::Lock().
| int XrdOdcMsg::mapError | ( | const char * | ecode | ) | [static] |
Referenced by XrdOdcResp::Reply(), and Reply().
| void XrdOdcMsg::Recycle | ( | void | ) |
References FreeMsgQ, Hold, inwaitq, XrdSysMutex::Lock(), next, nextfree, Resp, XrdSysMutex::UnLock(), and XrdSysCondVar::UnLock().
Referenced by XrdOdcFinderRMT::send2Man().
| XrdOdcMsg * XrdOdcMsg::RemFromWaitQ | ( | int | msgid | ) | [static, private] |
References Hold, inwaitq, XrdSysCondVar::Lock(), msgTab, and XrdSysCondVar::UnLock().
Referenced by Reply().
| int XrdOdcMsg::Reply | ( | int | msgid, | |
| char * | reply | |||
| ) | [static] |
References DEBUG, EPNAME, Hold, mapError(), XrdOucEI::Max_Error_Len, RemFromWaitQ(), Resp, XrdOucErrInfo::setErrInfo(), XrdSysCondVar::Signal(), and XrdSysCondVar::UnLock().
Referenced by XrdOdcManager::Start().
| void XrdOdcMsg::UnLock | ( | ) | [inline] |
References Hold, and XrdSysCondVar::UnLock().
| int XrdOdcMsg::Wait4Reply | ( | int | wtime | ) | [inline] |
References Hold, and XrdSysCondVar::Wait().
Referenced by XrdOdcFinderRMT::send2Man().
XrdSysMutex XrdOdcMsg::FreeMsgQ [static, private] |
XrdSysCondVar XrdOdcMsg::Hold [private] |
Referenced by Alloc(), Lock(), Recycle(), RemFromWaitQ(), Reply(), UnLock(), and Wait4Reply().
int XrdOdcMsg::id [private] |
int XrdOdcMsg::inwaitq [private] |
Referenced by Alloc(), Recycle(), RemFromWaitQ(), and XrdOdcMsg().
XrdOdcMsg * XrdOdcMsg::msgTab = 0 [static, private] |
Referenced by Init(), and RemFromWaitQ().
XrdOdcMsg* XrdOdcMsg::next [private] |
Referenced by Alloc(), Init(), Recycle(), and XrdOdcMsg().
XrdOdcMsg * XrdOdcMsg::nextfree = 0 [static, private] |
int XrdOdcMsg::nextid = 0 [static, private] |
XrdOucErrInfo* XrdOdcMsg::Resp [private] |
Referenced by Alloc(), Recycle(), Reply(), and XrdOdcMsg().
1.7.1