#include <TXSlave.h>
Inheritance diagram for TXSlave:
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 () |
TObjString * | SendCoordinator (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 |
TSignalHandler * | fIntHandler |
Friends | |
class | TProof |
class | TXProofMgr |
Definition at line 36 of file TXSlave.h.
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] |
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().
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 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.
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().
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().
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().
friend class TXProofMgr [friend] |
Bool_t TXSlave::fValid [private] |
TSignalHandler* TXSlave::fIntHandler [private] |