5f7ff8efee91fbb86743a57409549d09e9a8eb90
[u/mrichter/AliRoot.git] / FASTSIM / AliFastMuonTrackingRes.h
1 #ifndef ALIFASTMUONTRACKINGRES_H
2 #define ALIFASTMUONTRACKINGRES_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
8 // Implementation of AliFastResponse for the Muon Spectrometer resolution.
9 // The response depends on the charge of the muon and
10 // the background level.
11 // The class uses the instance of an object of type AliMUONFastTracking to 
12 // obtain the smearing parameters.
13 // Author: andreas.morsch@cern.ch
14
15 #include "AliFastResponse.h"
16 class AliMUONFastTracking;
17
18 class AliFastMuonTrackingRes :  public AliFastResponse {
19  public:
20     AliFastMuonTrackingRes();
21     AliFastMuonTrackingRes(const AliFastMuonTrackingRes& glauber);
22     virtual ~AliFastMuonTrackingRes(){;}
23     void SetBackground(Float_t bg = 1.) {fBackground = bg;}
24     void SetCharge(Float_t charge = 1.) {fCharge     = charge;}
25     virtual void Init();
26     virtual void Evaluate(Float_t   p,  Float_t  theta , Float_t   phi,
27                           Float_t& pS,  Float_t& thetaS, Float_t&  phiS);
28     virtual Float_t Evaluate(AliFastParticle* part) {
29       return AliFastResponse::Evaluate(part);
30     }
31     virtual Float_t Evaluate(Float_t  pt,  Float_t  theta , Float_t   phi) {
32       return AliFastResponse::Evaluate(pt,theta,phi);
33     }
34       // Copy
35     AliFastMuonTrackingRes& operator=(const AliFastMuonTrackingRes & rhs);
36
37  protected:
38     Float_t              fBackground;   // Background level
39     Float_t              fCharge;       // Current charge
40     
41     AliMUONFastTracking* fFastTracking; //!Pointer to Fast Tracking Data Handler
42     ClassDef(AliFastMuonTrackingRes,1)  // Fast MUON Tracking 
43 };
44
45 #endif
46
47