]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG3/AliPWG3TrackExtrapInterface.h
bugfix: boundery check for static hit array
[u/mrichter/AliRoot.git] / PWG3 / AliPWG3TrackExtrapInterface.h
1 #ifndef AliPWG3TRACKEXTRAPINTERFACE_H
2 #define AliPWG3TRACKEXTRAPINTERFACE_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 /// \ingroup rec
7 /// \class AliPWG3TrackExtrapInterface
8 /// \brief Interface to MUON classes
9 ///
10 //////////////////////////////////////////
11 /// Interface for MUON track extrapolation
12 //////////////////////////////////////////
13
14 #include <TObject.h>
15
16 class AliMagF;
17 class AliESDMuonTrack;
18
19 class AliPWG3TrackExtrapInterface : public TObject 
20 {
21  public:
22         /// Constructor
23   AliPWG3TrackExtrapInterface() : TObject(){};
24         /// Destructor
25   virtual ~AliPWG3TrackExtrapInterface(){};
26   
27   static void   SetMagField(const AliMagF* magField);
28   static Bool_t SetGeometry(const char* fileName = "geometry.root");
29   
30   // extrapolation without any absorber correction
31   static void ExtrapToVertexUncorrected(AliESDMuonTrack* muonTrack, Double_t zVtx);
32   // extrapolation corrected for energy loss in absorber only
33   static void ExtrapToVertexWithELoss(AliESDMuonTrack* muonTrack, Double_t zVtx);
34   // extrapolation corrected for multiple scattering in absorber only
35   static void ExtrapToVertexWithBranson(AliESDMuonTrack* muonTrack, Double_t vtx[3]);
36   // extrapolation corrected for all absorber effect (multiple scattering and energy loss)
37   static void ExtrapToVertex(AliESDMuonTrack* muonTrack, Double_t vtx[3]);
38   
39   static Double_t TotalMomentumEnergyLoss(AliESDMuonTrack* muonTrack, Double_t zVtx);
40   static Double_t TotalMomentumEnergyLoss(AliESDMuonTrack* muonTrack, Double_t vtx[3]);
41   
42  private:
43   // Functions
44   AliPWG3TrackExtrapInterface(const AliPWG3TrackExtrapInterface& muonInterface);
45   AliPWG3TrackExtrapInterface& operator=(const AliPWG3TrackExtrapInterface& muonInterface);
46   
47   
48   ClassDef(AliPWG3TrackExtrapInterface, 0) // Tools for track extrapolation in ALICE dimuon spectrometer
49 };
50         
51 #endif