Heavy ion Analysis Libriares
Loading...
Searching...
No Matches
Package.h
1/*
2 * HalPackage.h
3 *
4 * Created on: 30-04-2022
5 * Author: Daniel Wielanek
6 * E-mail: daniel.wielanek@gmail.com
7 * Warsaw University of Technology, Faculty of Physics
8 */
9
10#ifndef HALPACKAGE_H_
11#define HALPACKAGE_H_
12
13#include <TObjString.h>
14#include <TString.h>
15
16
24namespace Hal {
25
26 class Package : public TObject {
27 TObjArray* fArrayObjects;
28 TObjString fNameClass;
29 TObjString fComment;
30 Int_t fNo;
31 Int_t fMerged;
32 void MergeObjects(TObject* first, const TObject* second);
33 void SumHalParameter(TObject* first, const TObject* second);
34 void SumHistograms(TObject* first, const TObject* second);
35 void SumOther(TObject* first, const TObject* second);
36 void SumPackages(TObject* first, const TObject* second);
37 void SumList(TObject* first, const TObject* second);
38 void SumPack(TObject* first, const TObject* second);
39 void SumTObjString(TObject* first, const TObject* second);
40 // void MergeArrayElements(TObject *first, TObject *second);
41 void PrintInfo(Int_t counter, Int_t deep) const;
42 void PrintStruct(Int_t i, Int_t index) const;
43
44 public:
48 Package();
55 Package(const TObject* object, Bool_t cut_template = kFALSE);
60 void AddObject(TObject* object);
65 void Add(const Package* pack);
70 virtual Long64_t Merge(TCollection* collection);
75 void SetName(TString name);
80 void SetComment(TString name);
86 void PrintInfo(Int_t max_deep = 0) const;
90 void PrintStruct() const;
95 void SetAdditionalCounter(Int_t counter);
102 void RemoveObjectByName(TString name, Int_t index = 0, Bool_t delete_obj = kTRUE);
107 virtual void Browse(TBrowser* b);
112 Int_t GetEntries() const;
118 Int_t GetMerged() const;
127 Bool_t Exist(TString name, Int_t index = 0, Option_t* opt = " ") const;
133 TObject* GetObject(Int_t i) const;
141 TObject* GetObjectByName(TString name, Int_t index = 0, Bool_t quited = kFALSE) const;
148 TObject* GetObjectByClassName(TString name, Int_t index = 0) const;
153 const char* GetName() const;
158 TString GetComment() const;
163 Package* Report() const;
169 Package& operator+(const Package& rhs);
170 virtual ~Package();
171 ClassDef(Package, 1)
172 };
173} // namespace Hal
174
175#endif /* HALPACKAGE_H_ */
Bool_t Exist(TString name, Int_t index=0, Option_t *opt=" ") const
Definition Package.cxx:300
TObject * GetObject(Int_t i) const
Definition Package.cxx:52
virtual Long64_t Merge(TCollection *collection)
Definition Package.cxx:348
void RemoveObjectByName(TString name, Int_t index=0, Bool_t delete_obj=kTRUE)
Definition Package.cxx:331
void SetAdditionalCounter(Int_t counter)
Definition Package.cxx:50
Int_t GetMerged() const
Definition Package.cxx:140
TString GetComment() const
Definition Package.cxx:63
TObject * GetObjectByName(TString name, Int_t index=0, Bool_t quited=kFALSE) const
Definition Package.cxx:67
void Add(const Package *pack)
Definition Package.cxx:254
Package & operator+(const Package &rhs)
Definition Package.cxx:218
TObject * GetObjectByClassName(TString name, Int_t index=0) const
Definition Package.cxx:169
void PrintStruct() const
Definition Package.cxx:292
Package * Report() const
Definition Package.cxx:129
Int_t GetEntries() const
Definition Package.cxx:61
const char * GetName() const
Definition Package.cxx:167
void SetComment(TString name)
Definition Package.cxx:65
void SetName(TString name)
Definition Package.cxx:298
virtual void Browse(TBrowser *b)
Definition Package.cxx:195
void AddObject(TObject *object)
Definition Package.cxx:209