41 if (proof == 0) proof =
gProof;
45 Error(
"TStatsFeedback",
"no valid proof session found");
52 if (!(proof->
Connect(
"Feedback(TList*)",
"TStatsFeedback",
53 this,
"Feedback(TList*)"))) {
54 Error(
"TStatsFeedback",
"Connect() failed");
68 fProof->Disconnect(
"Feedback(TList*)",
this,
"Feedback(TList*");
81 TH1D *hevt = 0, *hpck = 0;
86 if (!strcmp(o->
GetName(),
"PROOF_EventsHist")) {
87 hevt =
dynamic_cast<TH1D *
>(o);
88 }
else if (!strcmp(o->
GetName(),
"PROOF_PacketsHist")) {
89 hpck =
dynamic_cast<TH1D *
>(o);
90 }
else if (!strcmp(o->
GetName(),
"PROOF_ProcPcktHist")) {
91 hass =
dynamic_cast<TH1I *
>(o);
93 if (hevt && hpck && hass)
break;
95 if (!hevt && !hpck && !hass) {
96 Warning(
"Feedback",
"none of the requested histograms has been found!");
106 if (
gROOT->GetListOfCanvases())
110 Int_t h = (nh == 3) ? 600 : 400;
114 Warning(
"Feedback",
"could not create canvas!");
117 PDB(kFeedback,2)
Info(
"Feedback",
"created canvas %s", cvnm.
Data());
122 PDB(kFeedback,2)
Info(
"Feedback",
"using canvas %s", cvnm.
Data());
150 gStyle->SetOptStat(optstat);
R__EXTERN TProof * gProof
R__EXTERN TStyle * gStyle
virtual void SetFillColor(Color_t fcolor)
Set the fill area color.
TObject * FindObject(const char *name) const override
Find an object in this collection using its name.
virtual Int_t GetSize() const
Return the capacity of the collection, i.e.
1-D histogram with a double per channel (see TH1 documentation)
1-D histogram with an int per channel (see TH1 documentation)
virtual void SetMaximum(Double_t maximum=-1111)
virtual TH1 * DrawCopy(Option_t *option="", const char *name_postfix="_copy") const
Copy this histogram and Draw in the current pad.
virtual const char * GetName() const
Returns name of object.
virtual void Warning(const char *method, const char *msgfmt,...) const
Issue warning message.
void SetBit(UInt_t f, Bool_t set)
Set or unset the user status bits as specified in f.
virtual void Error(const char *method, const char *msgfmt,...) const
Issue error message.
TObject()
TObject constructor.
@ kInvalidObject
if object ctor succeeded but object should not be used
virtual void Info(const char *method, const char *msgfmt,...) const
Issue info message.
This class controls a Parallel ROOT Facility, PROOF, cluster.
Bool_t Connect(const char *signal, const char *receiver_class, void *receiver, const char *slot)
Non-static method is used to connect from the signal of this object to the receiver slot.
Sequenceable collection abstract base class.
Utility class to display PROOF stats feedback histos during queries.
~TStatsFeedback() override
Destructor.
TStatsFeedback(TProof *proof=0)
Constructor.
void Feedback(TList *objs)
Display feedback.
const char * Data() const
static TString Format(const char *fmt,...)
Static method which formats a string using a printf style format descriptor and return a TString.
TVirtualPad is an abstract base class for the Pad and Canvas classes.
virtual TVirtualPad * cd(Int_t subpadnumber=0)=0
virtual TVirtualPad * GetPad(Int_t subpadnumber) const =0
virtual void Divide(Int_t nx=1, Int_t ny=1, Float_t xmargin=0.01, Float_t ymargin=0.01, Int_t color=0)=0
void CallRecursiveRemoveIfNeeded(TObject &obj)
call RecursiveRemove for obj if gROOT is valid and obj.TestBit(kMustCleanup) is true.