17 #include "TObjArray.h"
66 condarr =
new TObjArray(elements);
68 for(Int_t i = 0; i < elements; i++)
72 condarr =
new TObjArray(elements);
74 for(Int_t i = 0; i < elements; i++)
88 if(strcmp(type,
"TGo4WinCond")==0) {
89 condarr =
new TObjArray(elements);
91 for(Int_t i = 0; i < elements; i++)
94 if(strcmp(type,
"TGo4PolyCond")==0) {
95 condarr =
new TObjArray(elements);
97 for(Int_t i = 0; i < elements; i++)
129 Int_t ii =
condarr->GetLast()+1;
130 for(Int_t i = 0; i < ii; i++)
134 Bool_t result=cond->
Test(x,y);
142 if(conny) rev=conny->
Test(x,y);
153 Int_t ii =
condarr->GetLast()+1;
154 for(Int_t i = 0; i < ii; i++)
158 Bool_t result=cond->
Test(x);
166 if(conny) rev=conny->
Test(x);
175 Int_t ii =
condarr->GetLast()+1;
177 std::cout << GetName() <<
" has " << ii <<
" " << cond->ClassName() <<
" conditions" << std::endl;
178 for(Int_t i = 0; i < ii; i++) {
187 Int_t ii =
condarr->GetLast()+1;
188 std::cout <<
"-"<<ClassName()<<
" "<<GetName()<<
" Printout:" << std::endl;
190 for(Int_t i = 0; i < ii; i++)
193 TROOT::IndentLevel();
215 return cond->ClassName();
228 Int_t ii =
condarr->GetLast()+1;
230 for(Int_t i = 0; i < ii; i++)
239 if(conny) conny->
Enable();
248 Int_t ii =
condarr->GetLast()+1;
250 for(Int_t i = 0; i < ii; i++)
259 if(conny) conny->
Disable(result);
268 Int_t ii =
condarr->GetLast()+1;
270 for(Int_t i = 0; i < ii; i++)
279 if(conny) conny->
Invert(on);
288 Int_t ii =
condarr->GetLast()+1;
289 for(Int_t i = 0; i < ii; i++)
303 Bool_t* result, Bool_t* truevalue, Bool_t* falsevalue)
307 Int_t ii =
condarr->GetLast()+1;
308 for(Int_t i = 0; i < ii; i++)
311 cond->
GetFlags(enabled,lastresult,markreset, result, truevalue, falsevalue);
317 if(conny) conny->
GetFlags(enabled,lastresult,markreset, result, truevalue, falsevalue);
332 Int_t ii =
condarr->GetLast()+1;
333 for(Int_t i = 0; i < ii; i++)
356 if(conny) rev=conny->
Counts();
371 if(conny) rev=conny->
Counts();
386 if(conny) rev=conny->
GetXLow();
401 if(conny) rev=conny->
GetXUp();
416 if(conny) rev=conny->
GetYLow();
431 if(conny) rev=conny->
GetYUp();
443 Int_t ii =
condarr->GetLast()+1;
444 for(Int_t i = 0; i < ii; i++)
463 Int_t ii =
condarr->GetLast()+1;
464 for(Int_t i = 0; i < ii; i++)
473 if(conny) conny->
SetValues(low1,up1,low2,up2);
484 Int_t ii =
condarr->GetLast()+1;
485 for(Int_t i = 0; i < ii; i++)
505 if(cond->InheritsFrom(TGo4CondArray::Class()))
507 Int_t dii =
condarr->GetLast()+1;
514 for(Int_t i = 0; i < dii; i++){
517 result = result && ( dcond->
UpdateFrom(scond,counts));
537 Int_t ii =
condarr->GetLast()+1;
538 for(Int_t i = 0; i < ii; i++)
571 Int_t ii =
condarr->GetLast()+1;
572 for(Int_t i = 0; i < ii; i++)
605 Int_t ii =
condarr->GetLast()+1;
606 for(Int_t i = 0; i < ii; i++)
640 Int_t ii =
condarr->GetLast()+1;
641 for(Int_t i = 0; i < ii; i++)
672 Int_t ii =
condarr->GetLast()+1;
673 for(Int_t i = 0; i < ii; i++)
704 Int_t ii =
condarr->GetLast()+1;
705 for(Int_t i = 0; i < ii; i++)
736 Int_t ii =
condarr->GetLast()+1;
737 for(Int_t i = 0; i < ii; i++)
768 Int_t ii =
condarr->GetLast()+1;
769 for(Int_t i = 0; i < ii; i++)
800 Int_t ii =
condarr->GetLast()+1;
801 for(Int_t i = 0; i < ii; i++)
832 Int_t ii =
condarr->GetLast()+1;
833 for(Int_t i = 0; i < ii; i++)
864 Int_t ii =
condarr->GetLast()+1;
865 for(Int_t i = 0; i < ii; i++)
898 Int_t ii =
condarr->GetLast()+1;
899 for(Int_t i = 0; i < ii; i++)
919 Int_t ii =
condarr->GetLast()+1;
921 for(Int_t i = 0; i < ii; i++)
924 sum+=cond->
GetMean(histo,axis);
931 if(conny) rev=conny->
GetMean(histo,axis);
945 if(conny) rev=conny->
GetRMS(histo,axis);
987 if(conny) rev=conny->
GetXMax(histo);
1001 if(conny) rev=conny->
GetYMax(histo);
1011 Int_t ii =
condarr->GetLast()+1;
1012 for(Int_t i = 0; i < ii; i++)
1015 Double_t lmax=cond->
GetCMax(histo);
1016 if(lmax>rev) rev=lmax;
1022 if(conny) rev=conny->
GetCMax(histo);
1039 for(Int_t i = 0; i <=
condarr->GetLast(); i++) {
1048 for(Int_t i = 0; i <=
condarr->GetLast(); i++) {
1091 if (strstr(opt,
"sel=")==opt)
1092 selid = atoi(opt+4);
1095 bool selected = (selid<0) || (selid==i);
1105 if(painter==0)
return;
1106 if(painter->InheritsFrom(TGo4CondArrayPainter::Class()))
1113 TGo4Log::Warn(
"Could not set painter of class %s for TGo4CondArray %s",
1114 painter->ClassName(),GetName());
1127 Int_t size =
sizeof(*this);
1128 if (GetName()!=0) size+=strlen(GetName());
1129 if (GetTitle()!=0) size+=strlen(GetTitle());
1132 size+=
sizeof(*condarr) +
condarr->GetEntriesFast() *
sizeof(TObject*);
1147 TString extraargs = TString::Format(
", %d, \"%s\"",
GetNumber(),
GetType());
1148 TString varname =
MakeScript(out, Form(
"condarr%d", cnt++), opt, extraargs.Data());
1151 TString options = opt;
1152 const char* subname = strstr(opt,
"name:");
1153 if (subname!=0) options.Resize(subname - opt);
1156 TString subopt = options + TString::Format(
" nocreate name:%s->At(%d)", varname.Data(), n);
1157 At(n)->SavePrimitive(out, subopt.Data());
virtual Double_t GetRMS(TH1 *histo, Int_t axis=1)
virtual Bool_t IsXRMSDraw()
virtual Int_t TrueCounts()
virtual void MarkReset(Bool_t on)
virtual void SetIntDraw(Bool_t on)
virtual Bool_t IsVisible()
virtual Bool_t IsXMaxDraw()
virtual Bool_t IsLimitsDraw()
const char * GetType() const
virtual void SetIntDraw(Bool_t on)
virtual Double_t GetRMS(TH1 *, Int_t=1)
virtual Bool_t IsCMaxDraw()
virtual void SetYMaxDraw(Bool_t on)
virtual Bool_t IsXRMSDraw()
virtual Bool_t UpdateFrom(TGo4Condition *cond, Bool_t counts)
virtual void SetLimitsDraw(Bool_t on)
void PrintCondition(Bool_t points)
virtual Bool_t IsIntDraw()
virtual Double_t GetCurtosis(TH1 *, Int_t=1)
virtual Bool_t IsXMeanDraw()
virtual Int_t IsChanged()
virtual void SetCMaxDraw(Bool_t on)
virtual Bool_t IsPolygonType()
virtual Double_t GetYUp()
virtual void GetFlags(Bool_t *enabled, Bool_t *lastresult, Bool_t *markreset, Bool_t *result, Bool_t *truevalue, Bool_t *falsevalue)
virtual void SetYRMSDraw(Bool_t on)
virtual void SetXMaxDraw(Bool_t on)
virtual Double_t GetYMax(TH1 *histo)
virtual Bool_t IsLimitsDraw()
virtual void SetPainter(TGo4ConditionPainter *painter)
virtual void PrintCondition(Bool_t full=kTRUE)
static void Warn(const char *text,...)
virtual void SetYRMSDraw(Bool_t on)
virtual Double_t GetXMax(TH1 *histo)
virtual Bool_t IsVisible()
virtual Bool_t IsLabelDraw()
TGo4WinCond * Win(Int_t i)
static void CleanupSpecials()
virtual Double_t GetIntegral(TH1 *histo, Option_t *opt="")
virtual void SetXMeanDraw(Bool_t on)
virtual Double_t GetIntegral(TH1 *, Option_t *="")
virtual Double_t GetXLow()
virtual Bool_t UpdateFrom(TGo4Condition *cond, Bool_t counts)
virtual void ResetCounts()
virtual void Draw(Option_t *opt="")
virtual void SetVisible(Bool_t on)
virtual Bool_t IsIntDraw()
virtual Double_t GetSkewness(TH1 *, Int_t=1)
void SetPainted(Bool_t on)
virtual Double_t GetXLow()
virtual Bool_t IsArrayType()
virtual Bool_t IsYMaxDraw()
virtual void SetYMeanDraw(Bool_t on)
virtual void SavePrimitive(std::ostream &fs, Option_t *="")
virtual TGo4Condition * GetActiveCondition()
virtual void SetXMaxDraw(Bool_t on)
virtual Double_t GetMean(TH1 *histo, Int_t axis=1)
virtual Double_t GetCurtosis(TH1 *histo, Int_t axis=1)
virtual Int_t GetNumberOfConditions()
virtual void SetChanged(Bool_t on=kTRUE)
virtual void Invert(Bool_t on)
virtual void Disable(Bool_t result)
virtual Bool_t IsMultiEdit()
virtual Bool_t IsYMaxDraw()
virtual Double_t GetYLow()
virtual Bool_t IsXMeanDraw()
virtual Bool_t IsCMaxDraw()
virtual void Disable(Bool_t result)
virtual void SetCMaxDraw(Bool_t on)
virtual Bool_t IsXMaxDraw()
virtual void SetYMaxDraw(Bool_t on)
virtual void SetCondition(TGo4Condition *con)
virtual Double_t GetYLow()
virtual Bool_t IsYRMSDraw()
const char * MakeScript(std::ostream &out, const char *varname, Option_t *opt="", const char *arrextraargs=0)
virtual void SetXRMSDraw(Bool_t on)
virtual void SetLimitsDraw(Bool_t on)
virtual Bool_t IsYMeanDraw()
virtual void GetFlags(Bool_t *enabled, Bool_t *lastresult, Bool_t *markreset, Bool_t *result, Bool_t *truevalue, Bool_t *falsevalue)
virtual Double_t GetSkewness(TH1 *histo, Int_t axis=1)
virtual Bool_t IsYRMSDraw()
virtual Bool_t IsLabelDraw()
virtual void Draw(Option_t *opt="")
virtual void SetXMeanDraw(Bool_t on)
virtual TGo4ConditionPainter * CreatePainter()
TGo4PolyCond * Poly(Int_t i)
virtual void MarkReset(Bool_t on)
virtual void SetXRMSDraw(Bool_t on)
virtual void SetChanged(Bool_t on=kTRUE)
TGo4ConditionPainter * fxPainter
virtual Double_t GetMean(TH1 *, Int_t=1)
virtual Double_t GetYMax(TH1 *)
virtual Int_t GetMemorySize()
virtual Bool_t IsPolygonType()
TGo4Condition * At(Int_t i)
virtual void SetCurrentIndex(Int_t ix)
virtual void SetYMeanDraw(Bool_t on)
virtual Bool_t IsYMeanDraw()
virtual Double_t GetXUp()
virtual void SetLabelDraw(Bool_t on)
virtual Double_t GetCMax(TH1 *histo)
virtual Double_t GetXUp()
virtual void SetLabelDraw(Bool_t on)
virtual Int_t IsChanged()
TGo4Condition * operator[](Int_t i)
virtual void SetVisible(Bool_t on)
virtual void ResetCounts()
virtual Double_t GetCMax(TH1 *)
virtual void Invert(Bool_t on)
virtual Int_t GetMemorySize()
virtual Double_t GetYUp()
virtual Double_t GetXMax(TH1 *)
virtual Int_t GetCurrentIndex()