|
xrootd
|
#include <XrdPollDev.hh>


Public Member Functions | |
| void | Disable (XrdLink *lp, const char *etxt=0) |
| int | Enable (XrdLink *lp) |
| void | Start (XrdSysSemaphore *syncp, int &rc) |
| XrdPollDev (struct pollfd *ptab, int numfd, int pfd) | |
| ~XrdPollDev () | |
Protected Member Functions | |
| void | Exclude (XrdLink *lp) |
| int | Include (XrdLink *lp) |
Private Member Functions | |
| void | doRequests (int maxreq) |
| void | LogEvent (struct pollfd *pp) |
| int | sendCmd (char *cmdbuff, int cmdblen) |
Private Attributes | |
| struct pollfd * | PollTab |
| int | PollDfd |
| int | PollMax |
| XrdPollDev::XrdPollDev | ( | struct pollfd * | ptab, |
| int | numfd, | ||
| int | pfd | ||
| ) | [inline] |
| void XrdPollDev::Disable | ( | XrdLink * | lp, |
| const char * | etxt = 0 |
||
| ) | [virtual] |
Implements XrdPoll.
References XrdPoll::PipeData::Arg, XrdPoll::PipeData::DiFD, XrdSysError::Emsg(), XrdLink::FD, XrdPoll::Finish(), XrdLink::ID, XrdLink::isEnabled, XrdPoll::PipeData::Parms, XrdPoll::PID, XrdPoll::PipeData::Post, XrdPoll::PipeData::req, XrdScheduler::Schedule(), sendCmd(), XrdPoll::PipeData::theSem, TRACEI, and XrdSysSemaphore::Wait().
Referenced by Exclude().
| void XrdPollDev::doRequests | ( | int | maxreq | ) | [private] |
References XrdPoll::PipeData::Arg, XrdPoll::PipeData::DiFD, XrdSysError::Emsg(), XrdPoll::PipeData::EnFD, pollfd::events, pollfd::fd, XrdLink::fd2link(), XrdPoll::getRequest(), XrdLink::isEnabled, XrdPoll::numEnabled, XrdPoll::PipeData::Parms, XrdPoll::PID, PollDfd, POLLIN, POLLRDNORM, XrdSysSemaphore::Post(), XrdPoll::PipeData::Post, XrdPoll::PipeData::req, XrdPoll::ReqBuff, XrdPoll::PipeData::theSem, TRACE, and write().
Referenced by Start().
| int XrdPollDev::Enable | ( | XrdLink * | lp | ) | [virtual] |
Implements XrdPoll.
References XrdPoll::PipeData::Arg, XrdSysError::Emsg(), XrdPoll::PipeData::EnFD, XrdLink::FD, XrdLink::ID, XrdLink::isEnabled, XrdPoll::PipeData::Parms, XrdPoll::PipeData::req, and sendCmd().
| void XrdPollDev::Exclude | ( | XrdLink * | lp | ) | [protected, virtual] |
Implements XrdPoll.
References Disable(), XrdSysError::Emsg(), XrdLink::ID, and XrdLink::isEnabled.
| void XrdPollDev::LogEvent | ( | struct pollfd * | pp | ) | [private] |
References XrdSysError::Emsg(), pollfd::fd, and pollfd::revents.
Referenced by Start().
| int XrdPollDev::sendCmd | ( | char * | cmdbuff, |
| int | cmdblen | ||
| ) | [private] |
References XrdPoll::CmdFD, XrdSysMutex::Lock(), XrdPoll::PollPipe, XrdSysMutex::UnLock(), and write().
| void XrdPollDev::Start | ( | XrdSysSemaphore * | syncp, |
| int & | rc | ||
| ) | [virtual] |
Implements XrdPoll.
References doRequests(), XrdSysError::Emsg(), pollfd::events, pollfd::fd, XrdLink::fd2link(), XrdPoll::Finish(), XrdLink::ID, XrdLink::isEnabled, LogEvent(), XrdJob::NextJob, XrdPoll::numEvents, XrdPoll::Poll2Text(), PollDfd, POLLIN, PollMax, POLLRDNORM, PollTab, XrdSysSemaphore::Post(), XrdPoll::ReqFD, pollfd::revents, XrdScheduler::Schedule(), and write().
int XrdPollDev::PollDfd [private] |
Referenced by doRequests(), Start(), XrdPollDev(), and ~XrdPollDev().
int XrdPollDev::PollMax [private] |
Referenced by Start(), and XrdPollDev().
struct pollfd* XrdPollDev::PollTab [private] |
Referenced by Start(), XrdPollDev(), and ~XrdPollDev().
1.7.3