]> git.uio.no Git - u/mrichter/AliRoot.git/blob - MUON/AliMUONRecoCheck.h
The variable fSeed is not really needed as the fitter is called in a way that the...
[u/mrichter/AliRoot.git] / MUON / AliMUONRecoCheck.h
1 #ifndef ALIMUONRECOCHECK_H
2 #define ALIMUONRECOCHECK_H
3
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6
7 /* $Id$ */
8
9 /// \ingroup evaluation
10 /// \class AliMUONRecoCheck
11 /// \brief Utility class to check reconstruction
12
13 #include <TObject.h>
14
15 class TClonesArray;
16 class TFile;
17 class TTree;
18 class AliESDEvent;
19 class AliMCEventHandler;
20 class AliMUONVTrackStore;
21
22 class AliMUONRecoCheck : public TObject 
23 {
24 public:
25   AliMUONRecoCheck(const Char_t *chLoader, const Char_t *pathSim = "./");
26   AliMUONRecoCheck(AliESDEvent *esdEvent, AliMCEventHandler *mcEventHandler);
27   virtual ~AliMUONRecoCheck();
28
29   /// Return the list of reconstructed tracks
30   AliMUONVTrackStore* ReconstructedTracks(Int_t event);
31   
32   /// Return reference muon tracks
33   AliMUONVTrackStore* TrackRefs(Int_t event);
34
35   /// Return reconstructible reference tracks
36   AliMUONVTrackStore* ReconstructibleTracks(Int_t event);
37   
38   /// Return the total number of events.
39   Int_t NumberOfEvents() const;
40   
41   /// Return the reconstructed data of current event
42   const AliESDEvent* GetESDEvent() { return fESDEvent; }
43   
44   /// Return the interface to the Monte Carlo data of current event
45   const AliMCEventHandler* GetMCEventHandler() { return fMCEventHandler; }
46   
47 private:
48   /// Not implemented
49   AliMUONRecoCheck(const AliMUONRecoCheck& rhs);
50   /// Not implemented
51   AliMUONRecoCheck& operator = (const AliMUONRecoCheck& rhs);
52
53   void ResetStores();
54   
55   void MakeReconstructedTracks();
56   
57   void MakeTrackRefs();
58   
59   void CleanMuonTrackRef(const AliMUONVTrackStore *tmpTrackRefStore);
60   
61   void MakeReconstructibleTracks();
62
63 private:
64   AliMCEventHandler* fMCEventHandler; ///< to access MC truth information
65   AliESDEvent* fESDEvent; ///< ESD event to access MUON data
66   TTree* fESDTree;        ///< ESD tree to access MUON data
67   TFile* fESDFile;        ///< ESD file to access MUON data
68   
69   Int_t fCurrentEvent; ///< current event number
70   
71   AliMUONVTrackStore* fTrackRefStore;     ///< current simulated tracks (owner)
72   AliMUONVTrackStore* fRecoTrackRefStore; ///< current reconstructible tracks (owner)
73   AliMUONVTrackStore* fRecoTrackStore;    ///< current reconstructed tracks (owner)
74   
75   Bool_t fESDEventOwner;         ///< using constructor from the analysis task
76
77   ClassDef(AliMUONRecoCheck, 0)   //Utility class to check reconstruction
78 };
79
80 #endif
81