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);
152 Int_t ii =
condarr->GetLast()+1;
153 for(Int_t i = 0; i < ii; i++)
157 Bool_t result=cond->
Test(x);
165 if(conny) rev=conny->
Test(x);
174 Int_t ii =
condarr->GetLast()+1;
176 std::cout << GetName() <<
" has " << ii <<
" " << cond->ClassName() <<
" conditions" << std::endl;
177 for(Int_t i = 0; i < ii; i++)
186 Int_t ii =
condarr->GetLast()+1;
187 std::cout <<
"-"<<ClassName()<<
" "<<GetName()<<
" Printout:" << std::endl;
189 for(Int_t i = 0; i < ii; i++)
192 TROOT::IndentLevel();
213 return cond->ClassName();
226 Int_t ii =
condarr->GetLast()+1;
228 for(Int_t i = 0; i < ii; i++)
237 if(conny) conny->
Enable();
246 Int_t ii =
condarr->GetLast()+1;
248 for(Int_t i = 0; i < ii; i++)
257 if(conny) conny->
Disable(result);
266 Int_t ii =
condarr->GetLast()+1;
268 for(Int_t i = 0; i < ii; i++)
277 if(conny) conny->
Invert(on);
286 Int_t ii =
condarr->GetLast()+1;
287 for(Int_t i = 0; i < ii; i++)
301 Bool_t* result, Bool_t* truevalue, Bool_t* falsevalue)
305 Int_t ii =
condarr->GetLast()+1;
306 for(Int_t i = 0; i < ii; i++)
309 cond->
GetFlags(enabled,lastresult,markreset, result, truevalue, falsevalue);
315 if(conny) conny->
GetFlags(enabled,lastresult,markreset, result, truevalue, falsevalue);
330 Int_t ii =
condarr->GetLast()+1;
331 for(Int_t i = 0; i < ii; i++)
354 if(conny) rev=conny->
Counts();
369 if(conny) rev=conny->
Counts();
384 if(conny) rev=conny->
GetXLow();
399 if(conny) rev=conny->
GetXUp();
414 if(conny) rev=conny->
GetYLow();
429 if(conny) rev=conny->
GetYUp();
441 Int_t ii =
condarr->GetLast()+1;
442 for(Int_t i = 0; i < ii; i++)
461 Int_t ii =
condarr->GetLast()+1;
462 for(Int_t i = 0; i < ii; i++)
471 if(conny) conny->
SetValues(low1,up1,low2,up2);
482 Int_t ii =
condarr->GetLast()+1;
483 for(Int_t i = 0; i < ii; i++)
503 if(cond->InheritsFrom(TGo4CondArray::Class()))
505 Int_t dii =
condarr->GetLast()+1;
512 for(Int_t i = 0; i < dii; i++){
515 result = result && ( dcond->
UpdateFrom(scond,counts));
535 Int_t ii =
condarr->GetLast()+1;
536 for(Int_t i = 0; i < ii; i++)
569 Int_t ii =
condarr->GetLast()+1;
570 for(Int_t i = 0; i < ii; i++)
603 Int_t ii =
condarr->GetLast()+1;
604 for(Int_t i = 0; i < ii; i++)
638 Int_t ii =
condarr->GetLast()+1;
639 for(Int_t i = 0; i < ii; i++)
670 Int_t ii =
condarr->GetLast()+1;
671 for(Int_t i = 0; i < ii; i++)
702 Int_t ii =
condarr->GetLast()+1;
703 for(Int_t i = 0; i < ii; i++)
734 Int_t ii =
condarr->GetLast()+1;
735 for(Int_t i = 0; i < ii; i++)
766 Int_t ii =
condarr->GetLast()+1;
767 for(Int_t i = 0; i < ii; i++)
798 Int_t ii =
condarr->GetLast()+1;
799 for(Int_t i = 0; i < ii; i++)
830 Int_t ii =
condarr->GetLast()+1;
831 for(Int_t i = 0; i < ii; i++)
862 Int_t ii =
condarr->GetLast()+1;
863 for(Int_t i = 0; i < ii; i++)
896 Int_t ii =
condarr->GetLast()+1;
897 for(Int_t i = 0; i < ii; i++)
917 Int_t ii =
condarr->GetLast()+1;
919 for(Int_t i = 0; i < ii; i++)
922 sum+=cond->
GetMean(histo,axis);
929 if(conny) rev=conny->
GetMean(histo,axis);
943 if(conny) rev=conny->
GetRMS(histo,axis);
985 if(conny) rev=conny->
GetXMax(histo);
999 if(conny) rev=conny->
GetYMax(histo);
1009 Int_t ii =
condarr->GetLast()+1;
1010 for(Int_t i = 0; i < ii; i++)
1013 Double_t lmax=cond->
GetCMax(histo);
1014 if(lmax>rev) rev=lmax;
1020 if(conny) rev=conny->
GetCMax(histo);
1037 for(Int_t i = 0; i <=
condarr->GetLast(); i++) {
1046 for(Int_t i = 0; i <=
condarr->GetLast(); i++) {
1089 if (strstr(opt,
"sel=")==opt)
1090 selid = atoi(opt+4);
1093 bool selected = (selid<0) || (selid==i);
1103 if(painter==0)
return;
1104 if(painter->InheritsFrom(TGo4CondArrayPainter::Class()))
1111 TGo4Log::Warn(
"Could not set painter of class %s for TGo4CondArray %s",
1112 painter->ClassName(),GetName());
1125 Int_t size =
sizeof(*this);
1126 if (GetName()!=0) size+=strlen(GetName());
1127 if (GetTitle()!=0) size+=strlen(GetTitle());
1130 size+=
sizeof(*condarr) +
condarr->GetEntriesFast() *
sizeof(TObject*);
1145 TString extraargs = TString::Format(
", %d, \"%s\"",
GetNumber(),
GetType());
1146 TString varname =
MakeScript(out, Form(
"condarr%d", cnt++), opt, extraargs.Data());
1149 TString options = opt;
1150 const char* subname = strstr(opt,
"name:");
1151 if (subname!=0) options.Resize(subname - opt);
1154 TString subopt = options + TString::Format(
" nocreate name:%s->At(%d)", varname.Data(), n);
1155 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()