![]() |
XRootD
|
#include <XrdPoll.hh>
Classes | |
struct | PipeData |
union | PipeData.Parms |
struct | PipeData.Parms.Arg |
Public Member Functions | |
XrdPoll () | |
virtual | ~XrdPoll () |
virtual void | Disable (XrdPollInfo &pInfo, const char *etxt=0)=0 |
virtual int | Enable (XrdPollInfo &pInfo)=0 |
virtual void | Start (XrdSysSemaphore *syncp, int &rc)=0 |
Static Public Member Functions | |
static int | Attach (XrdPollInfo &pInfo) |
static void | Detach (XrdPollInfo &pInfo) |
static int | Finish (XrdPollInfo &pInfo, const char *etxt=0) |
static char * | Poll2Text (short events) |
static int | Setup (int numfd) |
static int | Stats (char *buff, int blen, int do_sync=0) |
Public Attributes | |
int | PID |
pthread_t | TID |
Static Public Attributes | |
static XrdPoll * | Pollers [XRD_NUMPOLLERS] = {0, 0, 0} |
Protected Member Functions | |
virtual void | Exclude (XrdPollInfo &pInfo)=0 |
int | getRequest () |
virtual int | Include (XrdPollInfo &pInfo)=0 |
Static Protected Member Functions | |
static XrdPoll * | newPoller (int pollid, int numfd) |
Protected Attributes | |
int | CmdFD |
int | numEnabled |
int | numEvents |
int | numInterrupts |
int | PipeBlen |
char * | PipeBuff |
struct pollfd | PipePoll |
XrdSysMutex | PollPipe |
PipeData | ReqBuff |
int | ReqFD |
Static Protected Attributes | |
static const char * | TraceID = "Poll" |
Definition at line 40 of file XrdPoll.hh.
union XrdPoll::PipeData.Parms |
Definition at line 119 of file XrdPoll.hh.
Class Members | ||
---|---|---|
struct PipeData.Parms.Arg | Arg | |
XrdSysSemaphore * | theSem |
struct XrdPoll::PipeData.Parms.Arg |
Definition at line 120 of file XrdPoll.hh.
Class Members | ||
---|---|---|
int | ent | |
int | fd |
XrdPoll::XrdPoll | ( | ) |
Definition at line 118 of file XrdPoll.cc.
References CmdFD, XrdGlobal::Log, numEnabled, numEvents, numInterrupts, PipeBlen, PipeBuff, PipePoll, ReqFD, and TID.
Referenced by Attach(), Detach(), Include(), newPoller(), and Stats().
|
inlinevirtual |
Definition at line 90 of file XrdPoll.hh.
|
static |
Definition at line 144 of file XrdPoll.cc.
References XrdPoll(), XrdPollInfo::FD, Include(), PID, XrdPollInfo::Poller, Pollers, TRACEI, and XRD_NUMPOLLERS.
Referenced by XrdLink::Activate().
|
static |
Definition at line 177 of file XrdPoll.cc.
References XrdPoll(), Exclude(), XrdPollInfo::FD, XrdLink::ID, XrdPollInfo::Link, XrdGlobal::Log, PID, XrdPollInfo::Poller, and TRACEI.
Referenced by XrdLinkXeq::Close().
|
pure virtual |
Implemented in XrdPollE, and XrdPollPoll.
Referenced by XrdLinkCtl::idleScan().
|
pure virtual |
Implemented in XrdPollE, and XrdPollPoll.
|
protectedpure virtual |
Implemented in XrdPollE, and XrdPollPoll.
Referenced by Detach().
|
static |
Definition at line 204 of file XrdPoll.cc.
References XrdPollInfo::FD, XrdLink::getProtocol(), XrdPollInfo::Link, XrdLink::setEtext(), XrdLink::setProtocol(), and TRACEI.
Referenced by XrdPollE::Disable(), XrdPollPoll::Disable(), XrdPollE::Start(), and XrdPollPoll::Start().
|
protected |
Definition at line 232 of file XrdPoll.cc.
References XrdGlobal::Log, PID, PipeBlen, PipeBuff, PipePoll, read, ReqBuff, ReqFD, and TRACE.
|
protectedpure virtual |
Implemented in XrdPollE, and XrdPollPoll.
References XrdPoll().
Referenced by Attach().
|
staticprotected |
Definition at line 45 of file XrdPollE.icc.
References XrdPoll(), close, XrdSysError::Emsg(), and fcntl().
Referenced by Setup().
|
static |
Definition at line 272 of file XrdPoll.cc.
Referenced by XrdLinkXeq::Peek(), XrdLinkXeq::Recv(), XrdLinkXeq::Recv(), XrdLinkXeq::RecvAll(), XrdPollPoll::Start(), and XrdLink::Wait4Data().
|
static |
Definition at line 291 of file XrdPoll.cc.
References XrdGlobal::Log, newPoller(), XrdPollArg::Poller, Pollers, XrdPollArg::retcode, XrdSysThread::Run(), TRACE, XRD_NUMPOLLERS, XrdStartPolling(), and XRDSYSTHREAD_BIND.
|
pure virtual |
Implemented in XrdPollE, and XrdPollPoll.
Referenced by XrdStartPolling().
|
static |
Definition at line 332 of file XrdPoll.cc.
References XrdPoll(), numEnabled, numEvents, numInterrupts, Pollers, and XRD_NUMPOLLERS.
|
protected |
Definition at line 117 of file XrdPoll.hh.
Referenced by XrdPoll(), XrdPollPoll::Disable(), XrdPollPoll::Enable(), and XrdPollPoll::Exclude().
|
protected |
Definition at line 132 of file XrdPoll.hh.
Referenced by XrdPoll(), XrdPollE::Enable(), and Stats().
|
protected |
Definition at line 133 of file XrdPoll.hh.
Referenced by XrdPoll(), XrdPollE::Start(), XrdPollPoll::Start(), and Stats().
|
protected |
Definition at line 134 of file XrdPoll.hh.
Referenced by XrdPoll(), XrdPollPoll::Start(), and Stats().
int XrdPoll::PID |
Definition at line 82 of file XrdPoll.hh.
Referenced by Attach(), Detach(), XrdPollE::Disable(), XrdPollPoll::Disable(), XrdPollE::Enable(), XrdPollPoll::Enable(), XrdPollPoll::Exclude(), and getRequest().
|
protected |
Definition at line 128 of file XrdPoll.hh.
Referenced by XrdPoll(), and getRequest().
|
protected |
Definition at line 127 of file XrdPoll.hh.
Referenced by XrdPoll(), and getRequest().
|
protected |
Definition at line 116 of file XrdPoll.hh.
Referenced by XrdPoll(), and getRequest().
|
static |
Definition at line 79 of file XrdPoll.hh.
|
protected |
Definition at line 115 of file XrdPoll.hh.
Referenced by XrdPollPoll::Disable(), XrdPollPoll::Enable(), and XrdPollPoll::Exclude().
|
protected |
Definition at line 126 of file XrdPoll.hh.
Referenced by getRequest().
|
protected |
Definition at line 118 of file XrdPoll.hh.
Referenced by XrdPoll(), getRequest(), and XrdPollPoll::Start().
pthread_t XrdPoll::TID |
Definition at line 83 of file XrdPoll.hh.
Referenced by XrdPoll().
|
staticprotected |
Definition at line 94 of file XrdPoll.hh.