]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MUON/AliMUONTrackReconstructor.h
Histogram ranges changed to cut off saturation peak and noise
[u/mrichter/AliRoot.git] / MUON / AliMUONTrackReconstructor.h
CommitLineData
f29ba3e1 1#ifndef ALIMUONTRACKRECONSTRUCTOR_H
29f1b13a 2#define ALIMUONTRACKRECONSTRUCTOR_H
692de412 3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
a9e2aefa 5
692de412 6/* $Id$ */
7
8/// \ingroup rec
9/// \class AliMUONTrackReconstructor
2457f726 10/// \brief Standard class for the MUON track reconstruction
3831f268 11
2457f726 12#include "AliMUONVTrackReconstructor.h"
a9e2aefa 13
96ebe67e 14class AliMUONVCluster;
15class AliMUONVClusterStore;
ea94c18b 16class AliMUONTrackParam;
de2cd600 17class AliMUONTrack;
a9e2aefa 18
7ec3b9cf 19class AliMUONTrackReconstructor : public AliMUONVTrackReconstructor
20{
ea94c18b 21
a9e2aefa 22 public:
ea94c18b 23
1fef78c8 24 AliMUONTrackReconstructor(AliMUONVClusterServer& clusterServer); // default Constructor
cc9e7528 25 virtual ~AliMUONTrackReconstructor(); // Destructor
a9e2aefa 26
7deb8eb0 27 virtual Bool_t RefitTrack(AliMUONTrack &track);
28
8429a5e4 29
2457f726 30 protected:
7fc86979 31
ea94c18b 32 // Functions
1fef78c8 33 virtual void MakeTrackCandidates(AliMUONVClusterStore& clusterStore);
34 virtual void FollowTracks(AliMUONVClusterStore& clusterStore);
96ebe67e 35 virtual void ComplementTracks(const AliMUONVClusterStore& clusterStore);
7332f213 36 virtual void ImproveTrack(AliMUONTrack &track);
37 virtual void FinalizeTrack(AliMUONTrack &track);
2457f726 38
5e671e06 39
a9e2aefa 40 private:
2457f726 41
71a2d3aa 42 /// Not implemented copy constructor
43 AliMUONTrackReconstructor (const AliMUONTrackReconstructor& rhs);
44 /// Not implemented copy assignment operator
45 AliMUONTrackReconstructor& operator=(const AliMUONTrackReconstructor& rhs);
2457f726 46
1fef78c8 47 Bool_t FollowTrackInStation(AliMUONTrack &trackCandidate, AliMUONVClusterStore& clusterStore, Int_t nextStation);
ea94c18b 48
96ebe67e 49 Double_t TryTwoClusters(const AliMUONTrackParam &trackParamAtCluster, AliMUONVCluster* cluster2, AliMUONTrackParam &trackParamAtCluster2);
ea94c18b 50
96ebe67e 51 void UpdateTrack(AliMUONTrack &track, AliMUONTrackParam &trackParamAtCluster);
52 void UpdateTrack(AliMUONTrack &track, AliMUONTrackParam &trackParamAtCluster1, AliMUONTrackParam &trackParamAtCluster2);
ea94c18b 53
1fef78c8 54 Bool_t RecoverTrack(AliMUONTrack &track, AliMUONVClusterStore& clusterStore, Int_t nextStation);
ea94c18b 55
96ebe67e 56 void SetVertexErrXY2ForFit(AliMUONTrack &trackCandidate);
ea94c18b 57
96ebe67e 58 void Fit(AliMUONTrack &track, Bool_t includeMCS, Bool_t fitWithVertex, Bool_t calcCov);
83dbc640 59
29fc2c86 60
29f1b13a 61 ClassDef(AliMUONTrackReconstructor, 0) // MUON track reconstructor in ALICE
7ec3b9cf 62};
a9e2aefa 63
64#endif