Reseting the MC label to a default value of -1 before evaluating them (Philippe P...
[u/mrichter/AliRoot.git] / PWG3 / muondep / AliCheckMuonDetEltResponse.h
CommitLineData
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
15class AliMUONTrackParam;
16class AliMUONTrack;
17class AliMUONVCluster;
18class AliMUONGeometryTransformer;
19class AliESDEvent;
20
21class AliCheckMuonDetEltResponse : public TObject
22{
23public:
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,
31 TClonesArray* detEltTTHistList);
32
33//Destructor:
34 virtual ~AliCheckMuonDetEltResponse();
35
36
37 void CheckDetEltResponse ();
38 void TrackLoop ();
39 void TrackParamLoop ();
40
41private:
42
43 void FillDetEltTDHisto (Int_t chamber, Int_t detElt,
44 Double_t posXL, Double_t posYL);
45
46 void FillDetEltTTHisto (Int_t chamber, Int_t detElt,
47 Double_t posXG, Double_t posYG, Double_t posZG,
48 Double_t posXL, Double_t posYL, Double_t posZL);
49
50 void CalculMissClusterParam (AliMUONTrackParam* extrapTrackParam,
51 Int_t firstMissCh, Int_t nbrOfMissCh);
52
53 void GetDetEltFromPosition (Int_t chamber,
54 Double_t posX, Double_t posY, Double_t posZ);
55
56
57 Int_t fNCh; //!<Number of tracking chamber.
58 Int_t fNSt; //!<Number of tracking station.
59 Int_t fNDE; //!<Number of detection element in the tracking system.
60
61 Int_t FromDetElt2iDet (Int_t chamber, Int_t detElt);
62
63 const AliMUONGeometryTransformer* fTransformer; //!<Geometry transformer
64
65 AliESDEvent* fESD;
66
67 Int_t fNbrClustersCh[10]; //!<Number of clusters in the chamber [fChamberNbr].
68 Int_t fTracksTotalNbr; //!<Total number of tracks in the event.
69 Int_t fGetDetElt[2]; //!<Detection elemtents obtained from position(X,Y,Z). fGetDetElt[1] is for the case where there is an overlap.
70 Int_t fTrackFilter[10]; //!<To select track for the efficiency calculation.
71
72 TClonesArray * fTrackParams;
73 AliMUONTrackParam* fTrackParam;
74 AliMUONVCluster * fCluster;
75
76 TClonesArray* fDetEltTDHistList; //!<List of histograms of the tracks detected in the detection elements
77 TClonesArray* fDetEltTTHistList; //!<List of histograms of the tracks which have passed through the detection elements
78
79 static const Int_t fNbrOfChamber; ///< The total number of chamber in the tracking system.
80 static const Int_t fNbrOfStation; ///< The total number of station in the tracking system.
81 static const Int_t fNbrOfDetectionElt[10]; ///< The total number of detection element in each chamber.
82 static const Int_t fFirstDetectionElt[10]; ///< The Id of the first detection element of each chamber.
83 static const Int_t fOffset; ///< fFirstDetectionElt[iChamber] = fOffset * (iChamber+1).
84 static const Int_t fOverlapSize; ///< Average size (in cm) of the overlap area between two detection eltement.
85 static const Int_t fYSlatSize; ///< Average size (in cm) of the overlap area between two detection eltement.
86
87 ClassDef(AliCheckMuonDetEltResponse, 0)
88};
89#endif