xrootd
Classes | 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.

Classes

struct  Info

Public Member Functions

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

Private Member Functions

void sendLocResp (XrdCmsRRQSlot *lP)
void sendLwtResp (XrdCmsRRQSlot *rP)
void sendRedResp (XrdCmsRRQSlot *rP)

Private Attributes

XrdSysMutex myMutex
XrdSysSemaphore isWaiting
XrdSysSemaphore isReady
XrdCmsRRQSlot Slot [numSlots]
XrdOucDLlist< XrdCmsRRQSlot > waitQ
XrdOucDLlist< XrdCmsRRQSlot > readyQ
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]
}; 
Info Stats
int luFast
int luSlow
int rdFast
int rdSlow
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 
)
int XrdCmsRRQ::Ready ( int  Snum,
const void *  Key,
SMask_t  mask1,
SMask_t  mask2 
)
void * XrdCmsRRQ::Respond ( )
void XrdCmsRRQ::sendLocResp ( XrdCmsRRQSlot *  lP)
private
void XrdCmsRRQ::sendLwtResp ( XrdCmsRRQSlot *  rP)
private
void XrdCmsRRQ::sendRedResp ( XrdCmsRRQSlot *  rP)
private
void XrdCmsRRQ::Statistics ( Info &  Data)
inline
void * XrdCmsRRQ::TimeOut ( )

Member Data Documentation

union { ... }
struct iovec XrdCmsRRQ::data_iov[iov_cnt]
private
char XrdCmsRRQ::databuff[XrdCms::CmsLocateRequest::RILen *STMax]
XrdCms::CmsResponse XrdCmsRRQ::dataResp
private
char XrdCmsRRQ::hostbuff[288]
const int XrdCmsRRQ::iov_cnt = 2
staticprivate
XrdSysSemaphore XrdCmsRRQ::isReady
private
XrdSysSemaphore XrdCmsRRQ::isWaiting
private
int XrdCmsRRQ::luFast
private
int XrdCmsRRQ::luSlow
private
unsigned int XrdCmsRRQ::myClock
private
XrdSysMutex XrdCmsRRQ::myMutex
private

Referenced by Statistics().

const int XrdCmsRRQ::numSlots = 1024
staticprivate
int XrdCmsRRQ::rdFast
private
int XrdCmsRRQ::rdSlow
private
XrdOucDLlist<XrdCmsRRQSlot> XrdCmsRRQ::readyQ
private
struct iovec XrdCmsRRQ::redr_iov[iov_cnt]
private
XrdCms::CmsResponse XrdCmsRRQ::redrResp
private
XrdCmsRRQSlot XrdCmsRRQ::Slot[numSlots]
private
Info XrdCmsRRQ::Stats
private

Referenced by Statistics().

int XrdCmsRRQ::Tdelay
private
int XrdCmsRRQ::Tslice
private
XrdOucDLlist<XrdCmsRRQSlot> XrdCmsRRQ::waitQ
private
XrdCms::CmsResponse XrdCmsRRQ::waitResp
private

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