xrootd
Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes
XrdCmsRRQ Class Reference

#include <XrdCmsRRQ.hh>

Collaboration diagram for XrdCmsRRQ:
Collaboration graph
[legend]

List of all members.

Public Member Functions

short Add (short Snum, XrdCmsRRQInfo *ip)
void Del (short Snum, const void *Key)
int Init (int Tint=0, int Tdly=0)
void Ready (int Snum, const void *Key, SMask_t mask1, SMask_t mask2)
void * Respond ()
void * TimeOut ()
 XrdCmsRRQ ()
 ~XrdCmsRRQ ()

Private Member Functions

void sendLocResp (XrdCmsRRQSlot *lP)
void sendResponse (XrdCmsRRQInfo *Info, int doredir, int totlen=0)

Private Attributes

XrdSysMutex myMutex
XrdSysSemaphore isWaiting
XrdSysSemaphore isReady
XrdCmsRRQSlot Slot [numSlots]
XrdOucDLlist< XrdCmsRRQSlotwaitQ
XrdOucDLlist< XrdCmsRRQSlotreadyQ
struct iovec data_iov [iov_cnt]
struct iovec redr_iov [iov_cnt]
XrdCms::CmsResponse dataResp
XrdCms::CmsResponse redrResp
XrdCms::CmsResponse waitResp
union {
   char   hostbuff [288]
   char   databuff [XrdCms::CmsLocateRequest::RILen *STMax]
}; 
int Tslice
int Tdelay
unsigned int myClock

Static Private Attributes

static const int numSlots = 1024
static const int iov_cnt = 2

Constructor & Destructor Documentation

XrdCmsRRQ::XrdCmsRRQ ( ) [inline]
XrdCmsRRQ::~XrdCmsRRQ ( ) [inline]

Member Function Documentation

short XrdCmsRRQ::Add ( short  Snum,
XrdCmsRRQInfo ip 
)
void XrdCmsRRQ::Del ( short  Snum,
const void *  Key 
)

Referenced by XrdCmsCache::Recycle().

int XrdCmsRRQ::Init ( int  Tint = 0,
int  Tdly = 0 
)
void XrdCmsRRQ::Ready ( int  Snum,
const void *  Key,
SMask_t  mask1,
SMask_t  mask2 
)
void * XrdCmsRRQ::Respond ( )
void XrdCmsRRQ::sendLocResp ( XrdCmsRRQSlot lP) [private]
void XrdCmsRRQ::sendResponse ( XrdCmsRRQInfo Info,
int  doredir,
int  totlen = 0 
) [private]
void * XrdCmsRRQ::TimeOut ( )

Member Data Documentation

union { ... } [private]
struct iovec XrdCmsRRQ::data_iov[iov_cnt] [private]
const int XrdCmsRRQ::iov_cnt = 2 [static, private]
unsigned int XrdCmsRRQ::myClock [private]
const int XrdCmsRRQ::numSlots = 1024 [static, private]
struct iovec XrdCmsRRQ::redr_iov[iov_cnt] [private]
int XrdCmsRRQ::Tdelay [private]
int XrdCmsRRQ::Tslice [private]

The documentation for this class was generated from the following files: