1 #ifndef ALIMUONRECOCHECK_H
2 #define ALIMUONRECOCHECK_H
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
9 /// \ingroup evaluation
10 /// \class AliMUONRecoCheck
11 /// \brief Utility class to check reconstruction
16 class AliMCEventHandler;
17 class AliMUONDataInterface;
18 class AliMUONVTrackStore;
21 class AliMUONRecoCheck : public TObject
24 AliMUONRecoCheck(Char_t *chLoader, Char_t *pathSim = "./");
25 virtual ~AliMUONRecoCheck();
27 /// Return the list of reconstructed tracks
28 AliMUONVTrackStore* ReconstructedTracks(Int_t event);
30 /// Create and return a list of reconstructed tracks from ESD data.
31 static AliMUONVTrackStore* ReconstructedTracks(AliESDEvent* esd, Bool_t padMissing = kFALSE);
33 /// Return reference muon tracks
34 AliMUONVTrackStore* TrackRefs(Int_t event);
36 /// Return reconstructible reference tracks
37 AliMUONVTrackStore* ReconstructibleTracks(Int_t event);
39 /// Return the total number of events.
40 Int_t NumberOfEvents() const;
42 /// Return the interface to the reconstructed data.
43 AliMUONDataInterface* GetDataInterface() { return fDataInterface; };
45 /// Return the interface to the Monte Carlo data.
46 AliMCEventHandler* GetMCEventHandler() { return fMCEventHandler; };
50 AliMUONRecoCheck(const AliMUONRecoCheck& rhs);
52 AliMUONRecoCheck& operator = (const AliMUONRecoCheck& rhs);
58 void CleanMuonTrackRef(const AliMUONVTrackStore *tmpTrackRefStore);
60 void MakeReconstructibleTracks();
63 AliMCEventHandler* fMCEventHandler; ///< to access MC truth information
64 AliMUONDataInterface* fDataInterface; ///< to access MUON data
66 Int_t fCurrentEvent; ///< current event number
68 AliMUONVTrackStore* fTrackRefStore; ///< current simulated tracks (owner)
69 AliMUONVTrackStore* fRecoTrackRefStore; ///< current reconstructible tracks (owner)
70 AliMUONVTrackStore* fRecoTrackStore; ///< current reconstructed tracks (owner)
72 ClassDef(AliMUONRecoCheck, 0) //Utility class to check reconstruction