Make the Scan method public
[u/mrichter/AliRoot.git] / MUON / AliMUONTrackerDataHistogrammer.h
CommitLineData
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
19class AliMUONVPainter;
20class AliMUONVTrackerData;
21class AliMUONSparseHisto;
22class TH1;
23
24class AliMUONTrackerDataHistogrammer : public TObject
25{
26public:
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
42private:
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
58private:
72dae9ff 59 const AliMUONVTrackerData& fkData; ///< 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