]> git.uio.no Git - u/mrichter/AliRoot.git/blob - MUON/AliMUONTrackerDataHistogrammer.h
AliMUONTrackerIO:
[u/mrichter/AliRoot.git] / MUON / AliMUONTrackerDataHistogrammer.h
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:
27   AliMUONTrackerDataHistogrammer(const AliMUONVTrackerData& data, Int_t dim);
28   virtual ~AliMUONTrackerDataHistogrammer();
29   
30   static TH1* CreateHisto(const AliMUONVPainter& painter);
31   
32   TH1* CreateBusPatchHisto(Int_t busPatchId) const;
33   
34   TH1* CreateChamberHisto(Int_t chamberId) const;
35   
36   TH1* CreateChannelHisto(Int_t detElemId, Int_t manuId, 
37                           Int_t manuChannel) const;
38   
39   TH1* CreateDEHisto(Int_t detElemId) const;
40   
41   TH1* CreateManuHisto(Int_t detElemId, Int_t manuId) const;
42   
43 private:
44
45   TH1* CreateHisto(const char* name) const;
46   
47   void Add(TH1& h, const AliMUONSparseHisto& sh) const;
48   
49   void AddBusPatchHisto(TH1& h, Int_t busPatchId) const;
50   
51   void AddDEHisto(TH1& h, Int_t detElemId) const;
52   
53   void AddManuHisto(TH1& h, Int_t detElemId, Int_t manuId) const;
54   
55 private:
56   const AliMUONVTrackerData& fData; ///< data we'll histogram 
57   Int_t fDim; ///< dimension we'll histogram
58   
59   ClassDef(AliMUONTrackerDataHistogrammer,1) // Make histograms from VTrackerData
60 };
61
62 #endif