New package for heavy flavour electrons analysis (M.Fasel)
[u/mrichter/AliRoot.git] / PWG3 / hfe / AliHFEcollection.h
CommitLineData
809a4336 1/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2 * See cxx source for full Copyright notice
3 */
4
5/************************************************************************
6 * *
7 * Class for AliHFEcollection *
8 * Serves as a data container - currently based on internal TList *
9 * *
10 * Authors: *
11 * Markus Fasel <M.Fasel@gsi.de> *
12 * Matus Kalisky <matus.kalisky@cern.ch> (contact) *
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 */
20
21/*
22 * vesion: 1.0.1
23 */
24
25
26#ifndef __ALIHFECOLLECTION_H__
27#define __ALIHFECOLLECTION_H__
28
29#ifndef ROOT_TNamed
30#include "TNamed.h"
31#endif
32
33class TList;
34class TCollection;
35class TBrowser;
36
37class AliHFEcollection : public TNamed{
38
39 public:
40 AliHFEcollection();
41 AliHFEcollection(char* name, char* title);
42 AliHFEcollection(const AliHFEcollection &c);
43 AliHFEcollection &operator=(const AliHFEcollection &c);
44 virtual ~AliHFEcollection();
45
46
47 virtual void Browse(TBrowser*);
48
49 // Set & Create functions
50 Bool_t CreateTH1F(const char* name, const char* title, Int_t nBin, Float_t nMin, Float_t nMax);
51
52 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);
53
54 Bool_t CreateTH1Fvector1(Int_t _X, const char* _name, const char* _title, Int_t _nBin, Float_t _nMin, Float_t _nMax);
55 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);
56
57 Bool_t CreateTH1Fvector2(Int_t _X, Int_t _Y, const char* _name, const char* _title, Int_t _nBin, Float_t _nMin, Float_t _nMax);
58
59
60 Long64_t Merge(TCollection *list);
61
62 // Get functions
63 TList* GetList() const { return fListE; }
64 TObject* Get(const char* name);
65 TObject* Get(const char* name, Int_t _X);
66 TObject* Get(const char* name, Int_t _X, Int_t _Y);
67
68 private:
69 Bool_t CheckObject(const char*);
70 void Copy(TObject &ref) const;
71
72 private:
73 TList* fListE;
74
75 ClassDef(AliHFEcollection, 1)
76
77};
78
79#endif