]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGHF/hfe/AliHFEcollection.h
Merge branch 'master' of https://git.cern.ch/reps/AliRoot
[u/mrichter/AliRoot.git] / PWGHF / hfe / AliHFEcollection.h
CommitLineData
809a4336 1/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
c2690925 2 * See cxx source for full Copyright notice
3 */
809a4336 4
50685501 5//
6// Class for AliHFEcollection
7// Serves as a data container - currently based on internal TList
8//
9// Authors:
10// Markus Fasel <M.Fasel@gsi.de>
11// Matus Kalisky <matus.kalisky@cern.ch> (contact)
12//
13
14
15//
16// Provides an option for storing and creating histograms outside the
17// analysis class
18// the performance will be improved once the TMap is used insted of TTree
19//
809a4336 20
21/*
22 * vesion: 1.0.1
23 */
24
25
c2690925 26#ifndef ALIHFECOLLECTION_H
27#define ALIHFECOLLECTION_H
28
809a4336 29#ifndef ROOT_TNamed
30#include "TNamed.h"
31#endif
32
70da6c5a 33#ifndef ROOT_THashList
34#include "THashList.h"
35#endif
36
809a4336 37class TCollection;
38class TBrowser;
39
40class AliHFEcollection : public TNamed{
41
42 public:
43 AliHFEcollection();
faee3b18 44 AliHFEcollection(const char* name, const char* title);
809a4336 45 AliHFEcollection(const AliHFEcollection &c);
46 AliHFEcollection &operator=(const AliHFEcollection &c);
47 virtual ~AliHFEcollection();
48
49
75d81601 50 virtual void Browse(TBrowser *b);
bf892a6a 51 virtual Bool_t IsFolder() const { return kTRUE; }
809a4336 52
53 // Set & Create functions
faee3b18 54 Bool_t CreateTH1F(const char* name, const char* title, Int_t nBin, Float_t nMin, Float_t nMax, Int_t logAxis = -1);
c2690925 55 Bool_t CreateTH1Farray(const char* name, const char* title, Int_t nBin, const Double_t* xbins);
809a4336 56
faee3b18 57 Bool_t CreateTH2F(const char* name, const char* title, Int_t nBinX, Float_t nMinX, Float_t nMaxX, Int_t nBinY, Float_t nMinY, Float_t nMaxY, Int_t logAxis = -1);
a8ef1999 58 Bool_t CreateTH2Farray(const char* name, const char* title, Int_t nBin, const Double_t* xbins, Int_t nBinY, Float_t nMinY, Float_t nMaxY);
8c1c76e9 59 Bool_t CreateTH3F(const char* name, const char* title, Int_t nBinX, Float_t nMinX, Float_t nMaxX, Int_t nBinY, Float_t nMinY, Float_t nMaxY, Int_t nBinZ, Float_t minZ, Float_t maxZ, Int_t logAxis = -1);
809a4336 60
faee3b18 61 Bool_t CreateTH1Fvector1(Int_t X, const char* name, const char* title, Int_t nBin, Float_t nMin, Float_t nMax, Int_t logAxis = -1);
62 Bool_t CreateTH1Fvector2(Int_t X, Int_t Y, const char* name, const char* title, Int_t nBin, Float_t nMin, Float_t nMax, Int_t logAxis = -1);
63 Bool_t CreateTH2Fvector1(Int_t X, const char* name, const char* title, Int_t nBinX, Float_t nMinX, Float_t nMaxX, Int_t nBinY, Float_t nMinY, Float_t nMaxY, Int_t logAxis = -1);
9bcfd1ab 64 Bool_t CreateProfile(const char* name, const char* title, Int_t nbins, Double_t xmin, Double_t xmax);
8c1c76e9 65 Bool_t CreateTHnSparse(const char* name, const char* title, Int_t dim, const Int_t* nbins, const Double_t* xmin, const Double_t* xmax);
a8ef1999 66 Bool_t CreateTHnSparseNoLimits(const char* name, const char* title, Int_t dim, const Int_t* nbins);
809a4336 67
9bcfd1ab 68 Bool_t BinLogAxis(const char* name, Int_t dim);
70da6c5a 69 Bool_t Sumw2(const char*name);
9bcfd1ab 70
809a4336 71
8c1c76e9 72 Long64_t Merge(const TCollection *list);
e156c3bb 73 virtual void Print(Option_t *) const;
809a4336 74
75 // Get functions
3a72645a 76 TList* GetList() const { return fList; }
809a4336 77 TObject* Get(const char* name);
809a4336 78
9bcfd1ab 79 // Fill functions
80 Bool_t Fill(const char* name, Double_t v);
faee3b18 81 Bool_t Fill(const char* name, Int_t v);
9bcfd1ab 82 Bool_t Fill(const char* name, Int_t X, Double_t v);
83 Bool_t Fill(const char* name, Int_t X, Int_t Y, Double_t v);
84 Bool_t Fill(const char* name, Double_t v1, Double_t v2);
85 Bool_t Fill(const char* name, Int_t X, Double_t v1, Double_t v2);
8c1c76e9 86 Bool_t Fill(const char* name, Double_t v1, Double_t v2, Double_t v3);
faee3b18 87 Bool_t Fill(const char* name, Double_t* entry, Double_t weight = 1);
809a4336 88 private:
75d81601 89 Bool_t CheckObject(const char* name);
809a4336 90 void Copy(TObject &ref) const;
91
92 private:
70da6c5a 93 THashList* fList; // Object container
809a4336 94
95 ClassDef(AliHFEcollection, 1)
96
97};
98
99#endif