]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MUON/AliMUONTracker.h
Getting rid of warnings.
[u/mrichter/AliRoot.git] / MUON / AliMUONTracker.h
CommitLineData
196471e9 1#ifndef ALIMUONTRACKER_H
2#define ALIMUONTRACKER_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
e41c38cf 6// $Id$
196471e9 7
6b092dfc 8/// \ingroup rec
196471e9 9/// \class AliMUONTracker
10/// \brief MUON base Tracker
d81d2e8e 11///
9bf6860b 12// Authors: Christian Finck, Laurent Aphecetche, SUBATECH Nantes
196471e9 13
14#include "AliTracker.h"
e64fdf8a 15
196471e9 16class AliCluster;
af885e0f 17class AliESDEvent;
e64fdf8a 18class AliMUONDigitMaker;
19class AliMUONGeometryTransformer;
20class AliMUONTrackHitPattern;
32ab62c9 21class AliMUONTriggerCircuit;
9bf6860b 22class AliMUONVClusterServer;
e64fdf8a 23class AliMUONVClusterStore;
9bf6860b 24class AliMUONVDigitStore;
196471e9 25class AliMUONVTrackReconstructor;
e64fdf8a 26class AliMUONVTrackStore;
27class AliMUONVTriggerStore;
9bf6860b 28class AliMUONVTriggerTrackStore;
196471e9 29
30class AliMUONTracker : public AliTracker
31{
32 public:
33
9bf6860b 34 AliMUONTracker(AliMUONVClusterServer* clusterServer,
35 const AliMUONVDigitStore& digitStore,
1fef78c8 36 const AliMUONDigitMaker* digitMaker=0,
e64fdf8a 37 const AliMUONGeometryTransformer* transformer=0,
683cb6c5 38 const AliMUONTriggerCircuit* triggerCircuit=0);
196471e9 39 virtual ~AliMUONTracker();
196471e9 40
af885e0f 41 virtual Int_t Clusters2Tracks(AliESDEvent* esd);
e64fdf8a 42
e64fdf8a 43 virtual Int_t LoadClusters(TTree* clustersTree);
44
e64fdf8a 45 virtual void UnloadClusters();
46
71a2d3aa 47 /// Dummy implementation
af885e0f 48 virtual Int_t PropagateBack(AliESDEvent* /*event*/) {return 0;}
71a2d3aa 49 /// Dummy implementation
af885e0f 50 virtual Int_t RefitInward(AliESDEvent* /*event*/) {return 0;}
71a2d3aa 51 /// Dummy implementation
196471e9 52 virtual AliCluster *GetCluster(Int_t /*index*/) const {return 0;}
196471e9 53
9bf6860b 54 static AliMUONVTrackReconstructor* CreateTrackReconstructor(const char* trackingMode, AliMUONVClusterServer* clusterServer);
55
196471e9 56private:
71a2d3aa 57 /// Not implemented
58 AliMUONTracker(const AliMUONTracker& rhs);
59 /// Not implemented
60 AliMUONTracker& operator=(const AliMUONTracker& rhs);
61
1fef78c8 62 AliMUONVClusterStore* ClusterStore() const;
63
9bf6860b 64 AliMUONVTriggerTrackStore* TriggerTrackStore() const;
3304fa09 65
af885e0f 66 void FillESD(AliMUONVTrackStore& trackStore, AliESDEvent* esd) const;
e64fdf8a 67
9bf6860b 68 void SetupClusterServer(AliMUONVClusterServer& clusterServer);
69
e64fdf8a 70private:
e64fdf8a 71 const AliMUONDigitMaker* fDigitMaker; //!< digit maker (not owner)
72 const AliMUONGeometryTransformer* fTransformer; //!< geometry transformer (not owner)
3304fa09 73 const AliMUONTriggerCircuit* fTriggerCircuit; //!< trigger circuit (not owner)
e64fdf8a 74 AliMUONTrackHitPattern* fTrackHitPatternMaker; //!< trigger hit pattern maker
3304fa09 75 AliMUONVTrackReconstructor* fTrackReco; //!< track reconstructor
1fef78c8 76 mutable AliMUONVClusterStore* fClusterStore; //!< cluster container
e64fdf8a 77 AliMUONVTriggerStore* fTriggerStore; //!< trigger information
9bf6860b 78 AliMUONVClusterServer* fClusterServer; //!< to get clusters
79 Bool_t fIsOwnerOfClusterServer; //!< whether we are owner of the cluster server
89b4e052 80 const AliMUONVDigitStore& fDigitStore; //!< digit info to fill in ESD
9bf6860b 81 mutable AliMUONVClusterStore* fInputClusterStore; //!< cluster container
82 mutable AliMUONVTriggerTrackStore* fTriggerTrackStore; //!< trigger track store
e64fdf8a 83
196471e9 84 ClassDef(AliMUONTracker,0) //tracker base class for MUON
85};
86#endif