xrootd
|
#include <XrdCmsClientMsg.hh>
Public Member Functions | |
int | getResult () |
int | ID () |
void | Lock () |
void | Recycle () |
void | UnLock () |
int | Wait4Reply (int wtime) |
XrdCmsClientMsg () | |
~XrdCmsClientMsg () | |
Static Public Member Functions | |
static XrdCmsClientMsg * | Alloc (XrdOucErrInfo *erp) |
static int | Init () |
static int | inQ () |
static int | Reply (const char *Man, XrdCms::CmsRRHdr &hdr, XrdNetBuffer *buff) |
Static Private Member Functions | |
static XrdCmsClientMsg * | RemFromWaitQ (int msgid) |
Private Attributes | |
XrdCmsClientMsg * | next |
XrdSysCondVar | Hold |
int | inwaitq |
int | id |
XrdOucErrInfo * | Resp |
int | Result |
Static Private Attributes | |
static const int | MidMask = 1023 |
static const int | MaxMsgs = 1024 |
static const int | MidIncr = 1024 |
static const int | IncMask = 0x3ffffc00 |
static int | nextid = 0 |
static int | numinQ = 0 |
static XrdCmsClientMsg * | msgTab = 0 |
static XrdCmsClientMsg * | nextfree = 0 |
static XrdSysMutex | FreeMsgQ |
XrdCmsClientMsg::~XrdCmsClientMsg | ( | ) | [inline] |
XrdCmsClientMsg * XrdCmsClientMsg::Alloc | ( | XrdOucErrInfo * | erp | ) | [static] |
References Hold, id, inwaitq, XrdSysCondVar::Lock(), Lock(), next, Resp, and UnLock().
Referenced by XrdCmsFinderRMT::send2Man().
int XrdCmsClientMsg::getResult | ( | ) | [inline] |
References Result.
Referenced by XrdCmsFinderRMT::send2Man().
int XrdCmsClientMsg::ID | ( | ) | [inline] |
References id.
Referenced by XrdCmsFinderRMT::send2Man().
int XrdCmsClientMsg::Init | ( | ) | [static] |
Referenced by XrdCmsClientConfig::Configure().
static int XrdCmsClientMsg::inQ | ( | ) | [inline, static] |
References numinQ.
Referenced by XrdCmsClientMan::whatsUp().
void XrdCmsClientMsg::Lock | ( | ) | [inline] |
References Hold, and XrdSysCondVar::Lock().
Referenced by Alloc().
void XrdCmsClientMsg::Recycle | ( | ) |
Referenced by XrdCmsFinderRMT::send2Man().
XrdCmsClientMsg * XrdCmsClientMsg::RemFromWaitQ | ( | int | msgid | ) | [static, private] |
References Hold, and XrdSysCondVar::Lock().
Referenced by Reply().
int XrdCmsClientMsg::Reply | ( | const char * | Man, |
XrdCms::CmsRRHdr & | hdr, | ||
XrdNetBuffer * | buff | ||
) | [static] |
References XrdNetBuffer::data, DEBUG, XrdCmsParser::Decode(), XrdNetBuffer::dlen, EPNAME, Hold, RemFromWaitQ(), Resp, Result, XrdSysCondVar::Signal(), XrdCms::CmsRRHdr::streamid, and XrdSysCondVar::UnLock().
Referenced by XrdCmsClientMan::Start().
void XrdCmsClientMsg::UnLock | ( | ) | [inline] |
References Hold, and XrdSysCondVar::UnLock().
Referenced by Alloc().
int XrdCmsClientMsg::Wait4Reply | ( | int | wtime | ) | [inline] |
References Hold, and XrdSysCondVar::Wait().
Referenced by XrdCmsFinderRMT::send2Man().
XrdSysMutex XrdCmsClientMsg::FreeMsgQ [static, private] |
XrdSysCondVar XrdCmsClientMsg::Hold [private] |
Referenced by Alloc(), Lock(), RemFromWaitQ(), Reply(), UnLock(), and Wait4Reply().
int XrdCmsClientMsg::id [private] |
const int XrdCmsClientMsg::IncMask = 0x3ffffc00 [static, private] |
int XrdCmsClientMsg::inwaitq [private] |
Referenced by Alloc(), and XrdCmsClientMsg().
const int XrdCmsClientMsg::MaxMsgs = 1024 [static, private] |
const int XrdCmsClientMsg::MidIncr = 1024 [static, private] |
const int XrdCmsClientMsg::MidMask = 1023 [static, private] |
XrdCmsClientMsg * XrdCmsClientMsg::msgTab = 0 [static, private] |
XrdCmsClientMsg* XrdCmsClientMsg::next [private] |
Referenced by Alloc(), Init(), and XrdCmsClientMsg().
XrdCmsClientMsg * XrdCmsClientMsg::nextfree = 0 [static, private] |
int XrdCmsClientMsg::nextid = 0 [static, private] |
int XrdCmsClientMsg::numinQ = 0 [static, private] |
Referenced by inQ().
XrdOucErrInfo* XrdCmsClientMsg::Resp [private] |
Referenced by Alloc(), Reply(), and XrdCmsClientMsg().
int XrdCmsClientMsg::Result [private] |
Referenced by getResult(), Reply(), and XrdCmsClientMsg().