library: libProof
#include "TPacketizerProgressive.h"

TPacketizerProgressive


class description - header file - source file
viewCVS header - viewCVS source

class TPacketizerProgressive: public TVirtualPacketizer

Inheritance Inherited Members Includes Libraries
Class Charts

Function Members (Methods)

Display options:
Show inherited
Show non-public
 
    This is an abstract class, constructors will not be documented.
    Look at the header to check for available constructors.

public:
virtual~TPacketizerProgressive()
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 Int_tTObject::Compare(const TObject* obj) const
virtual voidTObject::Copy(TObject& object) const
virtual voidTObject::Delete(Option_t* option = "")
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() const
virtual TObject*TObject::DrawClone(Option_t* option = "") const
virtual voidTObject::Dump() const
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
virtual Long64_tTVirtualPacketizer::GetBytesRead() const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual Long64_tGetEntriesProcessed() const
virtual Long64_tGetEntriesProcessed(TSlave* s) const
virtual const char*TObject::GetIconName() const
virtual Float_tTVirtualPacketizer::GetInitTime() const
virtual const char*TObject::GetName() const
virtual TDSetElement*GetNextPacket(TSlave* s, TMessage* r)
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
virtual Float_tTVirtualPacketizer::GetProcTime() const
virtual const char*TObject::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
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() const
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_tTObject::IsSortable() const
Bool_tTVirtualPacketizer::IsValid() const
Bool_tTObject::IsZombie() const
virtual voidTObject::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
virtual Bool_tTObject::Notify()
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)
TObject&TObject::operator=(const TObject& rhs)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTObject::Print(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 = "") const
virtual voidTObject::SavePrimitive(ostream& out, Option_t* option = "")
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
virtual voidTObject::SetDrawOption(Option_t* option = "")
static voidTObject::SetDtorOnly(void* obj)
static voidTObject::SetObjectStat(Bool_t stat)
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector& insp, char* parent)
virtual voidTVirtualPacketizer::StopProcess(Bool_t abort)
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 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:
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
Long64_tTVirtualPacketizer::GetEntries(Bool_t tree, TDSetElement* e)
voidTObject::MakeZombie()
private:
TDSetElement*BuildPacket(TPacketizerProgressive::TSlaveStat* stat, Long64_t num)
TPacketizerProgressive::TFileStat*GetNextActive(TPacketizerProgressive::TSlaveStat* stat)
TPacketizerProgressive::TFileStat*GetNextUnAlloc(TPacketizerProgressive::TSlaveStat* stat)
virtual Bool_tHandleTimer(TTimer* timer)
voidInit()
voidRecalculatePacketSize(Long64_t newCount)

Data Members

public:
enum { kSlaveHostConnLim
kNonSlaveHostConnLim
kEntryListSize
};
enum TObject::EStatusBits { kCanDelete
kMustCleanup
kObjInCanvas
kIsReferenced
kHasUUID
kCannotPick
kNoContextMenu
kInvalidObject
};
enum TObject::[unnamed] { kIsOnHeap
kNotDeleted
kZombie
kBitMask
kSingleKey
kOverwrite
kWriteDelete
};
protected:
Bool_tTVirtualPacketizer::fValidConstructed properly?
Bool_tTVirtualPacketizer::fStopTermination of Process() requested?
private:
TDSet*fDset
TList*fSlaves
TList*fSlavesRemainingslaves stilll working
Long64_tfFirstEvent
Long64_tfTotalEvents
Long64_tfEntriesSeennumber of entries found so far
Long64_tfFilesOpenedtotal number of files with their entries recorded
Long64_tfEstTotalEntriesestimated total number of entries
Long64_tfEntriesProcessedtotal number of entries processed
TMap*fSlaveStatsmap of slave addresses to its TSlaveStat object
THashTable*fNewFileSlavesslaves that have just opened a new file and need to
TList*fUnAllocSlavesslave hosts that have unallocated files
TList*fUnAllocNonSlavesnon-slave hosts that have unallocated files
TList*fActiveSlavesslave hosts that have active files
TList*fActiveNonSlavesnon-slave hosts that have active files
TList*fLastEntrySizeslist of the last kEntryListSize TDSetElement sizes (in entries)
Long64_tfPacketSizecurrent packet size based on estimate of total number of entries
TTimer*fProgressprogress bar timer

Class Description

                                                                      
 TPacketizerProgressive                                               
                                                                      
 This class generates packets to be processed on PROOF slave servers. 
 A packet is an event range (begin entry and number of entries) or    
 object range (first object and number of objects) in a TTree         
 (entries) or a directory (objects) in a file.                        
 Packets are generated taking into account the performance of the     
 remote machine, the time it took to process a previous packet on     
 the remote machine, the locality of the database files, etc.         
 This packetizer does not pre-open the files to calculate the total   
 number of events, it just walks sequentially through the list of     
 files.                                                               
                                                                      

~TPacketizerProgressive()
 Destructor
void Init()
 Build slave -> slave stats map, available slave host list,
 and hash table of slave names.
Long64_t GetEntriesProcessed(TSlave* s)
 Get entries to be processed
TDSetElement * BuildPacket(TSlaveStat* stat, Long64_t size)
 Build a packet
 size - target size of the packet
 BUT the packet size may rise to (size * 2 - 1) !!
void RecalculatePacketSize(Long64_t newCount)
 Shrink fLastEntrySizes to (kEntryListSize - 1).
TDSetElement * GetNextPacket(TSlave *s, TMessage *r)
 Get next packet
Bool_t HandleTimer(TTimer *)
 Send progress message to client.
TFileStat * GetNextUnAlloc()
TFileStat * GetNextActive()
Long64_t GetEntriesProcessed()
{ return fProcessed; }

Author: Zev Benjamin 13/09/2005
Last update: root/proof:$Name: $:$Id: TPacketizerProgressive.cxx,v 1.7 2006/08/10 23:31:08 rdm Exp $
Copyright (C) 1995-2005, Rene Brun and Fons Rademakers. *


ROOT page - Class index - Class Hierarchy - Top of the page

This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.