ROOT logo
ROOT » PROOF » PROOF » TSlave

class TSlave: public TObject


TSlave

This class describes a PROOF slave server.
It contains information like the slaves host name, ordinal number,
performance index, socket, etc. Objects of this class can only be
created via TProof member functions.


Function Members (Methods)

public:
virtual~TSlave()
voidTObject::AbstractMethod(const char* method) const
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTObject::Clear(Option_t* = "")
virtual TObject*TObject::Clone(const char* newname = "") const
virtual voidClose(Option_t* opt = "")
virtual Int_tCompare(const TObject* obj) const
virtual voidTObject::Copy(TObject& object) const
virtual voidTObject::Delete(Option_t* option = "")MENU
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual voidTObject::Dump() constMENU
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
const char*GetArchCompiler() const
Long64_tGetBytesRead() const
Float_tGetCpuTime() const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
const char*GetGroup() const
virtual const char*TObject::GetIconName() const
const char*GetImage() const
TFileHandler*GetInputHandler() const
const char*GetMsd() const
virtual const char*GetName() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
const char*GetOrdinal() const
Int_tGetParallel() const
Int_tGetPerfIdx() const
Int_tGetPort() const
TProof*GetProof() const
const char*GetProofWorkDir() const
Int_tGetProtocol() const
Float_tGetRealTime() const
const char*GetROOTVersion() const
const char*GetSessionTag() const
Int_tGetSlaveType() const
TSocket*GetSocket() const
Int_tGetStatus() const
virtual const char*TObject::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
const char*GetUser() const
const char*GetWorkDir() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTObject::Hash() const
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
virtual voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tIsSortable() const
virtual Bool_tIsValid() const
Bool_tTObject::IsZombie() const
virtual voidTObject::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
virtual Bool_tTObject::Notify()
voidTObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const
static voidTObject::operator delete(void* ptr)
static voidTObject::operator delete(void* ptr, void* vp)
static voidTObject::operator delete[](void* ptr)
static voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidPrint(Option_t* option = "") const
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
voidTObject::ResetBit(UInt_t f)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(ostream& out, Option_t* option = "")
voidSetArchCompiler(const char* ac)
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
voidSetInputHandler(TFileHandler* ih)
virtual voidSetInterruptHandler(Bool_t)
static voidTObject::SetObjectStat(Bool_t stat)
voidSetROOTVersion(const char* rv)
voidSetSessionTag(const char* st)
static voidSetTXSlaveHook(TSlave_t xslavehook)
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual Int_tSetupServ(Int_t stype, const char* conffile)
virtual voidShowMembers(TMemberInspector& insp)
virtual voidStreamer(TBuffer& b)
voidStreamerNVirtual(TBuffer& b)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
virtual voidTouch()
virtual voidTObject::UseCurrentStyle()
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const
protected:
TSlave()
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
virtual voidFlushSocket()
voidInit(TSocket* s, Int_t stype)
virtual voidInterrupt(Int_t type)
voidTObject::MakeZombie()
virtual Int_tPing()
virtual TObjString*SendCoordinator(Int_t kind, const char* msg = 0, Int_t int2 = 0)
virtual Int_tSendGroupPriority(const char*, Int_t)
virtual voidSetAlias(const char* alias)
voidSetSocket(TSocket* s)
virtual voidSetStatus(Int_t st)
virtual voidStopProcess(Bool_t abort, Int_t timeout)
private:
TSlave(const TSlave& s)
TSlave(const char* host, const char* ord, Int_t perf, const char* image, TProof* proof, Int_t stype, const char* workdir, const char* msd)
static TSlave*Create(const char* url, const char* ord, Int_t perf, const char* image, TProof* proof, Int_t stype, const char* workdir, const char* msd)
voidInit(const char* host, Int_t port, Int_t stype)
Int_tOldAuthSetup(Bool_t master, TString wconf)
voidoperator=(const TSlave&)

Data Members

public:
enum ESlaveType { kMaster
kSlave
};
enum ESlaveStatus { kInvalid
kActive
kInactive
};
enum TObject::EStatusBits { kCanDelete
kMustCleanup
kObjInCanvas
kIsReferenced
kHasUUID
kCannotPick
kNoContextMenu
kInvalidObject
};
enum TObject::[unnamed] { kIsOnHeap
kNotDeleted
kZombie
kBitMask
kSingleKey
kOverwrite
kWriteDelete
};
protected:
TStringfArchCompBuild architecture, compiler on worker (e.g. linux-gcc345)
Long64_tfBytesReadbytes read by slave (info is obtained from slave)
Float_tfCpuTimeCPU time spent executing commands (info obtained from slave)
TStringfGroupslave's group id
TStringfImageslave's image name
TFileHandler*fInputinput handler related to this slave
TStringfMsdmass storage domain of slave
TStringfNameslave's hostname
TStringfOrdinalslave's ordinal number
Int_tfParallelnumber of active slaves
Int_tfPerfIdxrelative CPU performance index
Int_tfPortslave's port number
TProof*fProofproof cluster to which slave belongs
TStringfProofWorkDirbase proofserv working directory (info obtained from slave)
Int_tfProtocolslave's protocol level
TStringfROOTVersROOT version run by worker
Float_tfRealTimereal time spent executing commands (info obtained from slave)
TStringfSessionTagunique tag for ths worker process
TSlave::ESlaveTypefSlaveTypetype of slave (either kMaster or kSlave)
TSocket*fSocketsocket to slave
Int_tfStatusremote return status
TStringfUserslave's user id
TStringfWorkDirslave's working directory (info obtained from slave)
private:
static TSlave_tfgTXSlaveHook

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

TSlave(const char* host, const char* ord, Int_t perf, const char* image, TProof* proof, Int_t stype, const char* workdir, const char* msd)
 Create a PROOF slave object. Called via the TProof ctor.
TSlave()
 Default constructor used by derived classes
void Init(const char* host, Int_t port, Int_t stype)
 Init a PROOF slave object. Called via the TSlave ctor.
 The Init method is technology specific and is overwritten by derived
 classes.
Int_t SetupServ(Int_t stype, const char* conffile)
 Init a PROOF slave object. Called via the TSlave ctor.
 The Init method is technology specific and is overwritten by derived
 classes.
void Init(TSocket* s, Int_t stype)
 Init a PROOF slave object using the connection opened via s. Used to
 avoid double opening when an attempt via TXSlave found a remote proofd.
~TSlave()
 Destroy slave.
void Close(Option_t* opt = "")
 Close slave socket.
Int_t Compare(const TObject* obj) const
 Used to sort slaves by performance index.
void Print(Option_t* option = "") const
 Printf info about slave.
void SetInputHandler(TFileHandler* ih)
 Adopt and register input handler for this slave. Handler will be deleted
 by the slave.
Int_t OldAuthSetup(Bool_t master, TString wconf)
 Setup authentication related stuff for old versions.
 Provided for backward compatibility.
TSlave * Create(const char* url, const char* ord, Int_t perf, const char* image, TProof* proof, Int_t stype, const char* workdir, const char* msd)
 Static method returning the appropriate TSlave object for the remote
 server.
Int_t Ping()
 Ping the remote master or slave servers.
 Returns 0 if ok, -1 in case of error
void Interrupt(Int_t type)
 Send interrupt OOB byte to master or slave servers.
 Returns 0 if ok, -1 in case of error
void StopProcess(Bool_t abort, Int_t timeout)
 Sent stop/abort request to PROOF server.
TObjString * SendCoordinator(Int_t kind, const char* msg = 0, Int_t int2 = 0)
 Send message to intermediate coordinator. Only meaningful when there is one,
 i.e. in XPD framework
void SetAlias(const char* alias)
 Set an alias for this session. If reconnection is supported, the alias
 will be communicated to the remote coordinator so that it can be recovered
 when reconnecting
void SetTXSlaveHook(TSlave_t xslavehook)
 Set hook to TXSlave ctor
TSlave(const TSlave& s)
{ }
void operator=(const TSlave& )
{ }
void FlushSocket()
{ }
Int_t SendGroupPriority(const char* , Int_t )
{ return 0; }
void SetSocket(TSocket* s)
{ fSocket = s; }
void SetStatus(Int_t st)
{ fStatus = st; }
Bool_t IsSortable() const
{ return kTRUE; }
const char * GetName() const
{ return fName; }
const char * GetImage() const
{ return fImage; }
const char * GetProofWorkDir() const
{ return fProofWorkDir; }
const char * GetWorkDir() const
{ return fWorkDir; }
const char * GetUser() const
{ return fUser; }
const char * GetGroup() const
{ return fGroup; }
Int_t GetPort() const
{ return fPort; }
const char * GetOrdinal() const
{ return fOrdinal; }
Int_t GetPerfIdx() const
{ return fPerfIdx; }
Int_t GetProtocol() const
{ return fProtocol; }
TSocket * GetSocket() const
{ return fSocket; }
TProof * GetProof() const
{ return fProof; }
Long64_t GetBytesRead() const
{ return fBytesRead; }
Float_t GetRealTime() const
{ return fRealTime; }
Float_t GetCpuTime() const
{ return fCpuTime; }
Int_t GetSlaveType() const
{ return (Int_t)fSlaveType; }
Int_t GetStatus() const
{ return fStatus; }
Int_t GetParallel() const
{ return fParallel; }
const char * GetMsd() const
{ return fMsd; }
const char * GetSessionTag() const
{ return fSessionTag; }
TFileHandler * GetInputHandler() const
{ return fInput; }
const char * GetArchCompiler() const
{ return fArchComp; }
const char * GetROOTVersion() const
{ return fROOTVers; }
Bool_t IsValid() const
{ return fSocket ? kTRUE : kFALSE; }
void SetInterruptHandler(Bool_t )
{ }
void SetArchCompiler(const char* ac)
{ fArchComp = ac; }
void SetROOTVersion(const char* rv)
{ fROOTVers = rv; }
void SetSessionTag(const char* st)
{ fSessionTag = st; }
void Touch()
{ }