1 #ifndef ALIMERGEABLECOLLECTION_H 2 #define ALIMERGEABLECOLLECTION_H 23 #include "TIterator.h" 24 #include "TCollection.h" 51 Bool_t
Adopt(TObject* obj);
52 Bool_t
Adopt(
const char* identifier, TObject* obj);
54 virtual void Browse(TBrowser*
b);
58 virtual TObject*
FindObject(
const char* fullIdentifier)
const;
60 virtual TObject*
FindObject(
const TObject*
object)
const;
62 virtual void Delete(Option_t *option=
"");
68 TObject*
GetObject(
const char* fullIdentifier)
const;
69 TObject*
GetObject(
const char* identifier,
const char* objectName)
const;
71 TH1*
Histo(
const char* fullIdentifier)
const;
72 TH1*
Histo(
const char* identifier,
const char* objectName)
const;
74 TH1*
H1(
const char* fullIdentifier)
const {
return Histo(fullIdentifier); }
75 TH1*
H1(
const char* identifier,
const char* objectName)
const {
return Histo(identifier,objectName); }
77 TH2*
H2(
const char* fullIdentifier)
const;
78 TH2*
H2(
const char* identifier,
const char* objectName)
const;
80 TProfile*
Prof(
const char* fullIdentifier)
const;
81 TProfile*
Prof(
const char* identifier,
const char* objectName)
const;
85 virtual TIterator*
CreateIterator(Bool_t dir = kIterForward)
const;
91 using TFolder::Remove;
93 virtual TObject*
Remove(
const char* fullIdentifier);
97 TString
GetKey(
const char* identifier, Int_t index, Bool_t idContainsObjName = kFALSE)
const;
101 void Print(Option_t *option=
"")
const;
106 Long64_t
Merge(TCollection* list);
119 Int_t
Prune(
const char* identifier);
121 static Bool_t
MergeObject(TObject* baseObject, TObject* objToAdd);
123 TObject*
GetSum(
const char* idPattern)
const;
134 TH1*
HistoWithAction(
const char* identifier, TObject* o,
const TString& action)
const;
138 TString
InternalDecode(
const char* fullIdentifier, Int_t index)
const;
140 TObject*
InternalObject(
const char* identifier,
const char* objectName)
const;
145 TString
NormalizeName(
const char* identifier,
const char* action)
const;
198 TObject*
GetObject(
const char* objectName)
const;
200 TH1*
Histo(
const char* objectName)
const;
202 TH1*
H1(
const char* objectName)
const {
return Histo(objectName); }
204 TH2*
H2(
const char* objectName)
const;
206 TProfile*
Prof(
const char* objectName)
const;
208 void Print(Option_t* opt=
"")
const;
210 Bool_t
Adopt(TObject* obj);
212 Bool_t
Adopt(
const char* identifier, TObject* obj);
214 virtual TIterator*
CreateIterator(Bool_t dir = kIterForward)
const;
TH1 * H1(const char *fullIdentifier) const
Int_t RemoveByType(const char *typeName)
AliMergeableCollection(const char *name="", const char *title="")
Long64_t Merge(TCollection *list)
TString InternalDecode(const char *fullIdentifier, Int_t index) const
virtual TList * CreateListOfKeys(Int_t index) const
TObjArray * SortAllIdentifiers() const
TString GetObjectName(const char *fullIdentifier) const
TH1 * H1(const char *objectName) const
Bool_t Adopt(TObject *obj)
void ShowEmptyObjects(Bool_t show=kTRUE)
Turn on the display of empty objects for the Print method.
TObject * InternalObject(const char *identifier, const char *objectName) const
static Bool_t MergeObject(TObject *baseObject, TObject *objToAdd)
TH1 * Histo(const char *fullIdentifier) const
TH2 * H2(const char *fullIdentifier) const
virtual void Delete(Option_t *option="")
void PrintMessages(const char *prefix="") const
AliMergeableCollectionIterator()
virtual AliMergeableCollection * Clone(const char *name="") const
virtual ~AliMergeableCollection()
friend class AliMergeableCollectionIterator
virtual TObject * Remove(const char *fullIdentifier)
virtual AliMergeableCollectionProxy * CreateProxy(const char *identifier, Bool_t createIfNeeded=kFALSE)
void Print(Option_t *option="") const
std::map< std::string, int > fMessages
internal version of map (to avoid custom streamer...)
TString GetKey(const char *identifier, Int_t index, Bool_t idContainsObjName=kFALSE) const
TObject * GetObject(const char *fullIdentifier) const
Int_t fMapVersion
Whether or not to show empty objects with the Print method.
static void CorrectIdentifier(TString &sidentifier)
TH1 * H1(const char *identifier, const char *objectName) const
TString NormalizeName(const char *identifier, const char *action) const
virtual TList * CreateListOfObjectNames(const char *identifier) const
virtual Int_t NumberOfObjects() const
virtual void Browse(TBrowser *b)
Int_t Prune(const char *identifier)
TIterator * fHashListIterator
UInt_t EstimateSize(Bool_t show=kFALSE) const
AliMergeableCollection & fOC
TProfile * Prof(const char *fullIdentifier) const
virtual void Clear(Option_t *option="")
virtual Int_t NumberOfKeys() const
AliMergeableCollection & operator=(const AliMergeableCollection &rhs)
TString GetIdentifier(const char *fullIdentifier) const
Bool_t InternalAdopt(const char *identifier, TObject *obj)
friend class AliMergeableCollectionProxy
virtual TIterator * CreateIterator(Bool_t dir=kIterForward) const
const TCollection * GetCollection() const
TH1 * HistoWithAction(const char *identifier, TObject *o, const TString &action) const
AliMergeableCollection * Project(const char *identifier) const
Bool_t Attach(AliMergeableCollection *mc, const char *identifier, Bool_t pruneFirstIfAlreadyExists=kFALSE)
Bool_t fMustShowEmptyObject
map of TMap of THashList* of TObject*...
virtual TObject * FindObject(const char *fullIdentifier) const
TObject * GetSum(const char *idPattern) const
const AliMergeableCollection * fkMergeableCollection
Bool_t IsEmptyObject(TObject *obj) const