]>
Commit | Line | Data |
---|---|---|
128a8042 | 1 | #ifndef ALICHECKMUONDETELTRESPONSE_H |
2 | #define ALICHECKMUONDETELTRESPONSE_H | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | /// \ingroup base | |
7 | /// \class AliCheckMuonDetEltResponse | |
8 | /// \brief tracking chamber efficiency from data | |
9 | //Author: Nicolas LE BRIS - SUBATECH Nantes | |
10 | ||
11 | #include <TH2F.h> | |
12 | #include <TObject.h> | |
13 | #include <TClonesArray.h> | |
14 | ||
15 | class AliMUONTrackParam; | |
16 | class AliMUONTrack; | |
17 | class AliMUONVCluster; | |
18 | class AliMUONGeometryTransformer; | |
19 | class AliESDEvent; | |
20 | ||
21 | class AliCheckMuonDetEltResponse : public TObject | |
22 | { | |
23 | public: | |
128a8042 | 24 | AliCheckMuonDetEltResponse(); |
665701ae | 25 | AliCheckMuonDetEltResponse(const AliCheckMuonDetEltResponse& rhs); |
26 | AliCheckMuonDetEltResponse& operator=(const AliCheckMuonDetEltResponse& rhs); | |
128a8042 | 27 | //Constructor: |
28 | AliCheckMuonDetEltResponse(const AliMUONGeometryTransformer* transformer, | |
29 | AliESDEvent* esd, | |
30 | TClonesArray* detEltTDHistList, | |
0246246b | 31 | TClonesArray* detEltTTHistList, |
32 | TClonesArray* chamberTDHistList, | |
33 | TClonesArray* chamberTTHistList, | |
34 | Bool_t isCosmic = kFALSE); | |
128a8042 | 35 | |
36 | //Destructor: | |
37 | virtual ~AliCheckMuonDetEltResponse(); | |
38 | ||
39 | ||
40 | void CheckDetEltResponse (); | |
41 | void TrackLoop (); | |
42 | void TrackParamLoop (); | |
0246246b | 43 | |
44 | void SetCosmic(Bool_t isCosmic) {fIsCosmicData = isCosmic;}; | |
45 | Bool_t IsCosmic() {return fIsCosmicData;}; | |
128a8042 | 46 | |
47 | private: | |
48 | ||
0246246b | 49 | void FillTDHistos (Int_t chamber, Int_t detElt, |
50 | Double_t posXL, Double_t posYL); | |
51 | ||
52 | void FillTTHistos (Int_t chamber, Int_t detElt, | |
53 | Double_t posXL, Double_t posYL); | |
128a8042 | 54 | |
0246246b | 55 | void FindAndFillMissedDetElt (AliMUONTrackParam* extrapTrackParam, |
56 | Int_t firstMissCh, Int_t lastChamber); | |
128a8042 | 57 | |
0246246b | 58 | void CoordinatesOfMissingCluster(Double_t x1, Double_t y1, Double_t z1, |
59 | Double_t x2, Double_t y2, Double_t z2, | |
60 | Double_t& x, Double_t& y); | |
128a8042 | 61 | |
0246246b | 62 | Bool_t CoordinatesInDetEltSt12(Int_t DeId, Double_t x, Double_t y); |
63 | Bool_t CoordinatesInDetEltSt345(Int_t DeId, Double_t x, Double_t y); | |
128a8042 | 64 | |
65 | ||
66 | Int_t fNCh; //!<Number of tracking chamber. | |
67 | Int_t fNSt; //!<Number of tracking station. | |
68 | Int_t fNDE; //!<Number of detection element in the tracking system. | |
69 | ||
70 | Int_t FromDetElt2iDet (Int_t chamber, Int_t detElt); | |
0246246b | 71 | Int_t FromDetElt2LocalId (Int_t chamber, Int_t detElt); |
128a8042 | 72 | |
73 | const AliMUONGeometryTransformer* fTransformer; //!<Geometry transformer | |
74 | ||
75 | AliESDEvent* fESD; | |
76 | ||
77 | Int_t fNbrClustersCh[10]; //!<Number of clusters in the chamber [fChamberNbr]. | |
78 | Int_t fTracksTotalNbr; //!<Total number of tracks in the event. | |
128a8042 | 79 | Int_t fTrackFilter[10]; //!<To select track for the efficiency calculation. |
0246246b | 80 | Bool_t fIsCosmicData; ///< Check if the data are cosmic rays (used only to cut cosmic shower at hte trigger level if true) |
128a8042 | 81 | |
82 | TClonesArray * fTrackParams; | |
83 | AliMUONTrackParam* fTrackParam; | |
84 | AliMUONVCluster * fCluster; | |
85 | ||
86 | TClonesArray* fDetEltTDHistList; //!<List of histograms of the tracks detected in the detection elements | |
87 | TClonesArray* fDetEltTTHistList; //!<List of histograms of the tracks which have passed through the detection elements | |
0246246b | 88 | TClonesArray* fChamberTDHistList; //!<List of histograms of the tracks detected in the chambers |
89 | TClonesArray* fChamberTTHistList; //!<List of histograms of the tracks which have passed through the chambers | |
128a8042 | 90 | |
91 | static const Int_t fNbrOfChamber; ///< The total number of chamber in the tracking system. | |
92 | static const Int_t fNbrOfStation; ///< The total number of station in the tracking system. | |
93 | static const Int_t fNbrOfDetectionElt[10]; ///< The total number of detection element in each chamber. | |
94 | static const Int_t fFirstDetectionElt[10]; ///< The Id of the first detection element of each chamber. | |
95 | static const Int_t fOffset; ///< fFirstDetectionElt[iChamber] = fOffset * (iChamber+1). | |
96 | static const Int_t fOverlapSize; ///< Average size (in cm) of the overlap area between two detection eltement. | |
97 | static const Int_t fYSlatSize; ///< Average size (in cm) of the overlap area between two detection eltement. | |
98 | ||
99 | ClassDef(AliCheckMuonDetEltResponse, 0) | |
100 | }; | |
101 | #endif |