GSI Object Oriented Online Offline (Go4) GO4-6.4.0
Loading...
Searching...
No Matches
TGo4AnalysisObjectManager.h
Go to the documentation of this file.
1// $Id$
2//-----------------------------------------------------------------------
3// The GSI Online Offline Object Oriented (Go4) Project
4// Experiment Data Processing at EE department, GSI
5//-----------------------------------------------------------------------
6// Copyright (C) 2000- GSI Helmholtzzentrum fuer Schwerionenforschung GmbH
7// Planckstr. 1, 64291 Darmstadt, Germany
8// Contact: http://go4.gsi.de
9//-----------------------------------------------------------------------
10// This software can be used under the license agreements as stated
11// in Go4License.txt file which is part of the distribution.
12//-----------------------------------------------------------------------
13
14#ifndef TGO4ANALYSISOBJECTMANAGER_H
15#define TGO4ANALYSISOBJECTMANAGER_H
16
17#include "TNamed.h"
18
19class TCanvas;
20class TTree;
21class TMutex;
22class TFolder;
23class TH1;
24class TH2;
25class TFile;
26class TDirectory;
27class TIterator;
28
31class TGo4EventSource;
32class TGo4EventStore;
36class TObjArray;
37class TGo4Condition;
38class TGo4WinCond;
39class TGo4PolyCond;
42class TGo4MbsHist;
43class TGo4Picture;
44class TGo4Parameter;
46
53
54class TGo4AnalysisObjectManager : public TNamed {
55
56 public:
57
59
60 TGo4AnalysisObjectManager(const char *name);
61
63
72 Bool_t AddObject(TNamed *anything, const char *subfolder = nullptr, Bool_t replace = kTRUE);
73
81 TNamed *GetObject(const char *name, const char *folder = nullptr);
82
90 TObject *GetAsTObject(const char *name, const char *folder = nullptr);
91
92
98 Bool_t RemoveObject(const char *name, Bool_t del=kTRUE);
99
106 Bool_t DeleteObjects(const char *name);
107
116 TObject *NextMatchingObject(const char *expr,
117 const char *folder,
118 Bool_t reset);
119
127 TFolder *CreateBranchFolder(TObjArray *branchlist,
128 const char *name,
129 const char *title,
130 Bool_t istopbranch = kFALSE);
131
139 TFolder *CreateCompositeBranchFolder(TObjArray *branchlist,
140 TGo4CompositeEvent *compevent,
141 Int_t startindex, Int_t *skip,
142 const char *name, const char *title);
143
148 TGo4TreeStructure *CreateTreeStructure(TTree *thetree);
149
151 TGo4TreeStructure *CreateTreeStructure(const char *treename);
152
154 TFolder *CreateMembersFolder(TObject *obj, const char *membrfoldername, TClass *cl);
155
160 Bool_t AddHistogram(TH1 *his, const char *subfolder = nullptr, Bool_t replace = kTRUE);
161
165 TH1 *GetHistogram(const char *name);
166
173 Bool_t RemoveHistogram(const char *name, Bool_t del = kTRUE);
174
191
192 TH1 *MakeTH1(const char *histotype,
193 const char *foldername,
194 const char *histoname,
195 Int_t nbinsx,
196 Axis_t xlow,
197 Axis_t xup,
198 const char *title = nullptr,
199 const char *xtitle = nullptr,
200 const char *ytitle = nullptr);
201
221
222 TH2 *MakeTH2(const char *histotype,
223 const char *foldername,
224 const char *histoname,
225 Int_t nbinsx,
226 Axis_t xlow,
227 Axis_t xup,
228 Int_t nbinsy,
229 Axis_t ylow,
230 Axis_t yup,
231 const char *title = nullptr,
232 const char *xtitle = nullptr,
233 const char *ytitle = nullptr);
234
241 Bool_t AddTree(TTree *tree, const char *subfolder = nullptr);
242
246 TTree *GetTree(const char *name);
247
254 Bool_t RemoveTree(TTree *tree, const char *stepname = nullptr);
255
261 Bool_t AddAnalysisCondition(TGo4Condition *con, const char *subfolder = nullptr);
262
270 Bool_t SetAnalysisCondition(const char *name, TGo4Condition *con,
271 Bool_t counter = kTRUE, TFolder *parent = nullptr);
272
277 TGo4Condition *GetAnalysisCondition(const char *name, const char *cond_cl = nullptr);
278
283 Bool_t RemoveAnalysisCondition(const char *name);
284
298
299 TGo4WinCond *MakeWindowCond(const char *foldername,
300 const char *conditionname,
301 Double_t xlow,
302 Double_t xup,
303 const char *bindhistogram = nullptr,
304 Bool_t invert = kFALSE);
305
320
321 TGo4WinCond *MakeWindowCond(const char *foldername,
322 const char *conditionname,
323 Double_t xlow,
324 Double_t xup,
325 Double_t ylow,
326 Double_t yup,
327 const char *bindhistogram = nullptr,
328 Bool_t invert = kFALSE);
329
351
352 TGo4PolyCond *MakePolyCond(const char *foldername,
353 const char *conditionname,
354 Int_t size,
355 Float_t (*points)[2],
356 const char *bindhistogram = nullptr,
357 Bool_t invert = kFALSE);
363 Bool_t AddParameter(TGo4Parameter *par, const char *subfolder = nullptr);
364
372 Bool_t SetParameter(const char *name, TGo4Parameter *par, TFolder *parent = nullptr);
373
381 Bool_t SetParameterStatus(const char *name, TGo4ParameterStatus *par, TFolder *parent = nullptr);
382
386 TGo4Parameter *GetParameter(const char *name, const char *parameter_class = nullptr);
387
392 Bool_t RemoveParameter(const char *name);
393
399 Bool_t AddPicture(TGo4Picture *pic, const char *subfolder = nullptr);
400
408 Bool_t SetPicture(const char *name, TGo4Picture *pic, TFolder *parent = nullptr);
409
414 TGo4Picture *GetPicture(const char *name);
415
420 Bool_t RemovePicture(const char *name);
421
427 Bool_t AddCanvas(TCanvas *can, const char *subfolder = nullptr);
428
433 TCanvas *GetCanvas(const char *name);
434
439 Bool_t RemoveCanvas(const char *name);
440
445 TGo4ObjectStatus *CreateObjectStatus(const char *name, const char *folder = nullptr);
446
449 TGo4ObjectStatus *CreateObjectStatus(TObject *ob, Bool_t fullinfo = kTRUE);
450
456
462 TFolder *CreateNamesFolder(TFolder *objectfolder);
463
467 TFolder *GetObjectFolder();
468
473 Bool_t AddEventStore(TGo4EventStore *store);
474
478 Bool_t RemoveEventStore(TGo4EventStore *store);
479
484 Bool_t AddEventSource(TGo4EventSource *source);
485
489 Bool_t RemoveEventSource(TGo4EventSource *source);
490
496
501
507
512
516 TGo4EventElement *GetEventStructure(const char *name) const;
517
521 Bool_t ResetBackStores(Bool_t clearflag=kFALSE);
522
526 void CloseAnalysis();
527
529 void SaveObjects(TFile *file);
530
535 Bool_t LoadObjects(TFile *statusfile);
536
538 Bool_t AddDynamicEntry(TGo4DynamicEntry *entry);
539
541 void ResetCurrentDynList();
542
545 void ProcessDynamicList();
546
547 void SetDynListInterval(Int_t val) { fiDynListInterval = val; }
548
549 Int_t GetDynListInterval() const { return fiDynListInterval; }
550
563 Bool_t AddDynamicHistogram(const char *name,
564 const char *histo,
565 const char *hevx, const char *hmemx,
566 const char *hevy = nullptr, const char *hmemy = nullptr,
567 const char *hevz = nullptr, const char *hmemz = nullptr,
568 const char *condition = nullptr,
569 const char *cevx = nullptr, const char *cmemx = nullptr,
570 const char *cevy = nullptr, const char *cmemy = nullptr);
571
579 Bool_t AddTreeHistogram(const char *hisname, const char *treename, const char *varexp, const char *cutexp);
580
585 void PrintHistograms(const char *expression = nullptr);
586
591 void PrintConditions(const char *expression = nullptr);
592
597 void PrintParameters(const char *expression = nullptr);
598
602 void PrintDynamicList();
603
610 Bool_t ClearObjects(const char *name);
611
620 Bool_t ProtectObjects(const char *name, const Option_t *flags);
621
628 Bool_t RemoveDynamicEntry(const char *entryname);
629
633 TFolder *FindSubFolder(TFolder *parent, const char *subfolder, Bool_t create = kTRUE);
634
636 Bool_t FindObjectPathName(TObject *obj, TString &pathname, TFolder *fold = nullptr);
637
638 Bool_t CreatedInMake() const { return fbCreatedinMake; }
639
641 void SetSortedOrder(Bool_t on = kTRUE) { fbSortedOrder = on; }
642
644 Bool_t IsSortedOrder() const { return fbSortedOrder; }
645
647 void RecursiveRemove(TObject *obj) override;
648
650 static const char *fgcTOPDYNAMICLIST;
651
653 static const char *fgcTOPFOLDER;
654
656 static const char *fgcHISTFOLDER;
657
659 static const char *fgcDYNFOLDER;
660
662 static const char *fgcCONDFOLDER;
663
665 static const char *fgcPARAFOLDER;
666
668 static const char *fgcTREEFOLDER;
669
671 static const char *fgcPICTFOLDER;
672
674 static const char *fgcCANVFOLDER;
675
677 static const char *fgcANALYSISFOLDER;
678
680 static const char *fgcEVENTFOLDER;
681
683 static const char *fgcSRCFOLDER;
684
686 static const char *fgcSTOREFOLDER;
687
689 static const char *fgcPROCFOLDER;
690
692 static const char *fgcUSRFOLDER;
693
695 static const char *fgcTMPFOLDER;
696
697 static const char *GetTOPDYNAMICLIST();
698 static const char *GetTOPFOLDER();
699 static const char *GetHISTFOLDER();
700 static const char *GetDYNFOLDER();
701 static const char *GetCONDFOLDER();
702 static const char *GetPARAFOLDER();
703 static const char *GetTREEFOLDER();
704 static const char *GetPICTFOLDER();
705 static const char *GetCANVFOLDER();
706 static const char *GetANALYSISFOLDER();
707 static const char *GetEVENTFOLDER();
708 static const char *GetSRCFOLDER();
709 static const char *GetSTOREFOLDER();
710 static const char *GetPROCFOLDER();
711 static const char *GetUSRFOLDER();
712 static const char *GetTMPFOLDER();
713
714 private:
715
719 TFolder *fxGo4Dir{nullptr};
720
721
726 TFolder *fxHistogramDir{nullptr};
727
732 TFolder *fxConditionDir{nullptr};
733
737 TFolder *fxParameterDir{nullptr};
738
743 TFolder *fxDynListDir{nullptr};
744
748 TFolder *fxUserDir{nullptr};
749
753 TFolder *fxTreeDir{nullptr};
754
758 TFolder *fxPictureDir{nullptr};
759
763 TFolder *fxCanvasDir{nullptr};
764
768 TFolder *fxStoreDir{nullptr};
769
773 TFolder *fxSourceDir{nullptr};
774
778 TFolder *fxProcessorDir{nullptr};
779
783 TFolder *fxEventDir{nullptr};
784
788 TFolder *fxAnalysisDir{nullptr};
789
793 TFolder *fxTempFolder{nullptr};
794
798 TMutex *fxDirMutex{nullptr};
799
803 TList *fxMatchList{nullptr};
804
806 TIterator *fxMatchIterator{nullptr};
807
814
819
824 Bool_t fbCreatedinMake{kFALSE};
825
833
837 Bool_t fbSortedOrder{kFALSE};
838
847 Bool_t AddObjectToFolder(TObject *ob,
848 TFolder *fold,
849 const char *subfolder = nullptr,
850 Bool_t replace = kTRUE,
851 Bool_t uniquename = kFALSE,
852 Bool_t resetbits = kTRUE);
853
860 Bool_t RemoveObjectFromFolder(const char *fullname, TFolder *fold, Bool_t isDel);
861
867 Bool_t LoadFolder(TFolder *source, TFolder *destination, Bool_t replace = kFALSE);
868
874 Bool_t LoadFolder(TDirectory *source, TFolder *destination, Bool_t replace = kFALSE);
875
881 Bool_t PutToFolder(TObject *ob, TFolder *destination, Bool_t replace = kFALSE);
882
888 Bool_t SaveFolder(TFolder *source);
889
895 void RemoveFromDir(TFolder *fold, TDirectory *dir);
896
901 void AppendToDir(TObject *ob, TDirectory *dir);
902
908 Int_t PrintFolder(TFolder *fold, Option_t *opt, const char *expression = nullptr);
909
914 Bool_t ClearFolder(TFolder *fold);
915
920 Bool_t ClearObject(TObject *ob);
921
926 Bool_t DeleteFolder(TFolder *fold);
927
932 Bool_t DeleteObject(TObject *ob);
933
942 Bool_t ProtectFolder(TFolder *fold, const Option_t *flags);
943
952 Bool_t ProtectObject(TObject *ob, const Option_t *flags);
953
957 void CleanupDynamicLists(TObject *oldobject);
958
962 TList *CreateObjectList(const char *expr, const char *folder = nullptr);
963
965 TList *CreateObjectList(const char *expr, TFolder *fold);
966
968 Bool_t IsMatching(const char *string, const char *expression) const;
969
973 TObject *FindObjectInFolder(TFolder *folder, const char *fullname) const;
974
980 TObject *TestObject(TFolder *folder,
981 const char *&pathname,
982 const char *objectname,
983 const TClass *cl);
984
985};
986
987#endif //TGO4ANALYSISOBJECTMANAGER_H
TH1 * MakeTH1(const char *histotype, const char *foldername, const char *histoname, Int_t nbinsx, Axis_t xlow, Axis_t xup, const char *title=nullptr, const char *xtitle=nullptr, const char *ytitle=nullptr)
Create 1-dim histogram in histogram folder.
TFolder * fxEventDir
Directory containing references to event structures.
Bool_t IsMatching(const char *string, const char *expression) const
Finds out if string is matching the expression.
Bool_t RemoveTree(TTree *tree, const char *stepname=nullptr)
Remove reference to a tree in the go4 folder structure.
void PrintDynamicList()
Print entries of current dynamic list.
Bool_t ProtectFolder(TFolder *fold, const Option_t *flags)
Change protection properties of all objects in this folder as specified.
Bool_t ClearFolder(TFolder *fold)
Clear (reset) all objects in folder fold, e.g.
Int_t fiDynListCount
Event counter for dynamic list processing.
Bool_t AddCanvas(TCanvas *can, const char *subfolder=nullptr)
Puts a new TCanvas in corresponding folder.
Bool_t ProtectObjects(const char *name, const Option_t *flags)
Change protection properties of object name as specified.
void SetSortedOrder(Bool_t on=kTRUE)
Configure sorting order for newly created sub-folders.
void PrintConditions(const char *expression=nullptr)
Print all condition counters to the terminal.
Bool_t fbCreatedinMake
Boolean flag indicates, if object was created in last calls of one of Make* functions.
Bool_t AddParameter(TGo4Parameter *par, const char *subfolder=nullptr)
Puts a new parameter object in corresponding folder.
void SaveObjects(TFile *file)
Save folder structure to given file.
Int_t PrintFolder(TFolder *fold, Option_t *opt, const char *expression=nullptr)
Printout all objects in folder fold on the terminal.
static const char * fgcSRCFOLDER
Event source reference folder name.
Bool_t DeleteObjects(const char *name)
Delete object of name, or all objects in folder name, respectively.
TFolder * fxTempFolder
Temporary folder for nameslist objects.
TGo4Condition * GetAnalysisCondition(const char *name, const char *cond_cl=nullptr)
Retrieves an analysis condition from list by name.
Bool_t ClearObjects(const char *name)
Clear (reset) the specified objects.
Bool_t AddEventStructure(TGo4EventElement *ev)
Add reference to event structure object to Go4 Folder structure.
void AppendToDir(TObject *ob, TDirectory *dir)
Append object ob to directory dir.
void CloseAnalysis()
Cleanups required when analysis is closed.
Bool_t RemoveParameter(const char *name)
Removes parameter by name.
Bool_t AddObject(TNamed *anything, const char *subfolder=nullptr, Bool_t replace=kTRUE)
Add any external object to the user object folder.
Bool_t DeleteFolder(TFolder *fold)
Delete all objects in folder fold only if the kGo4CanDelete bit is set.
Bool_t RemoveEventProcessor(TGo4EventProcessor *pro)
Remove reference to event processor from go4 folder structure.
TH1 * GetHistogram(const char *name)
Search histogram in histogram list (directory).
TFolder * CreateCompositeBranchFolder(TObjArray *branchlist, TGo4CompositeEvent *compevent, Int_t startindex, Int_t *skip, const char *name, const char *title)
Create a folder with subfolders from a list of TBranchElements that belongs to a TGo4CompositeEvent.
Bool_t SetParameterStatus(const char *name, TGo4ParameterStatus *par, TFolder *parent=nullptr)
Set existing parameter of name to the values of external parameter object par.
Bool_t RemovePicture(const char *name)
Removes picture by name.
void RecursiveRemove(TObject *obj) override
Method used in case when object is cleaned up by the ROOT.
static const char * fgcTREEFOLDER
Tree reference folder name.
Bool_t RemoveEventSource(TGo4EventSource *source)
Remove reference to event source from go4 folder structure.
static const char * fgcUSRFOLDER
User objects folder name.
Bool_t AddTree(TTree *tree, const char *subfolder=nullptr)
Add reference to a tree in the go4 folder structure.
Bool_t fbSuppressLoadHistograms
If this is set to true, any found histogram will not be loaded from the file current TDirectory.
TFolder * fxAnalysisDir
Top Directory for all references to event classes.
TGo4ObjectStatus * CreateObjectStatus(const char *name, const char *folder=nullptr)
Find Object of name in the folder structure and create a complete status object of it.
void ProcessDynamicList()
Loop over the dynamic list and process the actions linked to the entries.
TFolder * GetObjectFolder()
Access to top folder of all objects.
void CleanupDynamicLists(TObject *oldobject)
Remove reference to object from all dynamic lists.Object type is noticed automatically.
Bool_t AddHistogram(TH1 *his, const char *subfolder=nullptr, Bool_t replace=kTRUE)
Add external histogram to go4 histogram directory.
static const char * fgcTOPFOLDER
Top level folder name.
TFolder * fxTreeDir
Directory containing references to trees.
TList * fxMatchList
List of matching objects for name expression.
TObject * TestObject(TFolder *folder, const char *&pathname, const char *objectname, const TClass *cl)
Test, if object exists in provided folder.
Bool_t RemoveDynamicEntry(const char *entryname)
Remove entry of that name from dynamic list of listname.
Bool_t fbSortedOrder
Is sub-folder created is sorted order.
void PrintParameters(const char *expression=nullptr)
Print all parameters to the terminal.
Bool_t RemoveEventStructure(TGo4EventElement *ev)
Remove reference to event structure from go4 folder structure.
TObject * FindObjectInFolder(TFolder *folder, const char *fullname) const
Search in folder for object with specified name Uses fxDirMutex until search is working.
Bool_t ResetBackStores(Bool_t clearflag=kFALSE)
Reset all registered backstore instances.Called by dynamic list processing.
TGo4WinCond * MakeWindowCond(const char *foldername, const char *conditionname, Double_t xlow, Double_t xup, const char *bindhistogram=nullptr, Bool_t invert=kFALSE)
Create 1-dim window condition in conditions folder.
Bool_t RemoveEventStore(TGo4EventStore *store)
Remove reference to event store from go4 folder structure.
TFolder * fxCanvasDir
Directory containing TCanvases.
Bool_t AddObjectToFolder(TObject *ob, TFolder *fold, const char *subfolder=nullptr, Bool_t replace=kTRUE, Bool_t uniquename=kFALSE, Bool_t resetbits=kTRUE)
Add any named object to a folder.
TCanvas * GetCanvas(const char *name)
Retrieves a TCanvas by name from the Canvases folder.
TFolder * fxProcessorDir
Directory containing references to event processors.
TMutex * fxDirMutex
Mutex protecting the object directories.
Bool_t SetPicture(const char *name, TGo4Picture *pic, TFolder *parent=nullptr)
Set existing picture of name to the values of external picture object pic.
Bool_t AddEventProcessor(TGo4EventProcessor *pro)
Add reference to event processor object to Go4 Folder structure.
Bool_t AddDynamicHistogram(const char *name, const char *histo, const char *hevx, const char *hmemx, const char *hevy=nullptr, const char *hmemy=nullptr, const char *hevz=nullptr, const char *hmemz=nullptr, const char *condition=nullptr, const char *cevx=nullptr, const char *cmemx=nullptr, const char *cevy=nullptr, const char *cmemy=nullptr)
Add (create) new dynamic histogram entry which connects an existing histogram with existing condition...
TGo4AnalysisObjectNames * CreateNamesList()
Creates a list of names (keys) of all objects in analysis directories.
TFolder * fxSourceDir
Directory containing references to event sources.
TObject * NextMatchingObject(const char *expr, const char *folder, Bool_t reset)
Delivers pointer to next object of the Go4 folder structure with a name matching the expression expr.
static const char * fgcPARAFOLDER
Analysis user parameters folder name.
TH2 * MakeTH2(const char *histotype, const char *foldername, const char *histoname, Int_t nbinsx, Axis_t xlow, Axis_t xup, Int_t nbinsy, Axis_t ylow, Axis_t yup, const char *title=nullptr, const char *xtitle=nullptr, const char *ytitle=nullptr)
Create 2-dim histogram in histogram folder.
TGo4Parameter * GetParameter(const char *name, const char *parameter_class=nullptr)
Retrieves a parameter object by name from the object folder.
Bool_t AddDynamicEntry(TGo4DynamicEntry *entry)
Adds entry to object manager.
TObject * GetAsTObject(const char *name, const char *folder=nullptr)
Searches for object by name in all go4 folders.
TFolder * fxParameterDir
Directory containing user parameter objects.
static const char * fgcCONDFOLDER
Analysis conditions folder name.
Bool_t RemoveHistogram(const char *name, Bool_t del=kTRUE)
Removes histogram from histogram dir by name.
TList * CreateObjectList(const char *expr, const char *folder=nullptr)
Create a list of objects which names are matching expression expr.
Bool_t SaveFolder(TFolder *source)
Save this folder as a new subdirectory (TDirectory) of the current directory i.e.
static const char * fgcSTOREFOLDER
Event store reference folder name.
Bool_t IsSortedOrder() const
Returns true if sub-folders will be created in sorted order.
TGo4EventElement * GetEventStructure(const char *name) const
Search reference to event structure in folder.
static const char * fgcHISTFOLDER
Histograms folder name.
TFolder * fxStoreDir
Directory containing references to event stores.
TFolder * fxPictureDir
Directory containing the pictures.
Bool_t AddAnalysisCondition(TGo4Condition *con, const char *subfolder=nullptr)
Puts a new analysis condition object in corresponding list.
TFolder * fxDynListDir
Directory containing all action objects to be used by dynamic list and by user analysis.
TFolder * fxConditionDir
Directory containing all condition objects to be used by dynamic list and by user analysis.
Bool_t AddEventSource(TGo4EventSource *source)
Add reference to event source object to Go4 Folder structure.
TFolder * FindSubFolder(TFolder *parent, const char *subfolder, Bool_t create=kTRUE)
Get pointer to subfolder of parent specified by name.
Bool_t LoadFolder(TFolder *source, TFolder *destination, Bool_t replace=kFALSE)
Update folder destination with the content of the folder source.
TNamed * GetObject(const char *name, const char *folder=nullptr)
Searches for object by name in all go4 folders.
static const char * fgcPICTFOLDER
Picture objects folder name.
static const char * fgcTOPDYNAMICLIST
Default name of the default (toplevel) dynamic list.
TFolder * CreateMembersFolder(TObject *obj, const char *membrfoldername, TClass *cl)
Create a folder with members of this class.
Bool_t DeleteObject(TObject *ob)
Delete the specified object if the kGo4CanDelete bit is set.
TGo4Picture * GetPicture(const char *name)
Retrieves a picture object by name from the object folder.
static const char * fgcANALYSISFOLDER
top analysis objects reference folder name
static const char * fgcTMPFOLDER
Temporary dummy folder name.
TFolder * CreateBranchFolder(TObjArray *branchlist, const char *name, const char *title, Bool_t istopbranch=kFALSE)
Create a folder with subfolders from a list of TBranchElements.
void ResetCurrentDynList()
Reset the current dynamic list.
void RemoveFromDir(TFolder *fold, TDirectory *dir)
Remove all objects in folder fold from directory dir, recursively.
static const char * fgcEVENTFOLDER
Event references folder name.
TIterator * fxMatchIterator
Iterator for list of matching objects.
Bool_t AddPicture(TGo4Picture *pic, const char *subfolder=nullptr)
Puts a new picture object in corresponding folder.
TGo4PolyCond * MakePolyCond(const char *foldername, const char *conditionname, Int_t size, Float_t(*points)[2], const char *bindhistogram=nullptr, Bool_t invert=kFALSE)
Create polygon 2-dim condition in conditions folder.
TFolder * fxGo4Dir
Top level Go4 Directory (root folder)
Bool_t PutToFolder(TObject *ob, TFolder *destination, Bool_t replace=kFALSE)
Method used by both LoadFolder variants to assign object ob into destination folder by object type.
Bool_t SetAnalysisCondition(const char *name, TGo4Condition *con, Bool_t counter=kTRUE, TFolder *parent=nullptr)
Set existing analysis condition of name to the values of external condition object con.
TTree * GetTree(const char *name)
Search tree in tree folder.
TGo4TreeStructure * CreateTreeStructure(TTree *thetree)
Create a tree structure object that maps the TBranchelements into a TFolder hierarchy.
Bool_t ClearObject(TObject *ob)
Clear (reset) the specified object.
TFolder * fxUserDir
Directory containing all user objects.
Bool_t LoadObjects(TFile *statusfile)
Load objects from file.
TFolder * fxHistogramDir
Directory containing all histogram objects to be used by dynamic list and user analysis.
Bool_t RemoveObject(const char *name, Bool_t del=kTRUE)
Removes object from user object folder by name.
Bool_t AddTreeHistogram(const char *hisname, const char *treename, const char *varexp, const char *cutexp)
Add Histogram into the dynamic list which is linked to a tree.
Bool_t ProtectObject(TObject *ob, const Option_t *flags)
Change protection properties of object name as specified.
Int_t fiDynListInterval
Interval for dynamic list processing.
static const char * fgcCANVFOLDER
TCanvas folder name.
Bool_t RemoveObjectFromFolder(const char *fullname, TFolder *fold, Bool_t isDel)
Remove object specified by full name ("subfolder/subssubfolder/name") from folder fold.
void PrintHistograms(const char *expression=nullptr)
Printout of all histogram statistic counters on the terminal.
static const char * fgcPROCFOLDER
Event processor reference folder name.
Bool_t RemoveAnalysisCondition(const char *name)
Removes analysis condition from list by name.
TFolder * CreateNamesFolder(TFolder *objectfolder)
Conversion of the TFolder of objects into a TFolder containing the object names as TObjectStrings.
Bool_t AddEventStore(TGo4EventStore *store)
Add reference to event store object to Go4 Folder structure.
Bool_t FindObjectPathName(TObject *obj, TString &pathname, TFolder *fold=nullptr)
Return full path name to object, relative to specified folder.
static const char * fgcDYNFOLDER
Dynamic lists folder name.
Bool_t SetParameter(const char *name, TGo4Parameter *par, TFolder *parent=nullptr)
Set existing parameter of name to the values of external parameter object par.
Bool_t RemoveCanvas(const char *name)
Removes TCanvas by name.
Contains the name (key) list of all objects in the analysis scope.
Base type for object composition.
Go4 condition class.
ABC for all entries that can be kept in a dynamic list.
The abstract base class for the data elements of which the unpacked events (or detector structure dat...
Abstract event processor.
The abstract interface class for the raw event store.
Object container for the mbs histogram buffer structure.
Definition TGo4MbsHist.h:30
One entry of the object names folder.
Status object for an analysis parameter.
Base class for all parameter aggregations, e.g.
Picture cconfiguration in Go4.
Definition TGo4Picture.h:40
Polygon condition.
Contains the branchelement structure of a certain TTree on the analysis side.
Window condition.
Definition TGo4WinCond.h:26