XrdOucProg Class Reference

#include <XrdOucProg.hh>

List of all members.

Public Member Functions

 XrdOucProg (XrdSysError *errobj=0)
 ~XrdOucProg ()
int Feed (const char *data[], const int dlen[])
int Feed (const char *data, int dlen)
int Feed (const char *data)
XrdOucStreamgetStream ()
int Run (XrdOucStream *Sp, const char *arg1=0, const char *arg2=0, const char *arg3=0, const char *arg4=0)
int Run (const char *arg1=0, const char *arg2=0, const char *arg3=0, const char *arg4=0)
int Start (void)
int Setup (const char *prog, XrdSysError *errP=0)

Private Member Functions

int Restart ()

Private Attributes

XrdSysErroreDest
XrdOucStreammyStream
char * ArgBuff
char * Arg [64]
int numArgs
int lenArgs
int theEFD


Detailed Description

Definition at line 20 of file XrdOucProg.hh.


Constructor & Destructor Documentation

XrdOucProg::XrdOucProg ( XrdSysError errobj = 0  )  [inline]

Definition at line 28 of file XrdOucProg.hh.

References Arg, ArgBuff, eDest, myStream, numArgs, and theEFD.

XrdOucProg::~XrdOucProg (  ) 

Definition at line 36 of file XrdOucProg.cc.

References ArgBuff, free(), and myStream.


Member Function Documentation

int XrdOucProg::Feed ( const char *  data[],
const int  dlen[] 
)

Definition at line 46 of file XrdOucProg.cc.

References Arg, eDest, XrdOucStream::isAlive(), XrdOucStream::LastError(), XrdSysMutexHelper::Lock(), myStream, XrdOucStream::Put(), and Restart().

Referenced by Feed(), XrdOfsEvs::sendEvents(), XrdBwmLogger::sendEvents(), and XrdOssSys::Stage_QT().

int XrdOucProg::Feed ( const char *  data,
int  dlen 
) [inline]

Definition at line 41 of file XrdOucProg.hh.

References Feed().

int XrdOucProg::Feed ( const char *  data  )  [inline]

Definition at line 47 of file XrdOucProg.hh.

References Feed().

XrdOucStream* XrdOucProg::getStream (  )  [inline]

Definition at line 52 of file XrdOucProg.hh.

References myStream.

Referenced by XrdFrmPurge::Init().

int XrdOucProg::Run ( XrdOucStream Sp,
const char *  arg1 = 0,
const char *  arg2 = 0,
const char *  arg3 = 0,
const char *  arg4 = 0 
)

Definition at line 83 of file XrdOucProg.cc.

References Arg, ArgBuff, eDest, XrdSysError::Emsg(), XrdOucStream::Exec(), j, XrdOucStream::LastError(), lenArgs, numArgs, and theEFD.

Referenced by XrdXrootdJob2Do::DoIt(), XrdFrmTransfer::Fetch(), XrdOssSys::GetFile(), XrdOssSys::MSS_Xeq(), Restart(), Run(), Start(), and XrdFrmTransfer::Throw().

int XrdOucProg::Run ( const char *  arg1 = 0,
const char *  arg2 = 0,
const char *  arg3 = 0,
const char *  arg4 = 0 
)

Definition at line 131 of file XrdOucProg.cc.

References Arg, XrdOucStream::Drain(), eDest, XrdSysError::Emsg(), XrdOucStream::GetLine(), Run(), sprintf(), WEXITSTATUS, WIFEXITED, WIFSIGNALED, and WTERMSIG.

int XrdOucProg::Start ( void   ) 

Definition at line 225 of file XrdOucProg.cc.

References eDest, myStream, Run(), and theEFD.

Referenced by XrdOssSys::ConfigStageC(), XrdFrmPurge::Init(), XrdOfsEvs::Start(), and XrdBwmLogger::Start().

int XrdOucProg::Setup ( const char *  prog,
XrdSysError errP = 0 
)

Definition at line 177 of file XrdOucProg.cc.

References access, Arg, ArgBuff, eDest, XrdSysError::Emsg(), free(), j, lenArgs, numArgs, and X_OK.

Referenced by XrdFrmConfig::ConfigMss(), XrdOssSys::ConfigStage(), XrdOssSys::ConfigStageC(), XrdFrmPurge::Init(), XrdFrmTransfer::SetupCmd(), XrdOfsEvs::Start(), XrdBwmLogger::Start(), and XrdXrootdProtocol::xcksum().

int XrdOucProg::Restart (  )  [private]

Definition at line 246 of file XrdOucProg.cc.

References XrdOucStream::Close(), myStream, and Run().

Referenced by Feed().


Member Data Documentation

XrdSysError* XrdOucProg::eDest [private]

Definition at line 83 of file XrdOucProg.hh.

Referenced by Feed(), Run(), Setup(), Start(), and XrdOucProg().

XrdOucStream* XrdOucProg::myStream [private]

Definition at line 84 of file XrdOucProg.hh.

Referenced by Feed(), getStream(), Restart(), Start(), XrdOucProg(), and ~XrdOucProg().

char* XrdOucProg::ArgBuff [private]

Definition at line 85 of file XrdOucProg.hh.

Referenced by Run(), Setup(), XrdOucProg(), and ~XrdOucProg().

char* XrdOucProg::Arg[64] [private]

Definition at line 86 of file XrdOucProg.hh.

Referenced by Feed(), Run(), Setup(), and XrdOucProg().

int XrdOucProg::numArgs [private]

Definition at line 87 of file XrdOucProg.hh.

Referenced by Run(), Setup(), and XrdOucProg().

int XrdOucProg::lenArgs [private]

Definition at line 88 of file XrdOucProg.hh.

Referenced by Run(), and Setup().

int XrdOucProg::theEFD [private]

Definition at line 89 of file XrdOucProg.hh.

Referenced by Run(), Start(), and XrdOucProg().


The documentation for this class was generated from the following files:
Generated on Tue Jul 5 16:50:39 2011 for ROOT_528-00b_version by  doxygen 1.5.1