Preprocessor with new DA
[u/mrichter/AliRoot.git] / MUON / AliMUONRecoCheck.h
CommitLineData
b8dc484b 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
692de412 7/* $Id$ */
8
6b092dfc 9/// \ingroup evaluation
692de412 10/// \class AliMUONRecoCheck
11/// \brief Utility class to check reconstruction
12
b8dc484b 13#include <TObject.h>
b8dc484b 14
15class TClonesArray;
96ebe67e 16class AliMCEventHandler;
48217459 17class AliMUONDataInterface;
18class AliMUONVTrackStore;
9bdda5f6 19class AliESDEvent;
b8dc484b 20
21class AliMUONRecoCheck : public TObject
22{
23public:
96ebe67e 24 AliMUONRecoCheck(Char_t *chLoader, Char_t *pathSim = "./");
48217459 25 virtual ~AliMUONRecoCheck();
26
9bdda5f6 27 /// Return the list of reconstructed tracks
48217459 28 AliMUONVTrackStore* ReconstructedTracks(Int_t event);
29
9bdda5f6 30 /// Create and return a list of reconstructed tracks from ESD data.
31 static AliMUONVTrackStore* ReconstructedTracks(AliESDEvent* esd, Bool_t padMissing = kFALSE);
32
33 /// Return reference muon tracks
48217459 34 AliMUONVTrackStore* TrackRefs(Int_t event);
b8dc484b 35
9bdda5f6 36 /// Return reconstructible reference tracks
48217459 37 AliMUONVTrackStore* ReconstructibleTracks(Int_t event);
38
9bdda5f6 39 /// Return the total number of events.
40 Int_t NumberOfEvents() const;
41
42 /// Return the interface to the reconstructed data.
43 AliMUONDataInterface* GetDataInterface() { return fDataInterface; };
44
45 /// Return the interface to the Monte Carlo data.
46 AliMCEventHandler* GetMCEventHandler() { return fMCEventHandler; };
47
b8dc484b 48private:
71a2d3aa 49 /// Not implemented
50 AliMUONRecoCheck(const AliMUONRecoCheck& rhs);
51 /// Not implemented
52 AliMUONRecoCheck& operator = (const AliMUONRecoCheck& rhs);
068e4c36 53
96ebe67e 54 void ResetStores();
55
56 void MakeTrackRefs();
48217459 57
96ebe67e 58 void CleanMuonTrackRef(const AliMUONVTrackStore *tmpTrackRefStore);
48217459 59
96ebe67e 60 void MakeReconstructibleTracks();
61
48217459 62private:
96ebe67e 63 AliMCEventHandler* fMCEventHandler; ///< to access MC truth information
48217459 64 AliMUONDataInterface* fDataInterface; ///< to access MUON data
65
96ebe67e 66 Int_t fCurrentEvent; ///< current event number
67
68 AliMUONVTrackStore* fTrackRefStore; ///< current simulated tracks (owner)
69 AliMUONVTrackStore* fRecoTrackRefStore; ///< current reconstructible tracks (owner)
70 AliMUONVTrackStore* fRecoTrackStore; ///< current reconstructed tracks (owner)
71
54d7ba50 72 ClassDef(AliMUONRecoCheck, 0) //Utility class to check reconstruction
b8dc484b 73};
74
75#endif
76