#include "AliVParticle.h"
class AliESDMuonCluster;
+class AliESDEvent;
class TClonesArray;
class TLorentzVector;
void SetCovariances(const TMatrixD& cov);
void GetCovarianceXYZPxPyPz(Double_t cov[21]) const;
+ // Get and Set methods for the transverse position r of the track at the end of the absorber
+ Double_t GetRAtAbsorberEnd() const { return fRAtAbsorberEnd; }
+ void SetRAtAbsorberEnd(Double_t r) { fRAtAbsorberEnd = r; }
+
// Get and Set methods for global tracking info
Double_t GetChi2(void) const {return fChi2;}
void SetChi2(Double_t Chi2) {fChi2 = Chi2;}
Double_t Eta() const { return -TMath::Log(TMath::Tan(0.5 * Theta()));}
Double_t Y() const { return (Pz()/E() != 1.) ? TMath::ATanH(Pz()/E()) : FLT_MAX; }
Short_t Charge() const { return (Short_t)TMath::Sign(1., GetInverseBendingMomentum()); }
+
+
+ // Dummy
const Double_t *PID() const { return (Double_t*)0x0; }
+ Int_t PdgCode() const {return 0;}
/// Set the corresponding MC track number
void SetLabel(Int_t label) {fLabel = label;}
/// Getting crossed slat or info
static Int_t GetSlatOrInfo(UShort_t pattern);
+ AliESDEvent* GetESDEvent() const {return fESDEvent;}
+ void SetESDEvent(AliESDEvent* evt) {fESDEvent = evt;}
protected:
// parameters at vertex
/// [10]=<X,InvP_yz> [11]=<ThetaX,InvP_yz> [12]=<Y,InvP_yz> [13]=<ThetaY,InvP_yz> [14]=<InvP_yz,InvP_yz> </pre>
Double32_t fCovariances[15]; ///< \brief reduced covariance matrix of parameters AT FIRST CHAMBER
+ Double32_t fRAtAbsorberEnd; ///< transverse position r of the track at the end of the absorber
+
// global tracking info
Double32_t fChi2; ///< chi2 in the MUON track fit
Double32_t fChi2MatchTrigger; ///< chi2 of trigger/track matching
mutable TClonesArray* fClusters; ///< Array of clusters attached to the track
Int_t fLabel; ///< point to the corresponding MC track
+
+ AliESDEvent* fESDEvent; //!Pointer back to event to which the track belongs
- ClassDef(AliESDMuonTrack,11) // MUON ESD track class
+ ClassDef(AliESDMuonTrack,13) // MUON ESD track class
};
#endif