TXSlave Class Reference

#include <TXSlave.h>

Inheritance diagram for TXSlave:

TSlave TXHandler TObject TObject List of all members.

Public Member Functions

 TXSlave (const char *url, const char *ord, Int_t perf, const char *image, TProof *proof, Int_t stype, const char *workdir, const char *msd)
virtual ~TXSlave ()
void Close (Option_t *opt="")
void DoError (int level, const char *location, const char *fmt, va_list va) const
Bool_t HandleError (const void *in=0)
Bool_t HandleInput (const void *in=0)
void SetInterruptHandler (Bool_t on=kTRUE)
Int_t SetupServ (Int_t stype, const char *conffile)
void Touch ()

Protected Member Functions

void FlushSocket ()
void Interrupt (Int_t type)
Int_t Ping ()
TObjStringSendCoordinator (Int_t kind, const char *msg=0, Int_t int2=0)
Int_t SendGroupPriority (const char *grp, Int_t priority)
void SetAlias (const char *alias)
void StopProcess (Bool_t abort, Int_t timeout)

Private Member Functions

void Init (const char *host, Int_t stype)

Static Private Member Functions

static Int_t GetProofdProtocol (TSocket *s)

Private Attributes

Bool_t fValid
TSignalHandlerfIntHandler

Friends

class TProof
class TXProofMgr

Detailed Description

Definition at line 36 of file TXSlave.h.


Constructor & Destructor Documentation

TXSlave::TXSlave ( const char *  url,
const char *  ord,
Int_t  perf,
const char *  image,
TProof proof,
Int_t  stype,
const char *  workdir,
const char *  msd 
)

Definition at line 101 of file TXSlave.cxx.

References TSystem::AddFileHandler(), TSlave::fImage, fIntHandler, TSlave::fMsd, TSlave::fOrdinal, TSlave::fPerfIdx, TSlave::fProof, TSlave::fProofWorkDir, TSlave::fSlaveType, fValid, TSlave::fWorkDir, TXSocketHandler::GetSocketHandler(), gSystem, Init(), TProof::IsMaster(), kFALSE, proof, and TXSocket::SetLocation().

TXSlave::~TXSlave (  )  [virtual]

Definition at line 336 of file TXSlave.cxx.

References Close().


Member Function Documentation

void TXSlave::Init ( const char *  host,
Int_t  stype 
) [private]

Definition at line 127 of file TXSlave.cxx.

References TProof::AddEnvVar(), TString::Data(), TProof::DelEnvVar(), env, TObject::Error(), TProof::fConfFile, TSlave::fGroup, TSlave::fName, TSlave::fOrdinal, Form(), TSlave::fPort, TSlave::fProof, TSlave::fProtocol, TProof::fServType, TProof::fSessionID, TSlave::fSocket, TProof::fUrl, TSlave::fUser, fValid, gDebug, TSystem::Getenv(), TProof::GetEnvVars(), TUrl::GetHostFQDN(), TROOT::GetListOfSockets(), TProof::GetLogLevel(), TProof::GetManager(), TNamed::GetName(), TUrl::GetOptions(), TUrl::GetPasswd(), TUrl::GetPort(), TUrl::GetProtocol(), TSocket::GetRemoteProtocol(), TProofMgr::GetRemoteProtocol(), TSystem::GetServiceByName(), TNamed::GetTitle(), TUrl::GetUrl(), gProofMutex, gROOT, gROOTMutex, gSystem, TObject::Info(), TProof::IsMaster(), TString::IsNull(), TSocket::IsValid(), kFALSE, TSlave::kMaster, kPROOF_Protocol, TSlave::kSlave, kTRUE, TProofMgr::kXProofd, TString::Length(), o, opts, PDB, XrdMonCtrCollector::port, R__ASSERT, R__LOCKGUARD2, TCollection::Remove(), SafeDelete, TProof::SetDataPoolUrl(), TUrl::SetPort(), TUrl::SetProtocol(), and TNamed::SetTitle().

Referenced by TXSlave().

Int_t TXSlave::GetProofdProtocol ( TSocket s  )  [static, private]

Definition at line 431 of file TXSlave.cxx.

References TObject::Error(), Form(), gDebug, TSocket::GetClientProtocol(), TObject::Info(), kROOTD_PROTOCOL, len, net2host(), and s.

void TXSlave::FlushSocket (  )  [protected, virtual]

Reimplemented from TSlave.

Definition at line 659 of file TXSlave.cxx.

References TXSocket::fgPipe, TXSockPipe::Flush(), TSlave::fSocket, gDebug, and TObject::Info().

Referenced by HandleInput().

void TXSlave::Interrupt ( Int_t  type  )  [protected, virtual]

Reimplemented from TSlave.

Definition at line 379 of file TXSlave.cxx.

References TMonitor::DeActivate(), TList::FindObject(), TSlave::fProof, TSlave::fSocket, gDebug, TMonitor::GetListOfActives(), TObject::Info(), TSlave::IsValid(), TProof::kLocalInterrupt, TSemaphore::Post(), R__LOCKGUARD, TSemaphore::TryWait(), and TObject::Warning().

Int_t TXSlave::Ping (  )  [protected, virtual]

Reimplemented from TSlave.

Definition at line 357 of file TXSlave.cxx.

References TSlave::fSocket, TSlave::GetOrdinal(), and TSlave::IsValid().

TObjString * TXSlave::SendCoordinator ( Int_t  kind,
const char *  msg = 0,
Int_t  int2 = 0 
) [protected, virtual]

Reimplemented from TSlave.

Definition at line 487 of file TXSlave.cxx.

References TSlave::fSocket.

Int_t TXSlave::SendGroupPriority ( const char *  grp,
Int_t  priority 
) [protected, virtual]

Reimplemented from TSlave.

Definition at line 511 of file TXSlave.cxx.

References TSlave::fSocket, TSlave::IsValid(), and kGroupProperties.

void TXSlave::SetAlias ( const char *  alias  )  [protected, virtual]

Reimplemented from TSlave.

Definition at line 496 of file TXSlave.cxx.

References TSlave::fSocket, TSlave::IsValid(), and kSessionAlias.

void TXSlave::StopProcess ( Bool_t  abort,
Int_t  timeout 
) [protected, virtual]

Reimplemented from TSlave.

Definition at line 419 of file TXSlave.cxx.

References TSlave::fSocket, gDebug, TObject::Info(), TSlave::IsValid(), and TXSocket::kStopProcess.

void TXSlave::Close ( Option_t opt = ""  )  [virtual]

Reimplemented from TSlave.

Definition at line 344 of file TXSlave.cxx.

References TSocket::Close(), TSlave::fInput, TSlave::fSocket, and SafeDelete.

Referenced by SetupServ(), and ~TXSlave().

void TXSlave::DoError ( int  level,
const char *  location,
const char *  fmt,
va_list  va 
) const [virtual]

Reimplemented from TObject.

Definition at line 67 of file TXSlave.cxx.

References ErrorHandler(), and Form().

Bool_t TXSlave::HandleError ( const void *  in = 0  )  [virtual]

Reimplemented from TXHandler.

Definition at line 526 of file TXSlave.cxx.

References TString::Data(), TProof::fIntHandler, TSlave::fName, XHandleErr_t::fOpt, TSlave::fOrdinal, Form(), TSlave::fProof, TSlave::fSocket, gDebug, TSlave::GetName(), TSlave::GetOrdinal(), TSlave::GetPort(), TProofServ::GetSocket(), gProofServ, TObject::Info(), TProof::IsMaster(), TSocket::IsValid(), kFALSE, kPROOF_FATAL, kPROOF_MESSAGE, kTRUE, m, Printf(), TSignalHandler::Remove(), TSocket::Send(), SetInterruptHandler(), and TObject::Warning().

Bool_t TXSlave::HandleInput ( const void *  in = 0  )  [virtual]

Reimplemented from TXHandler.

Definition at line 597 of file TXSlave.cxx.

References TProof::CollectInputFrom(), TProof::fCurrentMonitor, FlushSocket(), TSlave::fProof, TSlave::fSocket, gDebug, TSlave::GetOrdinal(), TObject::Info(), TMonitor::IsActive(), kFALSE, kTRUE, TMonitor::SetReady(), and TObject::Warning().

void TXSlave::SetInterruptHandler ( Bool_t  on = kTRUE  )  [virtual]

Reimplemented from TSlave.

Definition at line 641 of file TXSlave.cxx.

References TSignalHandler::Add(), fIntHandler, TSlave::fSocket, gDebug, TObject::Info(), and TSignalHandler::Remove().

Referenced by HandleError().

Int_t TXSlave::SetupServ ( Int_t  stype,
const char *  conffile 
) [virtual]

Reimplemented from TSlave.

Definition at line 293 of file TXSlave.cxx.

References buf, Close(), TObject::Error(), TSlave::fProof, TSlave::fProtocol, TProof::fProtocol, TSlave::fSocket, fValid, kFALSE, kMESS_NOTOK, kNoDelay, TSocket::Recv(), SafeDelete, TSocket::SetOption(), and what.

void TXSlave::Touch (  )  [virtual]

Reimplemented from TSlave.

Definition at line 368 of file TXSlave.cxx.

References TSlave::fSocket, and TSlave::IsValid().


Friends And Related Function Documentation

friend class TProof [friend]

Reimplemented from TSlave.

Definition at line 38 of file TXSlave.h.

friend class TXProofMgr [friend]

Definition at line 39 of file TXSlave.h.


Member Data Documentation

Bool_t TXSlave::fValid [private]

Definition at line 42 of file TXSlave.h.

Referenced by Init(), SetupServ(), and TXSlave().

TSignalHandler* TXSlave::fIntHandler [private]

Definition at line 43 of file TXSlave.h.

Referenced by SetInterruptHandler(), and TXSlave().


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