]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGJE/EMCALJetTasks/UserTasks/AliEMCalTriggerBinningComponent.h
Include binning component in the global analysis framework
[u/mrichter/AliRoot.git] / PWGJE / EMCALJetTasks / UserTasks / AliEMCalTriggerBinningComponent.h
CommitLineData
4c40f4b9 1#ifndef ALIEMCALTRIGGERBINNINGCOMPONENT_H
2#define ALIEMCALTRIGGERBINNINGCOMPONENT_H
3/* Copyright(c) 1998-2014, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6// Author: Markus Fasel
7#include <TArrayD.h>
8#include <TNamed.h>
9
10class TObjArray;
11
12namespace EMCalTriggerPtAnalysis {
13
14class AliEMCalTriggerBinningDimension : public TNamed{
15public:
16 AliEMCalTriggerBinningDimension():
17 TNamed(),
18 fBinning()
19 {}
20 AliEMCalTriggerBinningDimension(const char *name):
21 TNamed(name, ""),
22 fBinning()
23 {}
24 AliEMCalTriggerBinningDimension(const char *name, int nbins, double *binning):
25 TNamed(name, ""),
26 fBinning(nbins+1, binning)
27 {}
28 ~AliEMCalTriggerBinningDimension() {}
29
30 void Set(int nbins, double *binning) { fBinning.Set(nbins+1, binning); }
31 void Set(const TArrayD &binning) { fBinning = binning; }
32 const double *GetBinLimits() const { return fBinning.GetArray(); }
33 int GetNumberOfBins() const { return fBinning.GetSize(); }
34
35private:
36 TArrayD fBinning; // Bin limits
37
38 ClassDef(AliEMCalTriggerBinningDimension, 1);
39};
40
41class AliEMCalTriggerBinningComponent: public TObject {
42public:
43 AliEMCalTriggerBinningComponent();
44 AliEMCalTriggerBinningComponent(const AliEMCalTriggerBinningComponent &ref);
45 AliEMCalTriggerBinningComponent &operator=(const AliEMCalTriggerBinningComponent &ref);
46 virtual ~AliEMCalTriggerBinningComponent();
47
48 AliEMCalTriggerBinningDimension *GetBinning(const char *name);
49 void SetBinning(const char *dimname, int nbins, double *binning);
50
51private:
52 TObjArray *fDimensions; // List of binnings (dimensions)
53
54 ClassDef(AliEMCalTriggerBinningComponent, 1);
55};
56
57} /* namespace EMCalTriggerPtAnalysis */
58
59#endif /* ALIEMCALTRIGGERBINNINGCOMPONENT_H */