]>
Commit | Line | Data |
---|---|---|
10eb3d17 | 1 | #ifndef ALIMUONTRACKERDATAHISTOGRAMMER_H |
2 | #define ALIMUONTRACKERDATAHISTOGRAMMER_H | |
3 | ||
4 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
5 | * See cxx source for full Copyright notice */ | |
6 | ||
7 | // $Id$ | |
8 | ||
9 | /// \ingroup graphics | |
10 | /// \class AliMUONTrackerDataHistogrammer | |
11 | /// \brief Make histograms from VTrackerData and VPainter objects. | |
12 | /// | |
13 | // author Laurent Aphecetche, Subatech | |
14 | ||
15 | #ifndef ROOT_TObject | |
16 | # include "TObject.h" | |
17 | #endif | |
18 | ||
19 | class AliMUONVPainter; | |
20 | class AliMUONVTrackerData; | |
21 | class AliMUONSparseHisto; | |
22 | class TH1; | |
23 | ||
24 | class AliMUONTrackerDataHistogrammer : public TObject | |
25 | { | |
26 | public: | |
49419555 | 27 | AliMUONTrackerDataHistogrammer(const AliMUONVTrackerData& data, |
28 | Int_t externalDim, | |
29 | Int_t internalDim=-1); | |
10eb3d17 | 30 | virtual ~AliMUONTrackerDataHistogrammer(); |
31 | ||
49419555 | 32 | static TH1* CreateHisto(const AliMUONVPainter& painter, |
33 | Int_t externalDim, | |
34 | Int_t internalDim); | |
35 | ||
10eb3d17 | 36 | TH1* CreateChannelHisto(Int_t detElemId, Int_t manuId, |
37 | Int_t manuChannel) const; | |
49419555 | 38 | |
99f1b909 | 39 | /// Whether we are working with internal dimensions or external ones. |
49419555 | 40 | Bool_t IsInternalMode() const { return fInternalDim >=0; } |
10eb3d17 | 41 | |
42 | private: | |
43 | ||
49419555 | 44 | TH1* CreateManuHisto(Int_t detElemId, Int_t manuId, Int_t nbins, Double_t xmin, Double_t xmax) const; |
45 | ||
46 | TH1* CreateHisto(const char* basename, Int_t nbins, Double_t xmin, Double_t xmax) const; | |
47 | ||
48 | void GetDataRange(const TObjArray& manuList, Double_t& xmin, Double_t& xmax) const; | |
10eb3d17 | 49 | |
50 | void Add(TH1& h, const AliMUONSparseHisto& sh) const; | |
51 | ||
52 | void AddBusPatchHisto(TH1& h, Int_t busPatchId) const; | |
53 | ||
54 | void AddDEHisto(TH1& h, Int_t detElemId) const; | |
55 | ||
56 | void AddManuHisto(TH1& h, Int_t detElemId, Int_t manuId) const; | |
57 | ||
58 | private: | |
59 | const AliMUONVTrackerData& fData; ///< data we'll histogram | |
49419555 | 60 | Int_t fExternalDim; ///< (external) dimension we'll histogram |
61 | Int_t fInternalDim; ///< (internal) dimension we'll make histogram for | |
10eb3d17 | 62 | |
49419555 | 63 | ClassDef(AliMUONTrackerDataHistogrammer,2) // Make histograms from VTrackerData |
10eb3d17 | 64 | }; |
65 | ||
66 | #endif |