]>
Commit | Line | Data |
---|---|---|
809a4336 | 1 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * |
2 | * See cxx source for full Copyright notice | |
3 | */ | |
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 | ||
75d81601 | 26 | #ifndef ALIHFECOLLECTION_H |
27 | #define ALIHFECOLLECTION_H | |
809a4336 | 28 | |
29 | #ifndef ROOT_TNamed | |
30 | #include "TNamed.h" | |
31 | #endif | |
32 | ||
70da6c5a | 33 | #ifndef ROOT_THashList |
34 | #include "THashList.h" | |
35 | #endif | |
36 | ||
809a4336 | 37 | class TCollection; |
38 | class TBrowser; | |
39 | ||
40 | class AliHFEcollection : public TNamed{ | |
41 | ||
42 | public: | |
43 | AliHFEcollection(); | |
44 | AliHFEcollection(char* name, char* title); | |
45 | AliHFEcollection(const AliHFEcollection &c); | |
46 | AliHFEcollection &operator=(const AliHFEcollection &c); | |
47 | virtual ~AliHFEcollection(); | |
48 | ||
49 | ||
75d81601 | 50 | virtual void Browse(TBrowser *b); |
809a4336 | 51 | |
52 | // Set & Create functions | |
53 | Bool_t CreateTH1F(const char* name, const char* title, Int_t nBin, Float_t nMin, Float_t nMax); | |
54 | ||
55 | 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); | |
56 | ||
75d81601 | 57 | Bool_t CreateTH1Fvector1(Int_t X, const char* name, const char* title, Int_t nBin, Float_t nMin, Float_t nMax); |
9bcfd1ab | 58 | Bool_t CreateTH1Fvector2(Int_t X, Int_t Y, const char* name, const char* title, Int_t nBin, Float_t nMin, Float_t nMax); |
75d81601 | 59 | 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); |
9bcfd1ab | 60 | Bool_t CreateProfile(const char* name, const char* title, Int_t nbins, Double_t xmin, Double_t xmax); |
61 | Bool_t CreateTHnSparse(const char* name, const char* title, Int_t dim, Int_t* nbins, Double_t* xmin, Double_t* xmax); | |
809a4336 | 62 | |
9bcfd1ab | 63 | Bool_t BinLogAxis(const char* name, Int_t dim); |
70da6c5a | 64 | Bool_t Sumw2(const char*name); |
9bcfd1ab | 65 | |
809a4336 | 66 | |
67 | Long64_t Merge(TCollection *list); | |
68 | ||
69 | // Get functions | |
9bcfd1ab | 70 | TList* GetList() const { return fList; } |
809a4336 | 71 | TObject* Get(const char* name); |
809a4336 | 72 | |
9bcfd1ab | 73 | // Fill functions |
74 | Bool_t Fill(const char* name, Double_t v); | |
75 | Bool_t Fill(const char* name, Int_t X, Double_t v); | |
76 | Bool_t Fill(const char* name, Int_t X, Int_t Y, Double_t v); | |
77 | Bool_t Fill(const char* name, Double_t v1, Double_t v2); | |
78 | Bool_t Fill(const char* name, Int_t X, Double_t v1, Double_t v2); | |
809a4336 | 79 | private: |
75d81601 | 80 | Bool_t CheckObject(const char* name); |
809a4336 | 81 | void Copy(TObject &ref) const; |
82 | ||
83 | private: | |
70da6c5a | 84 | THashList* fList; // Object container |
809a4336 | 85 | |
86 | ClassDef(AliHFEcollection, 1) | |
87 | ||
88 | }; | |
89 | ||
90 | #endif |