AliRoot Core  edcc906 (edcc906)
AliMUONTrackHitPattern.h
Go to the documentation of this file.
1 #ifndef ALIMUONTRACKHITPATTERN_H
2 #define ALIMUONTRACKHITPATTERN_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice */
5 
6 /*$Id$*/
7 
12 // Author: Diego Stocco
13 
14 #include <TObject.h>
15 //#include <TObjArray.h>
16 
17 class AliMUONVTrackStore;
20 class AliMUONTrackParam;
22 class AliMUONVDigitStore;
24 class AliMUONTrack;
25 class AliMUONRecoParam;
27 class AliMpPad;
28 class TVector3;
29 class TArrayI;
30 
31 class AliMUONTrackHitPattern : public TObject
32 {
33 public:
34 
36  const AliMUONGeometryTransformer& transformer,
37  const AliMUONVDigitStore& digitStore,
38  const AliMUONTriggerUtilities* triggerUtilities);
39  virtual ~AliMUONTrackHitPattern(); // Destructor
40 
41  void ExecuteValidation(const AliMUONVTrackStore& trackStore,
42  const AliMUONVTriggerTrackStore& triggerTrackStore,
43  const AliMUONVTriggerStore& triggerStore) const;
44 
46  AliMUONTrackParam& trackParam,
47  const AliMUONVTriggerTrackStore& triggerTrackStore,
48  const AliMUONVTriggerStore& triggerStore) const;
49 
50  UInt_t GetHitPattern(const AliMUONTrackParam& trackParam, Bool_t isTriggerTrack) const;
51 
52  UInt_t GetHitPattern(const AliMUONTriggerTrack* matchedTriggerTrack) const; // obsolete
53  UInt_t GetHitPattern(AliMUONTrackParam* trackParam) const; // obsolete
54 
55 protected:
56  void ApplyMCSCorrections(AliMUONTrackParam& trackParam) const;
57 
58  Int_t GetTrackParamAtChamber(const AliMUONTrackParam& inputTrackParam, Int_t chamber,
59  TObjArray& trackParamList, TArrayI& foundDetElemId, TObjArray& padsFromPos) const;
60 
61  Bool_t FindMatchingPads(const AliMUONTrackParam* trackParam,
62  TArrayI& matchedDetElemId, TObjArray& pads,
63  const AliMUONVDigitStore& digitStore, Bool_t isTriggerTrack) const;
64 
65  Bool_t PosInDetElemIdLocal(TVector3& localCoor, const TVector3& globalPoint1, const TVector3& globalPoint2, Int_t detElemId) const;
66 
68  const AliMUONRecoParam* GetRecoParam() const { return fkRecoParam; }
69 
70  // THE FOLLOWING METHODS ARE OBSOLETE
71 
72  // Methods for hit pattern from tracker track
73  void FindPadMatchingTrack(const AliMUONTrackParam& trackParam,
74  Bool_t isMatch[2], Int_t iChamber) const;
75 
76  Float_t MinDistanceFromPad(Float_t xPad, Float_t yPad, Float_t zPad,
77  Float_t dpx, Float_t dpy,
78  const AliMUONTrackParam& trackParam) const;
79 
80  // Methods for hit pattern from matched trigger track
81  Bool_t PerformTrigTrackMatch(UInt_t &pattern, const AliMUONTriggerTrack* matchedTrigTrack) const; // obsolete
82 
83  Bool_t FindPadMatchingTrig(const TVector3& vec11, const TVector3& vec21, Int_t matchedDetElemId[2], TObjArray& matchedPads) const; // obsolete
84 
85  Float_t PadMatchTrack(const AliMpPad& pad, const TVector3& trackPosAtPad) const; // obsolete
86 
87  Int_t DetElemIdFromPos(Float_t x, Float_t y, Int_t chamber, Int_t foundDetElemId[2]) const; // obsolete
88 
89  Bool_t PadsFromPos(const TVector3& vec11, const TVector3& vec21, Int_t detElemId, TObjArray& pads) const; // obsolete
90 
91 
92  Bool_t IsCloseToAccEdge(TObjArray& pads, Int_t detElemId, Float_t coor[2]) const; // obsolete
93 
94  Bool_t IsMasked(const AliMpPad& pad, Int_t detElemId, Int_t cathode, const TVector3& vec11, const TVector3& vec21) const; // obsolete
95 
96 private:
101 
106 
107  const Float_t fkMaxDistance;
108 
109  ClassDef(AliMUONTrackHitPattern, 0) // MUON track hit pattern
110 };
111 
112 #endif
Bool_t FindMatchingPads(const AliMUONTrackParam *trackParam, TArrayI &matchedDetElemId, TObjArray &pads, const AliMUONVDigitStore &digitStore, Bool_t isTriggerTrack) const
Bool_t IsCloseToAccEdge(TObjArray &pads, Int_t detElemId, Float_t coor[2]) const
Base class of a track container.
Int_t DetElemIdFromPos(Float_t x, Float_t y, Int_t chamber, Int_t foundDetElemId[2]) const
Bool_t FindPadMatchingTrig(const TVector3 &vec11, const TVector3 &vec21, Int_t matchedDetElemId[2], TObjArray &matchedPads) const
Interface for a digit container.
void ApplyMCSCorrections(AliMUONTrackParam &trackParam) const
AliMUONTrackHitPattern(const AliMUONRecoParam *recoParam, const AliMUONGeometryTransformer &transformer, const AliMUONVDigitStore &digitStore, const AliMUONTriggerUtilities *triggerUtilities)
#define TObjArray
Float_t PadMatchTrack(const AliMpPad &pad, const TVector3 &trackPosAtPad) const
Top container class for geometry transformations.
AliMUONTrackHitPattern & operator=(const AliMUONTrackHitPattern &rhs)
Not implemented.
Int_t GetTrackParamAtChamber(const AliMUONTrackParam &inputTrackParam, Int_t chamber, TObjArray &trackParamList, TArrayI &foundDetElemId, TObjArray &padsFromPos) const
Track parameters in ALICE dimuon spectrometer.
const AliMUONVDigitStore & fkDigitStore
! digitStore
Class with MUON reconstruction parameters.
AliTPCfastTrack * track
Reconstructed trigger track in ALICE dimuon spectrometer.
Bool_t PosInDetElemIdLocal(TVector3 &localCoor, const TVector3 &globalPoint1, const TVector3 &globalPoint2, Int_t detElemId) const
Utilities for trigger (check if pad is masked)
Float_t MinDistanceFromPad(Float_t xPad, Float_t yPad, Float_t zPad, Float_t dpx, Float_t dpy, const AliMUONTrackParam &trackParam) const
Base class of a trigger information store.
const AliMUONGeometryTransformer & fkTransformer
! geometry transformer
Class for the MUON track hit pattern.
void FindPadMatchingTrack(const AliMUONTrackParam &trackParam, Bool_t isMatch[2], Int_t iChamber) const
Base class of a trigger track store.
AliMUONTriggerTrack * MatchTriggerTrack(AliMUONTrack *track, AliMUONTrackParam &trackParam, const AliMUONVTriggerTrackStore &triggerTrackStore, const AliMUONVTriggerStore &triggerStore) const
const AliMUONTriggerUtilities * fkTriggerUtilities
! trigger utilities for mapping
Bool_t PadsFromPos(const TVector3 &vec11, const TVector3 &vec21, Int_t detElemId, TObjArray &pads) const
UInt_t GetHitPattern(const AliMUONTrackParam &trackParam, Bool_t isTriggerTrack) const
const Float_t fkMaxDistance
! Maximum distance for reference // obsolete
void ExecuteValidation(const AliMUONVTrackStore &trackStore, const AliMUONVTriggerTrackStore &triggerTrackStore, const AliMUONVTriggerStore &triggerStore) const
const AliMUONRecoParam * fkRecoParam
! pointer to reco parameters
Bool_t PerformTrigTrackMatch(UInt_t &pattern, const AliMUONTriggerTrack *matchedTrigTrack) const
Class which encapsuate all information about a pad.
Definition: AliMpPad.h:22
Reconstructed track in ALICE dimuon spectrometer.
Definition: AliMUONTrack.h:24
const AliMUONRecoParam * GetRecoParam() const
Return reco parameters.
Bool_t IsMasked(const AliMpPad &pad, Int_t detElemId, Int_t cathode, const TVector3 &vec11, const TVector3 &vec21) const