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++)
127 Int_t ii =
condarr->GetLast() + 1;
128 for (Int_t i = 0; i < ii; i++) {
131 Bool_t result = cond->
Test(x, y);
139 rev = conny->
Test(x, y);
149 Int_t ii =
condarr->GetLast() + 1;
150 for (Int_t i = 0; i < ii; i++) {
153 Bool_t result = cond->
Test(x);
161 rev = conny->
Test(x);
170 Int_t ii =
condarr->GetLast()+1;
172 std::cout << GetName() <<
" has " << ii <<
" " << cond->ClassName() <<
" conditions" << std::endl;
173 for(Int_t i = 0; i < ii; i++) {
182 Int_t ii =
condarr->GetLast()+1;
183 std::cout <<
"-"<<ClassName()<<
" "<<GetName()<<
" Printout:" << std::endl;
185 for(Int_t i = 0; i < ii; i++)
188 TROOT::IndentLevel();
210 return cond->ClassName();
223 Int_t ii =
condarr->GetLast() + 1;
224 for (Int_t i = 0; i < ii; i++) {
239 Int_t ii =
condarr->GetLast() + 1;
240 for (Int_t i = 0; i < ii; i++) {
255 Int_t ii =
condarr->GetLast() + 1;
256 for (Int_t i = 0; i < ii; i++) {
271 Int_t ii =
condarr->GetLast() + 1;
272 for (Int_t i = 0; i < ii; i++) {
287 Int_t ii =
condarr->GetLast() + 1;
288 for (Int_t i = 0; i < ii; i++) {
290 cond->
GetFlags(enabled, lastresult, markreset, result, truevalue, falsevalue);
295 conny->
GetFlags(enabled, lastresult, markreset, result, truevalue, falsevalue);
304 Int_t ii =
condarr->GetLast() + 1;
305 for (Int_t i = 0; i < ii; i++) {
399 Int_t ii =
condarr->GetLast() + 1;
400 for (Int_t i = 0; i < ii; i++) {
416 Int_t ii =
condarr->GetLast() + 1;
417 for (Int_t i = 0; i < ii; i++) {
434 Int_t ii =
condarr->GetLast() + 1;
435 for (Int_t i = 0; i < ii; i++) {
454 if (cond->InheritsFrom(TGo4CondArray::Class())) {
455 Int_t dii =
condarr->GetLast() + 1;
458 Bool_t result = kTRUE;
461 for (Int_t i = 0; i < dii; i++) {
464 result = result && (dcond->
UpdateFrom(scond, counts));
480 Int_t ii =
condarr->GetLast() + 1;
481 for (Int_t i = 0; i < ii; i++) {
511 Int_t ii =
condarr->GetLast() + 1;
512 for (Int_t i = 0; i < ii; i++) {
542 Int_t ii =
condarr->GetLast() + 1;
543 for (Int_t i = 0; i < ii; i++) {
573 Int_t ii =
condarr->GetLast() + 1;
574 for (Int_t i = 0; i < ii; i++) {
604 Int_t ii =
condarr->GetLast() + 1;
605 for (Int_t i = 0; i < ii; i++) {
635 Int_t ii =
condarr->GetLast() + 1;
636 for (Int_t i = 0; i < ii; i++) {
666 Int_t ii =
condarr->GetLast() + 1;
667 for (Int_t i = 0; i < ii; i++) {
697 Int_t ii =
condarr->GetLast() + 1;
698 for (Int_t i = 0; i < ii; i++) {
728 Int_t ii =
condarr->GetLast() + 1;
729 for (Int_t i = 0; i < ii; i++) {
759 Int_t ii =
condarr->GetLast() + 1;
760 for (Int_t i = 0; i < ii; i++) {
790 Int_t ii =
condarr->GetLast() + 1;
791 for (Int_t i = 0; i < ii; i++) {
822 Int_t ii =
condarr->GetLast() + 1;
823 for (Int_t i = 0; i < ii; i++) {
841 Int_t ii =
condarr->GetLast() + 1;
843 for (Int_t i = 0; i < ii; i++) {
845 sum += cond->
GetMean(histo, axis);
851 rev = conny->
GetMean(histo, axis);
865 rev = conny->
GetRMS(histo, axis);
932 Int_t ii =
condarr->GetLast() + 1;
933 for (Int_t i = 0; i < ii; i++) {
935 Double_t lmax = cond->
GetCMax(histo);
959 for (Int_t i = 0; i <=
condarr->GetLast(); i++) {
969 for (Int_t i = 0; i <=
condarr->GetLast(); i++) {
1011 if (strstr(opt,
"sel=") == opt)
1012 selid = atoi(opt + 4);
1013 for (Int_t i = 0; i <
GetNumber(); ++i) {
1015 bool selected = (selid < 0) || (selid == i);
1026 if (painter->InheritsFrom(TGo4CondArrayPainter::Class())) {
1031 TGo4Log::Warn(
"Could not set painter of class %s for TGo4CondArray %s", painter->ClassName(), GetName());
1039 painter->SetCondition(
this);
1046 Int_t size =
sizeof(*this);
1048 size += strlen(GetName());
1050 size += strlen(GetTitle());
1053 size +=
sizeof(*condarr) +
condarr->GetEntriesFast() *
sizeof(TObject *);
1068 TString extraargs = TString::Format(
", %d, \"%s\"",
GetNumber(),
GetType());
1069 TString varname =
MakeScript(out, TString::Format(
"condarr%d", cnt++).Data(), opt, extraargs.Data());
1072 TString options = opt;
1073 const char *subname = strstr(opt,
"name:");
1075 options.Resize(subname - opt);
1078 TString subopt = options + TString::Format(
" nocreate name:%s->At(%d)", varname.Data(), n);
1079 At(n)->SavePrimitive(out, subopt.Data());
Bool_t IsXMaxDraw() const override
Int_t GetNumberOfConditions() const override
for condition aggregates: return total number of conditions, i.e.size of condition array
Double_t GetIntegral(TH1 *histo, Option_t *opt="") override
Calculate value for histogram inside condition limits.
Bool_t IsYRMSDraw() const override
Double_t GetYLow() const override
Double_t GetMean(TH1 *histo, Int_t axis=1) override
Calculate value for histogram inside condition limits.
TGo4ConditionPainter * CreatePainter() override
Factory method to generate the subclass implementation for painter.
Int_t GetNumber() const
Returns number of conditions in array.
void SetXMaxDraw(Bool_t on) override
Int_t GetMemorySize() const override
void SavePrimitive(std::ostream &fs, Option_t *opt="") override
Standard way to store parameter in form of macro.
void SetXMeanDraw(Bool_t on) override
Double_t GetCurtosis(TH1 *histo, Int_t axis=1) override
Calculate value for histogram inside condition limits.
void SetYMeanDraw(Bool_t on) override
Double_t GetRMS(TH1 *histo, Int_t axis=1) override
Calculate value for histogram inside condition limits.
void GetFlags(Bool_t *enabled, Bool_t *lastresult, Bool_t *markreset, Bool_t *result, Bool_t *truevalue, Bool_t *falsevalue) override
Sets values of internal boolean flags to external variables.
Double_t GetYUp() const override
Int_t fiNumCond
Number of conditions in array.
Bool_t UpdateFrom(TGo4Condition *cond, Bool_t counts) override
Copy values from cond to this.
void Enable() override
Calls Enable for all conditions (multi edit mode) or for currently selected (single edit mode)
Bool_t IsYMeanDraw() const override
TGo4WinCond * Win(Int_t i) const
Returns window condition object i from object array.
void PrintCondition(Bool_t points) override
Noop.
Bool_t IsIntDraw() const override
void Invert(Bool_t on) override
Calls Invert for all conditions (multi edit mode) or for currently selected (single edit mode)
Bool_t IsXRMSDraw() const override
void SetPainter(TGo4ConditionPainter *painter) override
Replace default painter of this condition by external one.
virtual void SetValues()
Noop.
Bool_t IsPolygonType() const override
Double_t GetXMax(TH1 *histo) override
Calculate value for histogram inside condition limits.
TObjArray * condarr
The object array of conditions.
const TGo4Condition * GetActiveCondition() const override
Access to the currently selected condition.
Bool_t IsXMeanDraw() const override
void SetLabelDraw(Bool_t on) override
TGo4Condition * operator[](Int_t i) const
Returns condition object i from object array.
void SetVisible(Bool_t on) override
we overwrite single condition visibility setter
TGo4PolyCond * Poly(Int_t i) const
Returns polygon condition object i from object array.
Int_t fiType
Condition type ID (kGO4CONDWINDOW or kGO4CONDPOLYGON)
Double_t GetYMax(TH1 *histo) override
Calculate value for histogram inside condition limits.
void SetCMaxDraw(Bool_t on) override
Int_t GetCurrentIndex() const override
get index for array type subclasses
Bool_t IsVisible() const override
we overwrite single condition visibility getter
Int_t TrueCounts() override
Return number of true results of the Test method call.
virtual Bool_t Test()
Test if condition is true.
Double_t GetXUp() const override
void MarkReset(Bool_t on) override
defines if condition counters shall be reset in UpdateFrom method
void Draw(Option_t *opt="") override
Reimplement Draw to set painted flag for all array conditions.
Bool_t IsCMaxDraw() const override
Int_t IsChanged() const override
we overwrite single condition changed property
Int_t Counts() override
Return number of calls of the Test method.
void SetChanged(Bool_t on=kTRUE) override
we overwrite single condition changed property
Bool_t IsLabelDraw() const override
void PrintBar() override
Prints counters and bar.
void SetYMaxDraw(Bool_t on) override
Bool_t IsYMaxDraw() const override
Bool_t IsLimitsDraw() const override
Double_t GetXLow() const override
TGo4Condition * At(Int_t i) const
Returns condition object i from object array.
void Disable(Bool_t result) override
Calls Disable for all conditions (multi edit mode) or for currently selected (single edit mode)
void SetXRMSDraw(Bool_t on) override
Double_t GetCMax(TH1 *histo) override
Calculate value for histogram inside condition limits.
Int_t fiSelectedCond
Index of selected condition.
void SetYRMSDraw(Bool_t on) override
void SetCurrentIndex(Int_t ix) override
set index for array type subclasses
Double_t GetSkewness(TH1 *histo, Int_t axis=1) override
Calculate value for histogram inside condition limits.
void ResetCounts() override
Calls ResetCounts for all conditions (multi edit mode) or for currently selected (single edit mode)
const char * GetType() const
Returns class name of conditions.
void SetIntDraw(Bool_t on) override
void SetLimitsDraw(Bool_t on) override
virtual Bool_t IsYMaxDraw() const
virtual Double_t GetXUp() const
virtual void SetYMeanDraw(Bool_t on)
void SetPainted(Bool_t on)
virtual Bool_t IsXMaxDraw() const
virtual Double_t GetCurtosis(TH1 *, Int_t=1)
Calculate value for histogram inside condition limits.
virtual Bool_t IsYMeanDraw() const
virtual Bool_t UpdateFrom(TGo4Condition *cond, Bool_t counts)
Copy values from cond to this.
virtual void SetLabelDraw(Bool_t on)
virtual void SetVisible(Bool_t on)
Set/Unset visibility.
virtual void GetFlags(Bool_t *enabled, Bool_t *lastresult, Bool_t *markreset, Bool_t *result, Bool_t *truevalue, Bool_t *falsevalue)
Sets values of internal boolean flags to external variables.
virtual void Enable()
Enable (unfreeze) Test execution.
virtual void SetLimitsDraw(Bool_t on)
virtual void SetValues()
Set values needed, i.e.
virtual Double_t GetMean(TH1 *, Int_t=1)
Calculate value for histogram inside condition limits.
virtual Bool_t IsPolygonType() const
virtual Int_t GetMemorySize() const
virtual Bool_t IsYRMSDraw() const
virtual Bool_t IsXMeanDraw() const
virtual void ResetCounts()
Clear counters.
virtual Double_t GetSkewness(TH1 *, Int_t=1)
Calculate value for histogram inside condition limits.
void IncCounts()
Increment the test counter.
virtual void SetIntDraw(Bool_t on)
virtual Int_t Counts()
Return number of calls of the Test method.
TGo4ConditionPainter * fxPainter
Painter instance to display the condition in root pad.
virtual void SetYRMSDraw(Bool_t on)
void Draw(Option_t *opt="") override
Draw this condition on current pad.
virtual Bool_t Test()
Test if condition is true.
virtual Bool_t IsLimitsDraw() const
virtual Int_t IsChanged() const
virtual void SetYMaxDraw(Bool_t on)
virtual Double_t GetYMax(TH1 *)
Calculate value for histogram inside condition limits.
virtual Bool_t IsXRMSDraw() const
virtual Bool_t IsVisible() const
Visibility property for gui display in editor.
virtual Bool_t IsCMaxDraw() const
virtual Double_t GetXLow() const
virtual Bool_t IsIntDraw() const
void IncTrueCounts()
Increment the "test was true" counter.
virtual void SetXRMSDraw(Bool_t on)
virtual Bool_t IsLabelDraw() const
virtual void SetXMeanDraw(Bool_t on)
virtual void SetChanged(Bool_t on=kTRUE)
virtual void PrintCondition(Bool_t full=kTRUE)
Prints counters and boolean members.
virtual void Disable(Bool_t result)
Freeze condition, on Test() return result.
virtual Double_t GetCMax(TH1 *)
Calculate value for histogram inside condition limits.
virtual void PrintBar()
Prints counters and bar.
virtual Double_t GetIntegral(TH1 *, Option_t *="")
Calculate value for histogram inside condition limits.
virtual void Invert(Bool_t on)
Inverts return values, when on is true, i.e.
virtual void MarkReset(Bool_t on)
defines if condition counters shall be reset in UpdateFrom method
virtual Double_t GetXMax(TH1 *)
Calculate value for histogram inside condition limits.
virtual Double_t GetYUp() const
const char * MakeScript(std::ostream &out, const char *varname, Option_t *opt="", const char *arrextraargs=nullptr)
virtual void SetCMaxDraw(Bool_t on)
virtual Double_t GetYLow() const
virtual void SetXMaxDraw(Bool_t on)
virtual Double_t GetRMS(TH1 *, Int_t=1)
Calculate value for histogram inside condition limits.
virtual Bool_t IsMultiEdit() const
static void Warn(const char *text,...) GO4_PRINTF_ARGS
User shortcut for message with prio 2.
static void CleanupSpecials()
Remove all references to any TCutGs from ROOT list of specials.