CbmRoot
PairAnalysisEvent.h
Go to the documentation of this file.
1 #ifndef PAIRANALYSISEVENT_H
2 #define PAIRANALYSISEVENT_H
3 
4 //#############################################################
5 //# #
6 //# Class PairAnalysisEvent #
7 //# Class for event structure and references to tracks #
8 //# #
9 //# Authors: #
10 //# Julian Book, Uni Ffm / Julian.Book@cern.ch #
11 //# #
12 //#############################################################
13 #include <TClonesArray.h>
14 #include <TNamed.h>
15 #include <TObjArray.h>
16 
17 #include "CbmDefs.h"
18 #include "CbmVertex.h"
19 
20 class FairRootManager;
21 class FairMCEventHeader;
22 class CbmStsTrack;
23 class PairAnalysisTrack;
24 
25 class PairAnalysisEvent : public TNamed {
26 public:
28  PairAnalysisEvent(const char* name, const char* title);
29 
30  virtual ~PairAnalysisEvent();
31 
32  void SetInput(FairRootManager* man);
33  void Init();
34 
35 
36  // getters
37  FairMCEventHeader* GetMCHeader() const { return fMCHeader; }
38  CbmVertex* GetPrimaryVertex() const { return fPrimVertex; }
39  Int_t GetNumberOfTracks() const {
40  return (fTracks ? fTracks->GetEntriesFast() : -1);
41  }
42  Int_t GetNumberOfMCTracks() const {
43  return (fMCTracks ? fMCTracks->GetEntriesFast() : -1);
44  }
45  Int_t GetNumberOfVageMatches() const { return fMultiMatch; }
46  Int_t GetNumberOfMatches(ECbmModuleId det) const;
47  Int_t GetNumberOfHits(ECbmModuleId det) const;
48  Int_t GetNumberOfHitMatches(ECbmModuleId det) const;
49  Int_t GetNumberOfPoints(ECbmModuleId det) const;
50 
51  TClonesArray* GetHits(ECbmModuleId det) const;
52  TClonesArray* GetHitMatches(ECbmModuleId det) const;
53  TClonesArray* GetPoints(ECbmModuleId det) const;
54 
55  TClonesArray* GetCluster(ECbmModuleId det) const;
56 
57  TObjArray* GetTracks() const { return fTracks; }
59 
60  virtual void Clear(Option_t* opt = "C");
61 
62 
63 protected:
64  Int_t GetMvdMatchingIndex(CbmStsTrack* track) const;
65 
66 
67 private:
68  FairMCEventHeader* fMCHeader = NULL; // mc header
69  TClonesArray* fMCTracks = NULL; // mc tracks
70  TClonesArray* fStsMatches = NULL; // STS matches
71  TClonesArray* fMuchMatches = NULL; // MUCH matches
72  TClonesArray* fTrdMatches = NULL; // TRD matches
73  TClonesArray* fRichMatches = NULL; // RICH matches
74 
75  TClonesArray* fMvdPoints = NULL; // MVD points
76  TClonesArray* fStsPoints = NULL; // STS points
77  TClonesArray* fMuchPoints = NULL; // MUCH points
78  TClonesArray* fRichPoints = NULL; // RICH points
79  TClonesArray* fTrdPoints = NULL; // TRD points
80  TClonesArray* fTofPoints = NULL; // TOF points
81 
82  TClonesArray* fGlobalTracks = NULL; // global tracks
83  TClonesArray* fTrdTracks = NULL; // TRD tracks
84  TClonesArray* fStsTracks = NULL; // STS tracks
85  TClonesArray* fMuchTracks = NULL; // MUCH tracks
86  TClonesArray* fRichRings = NULL; // RICH rings
87 
88  TClonesArray* fMvdHits = NULL; // MVD hits
89  TClonesArray* fStsHits = NULL; // STS hits
90  TClonesArray* fMuchHits = NULL; // MUCH pixel hits
91  TClonesArray* fMuchHitsStraw = NULL; // MUCH straw hits
92  TClonesArray* fTrdHits = NULL; // TRD hits
93  TClonesArray* fRichHits = NULL; // RICH hits
94  TClonesArray* fTofHits = NULL; // TOF hits
95 
96  TClonesArray* fRichProjection = NULL; // RICH projection
97 
98  TClonesArray* fMvdHitMatches = NULL; // hit matches
99  TClonesArray* fStsHitMatches = NULL; // hit matches
100  TClonesArray* fRichHitMatches = NULL; // hit matches
101  TClonesArray* fMuchHitMatches = NULL; // hit matches
102  TClonesArray* fTrdHitMatches = NULL; // hit matches
103  TClonesArray* fTofHitMatches = NULL; // hit matches
104 
105  TClonesArray* fTrdCluster = NULL; // TRD cluster
106 
107  CbmVertex* fPrimVertex = NULL; // primary vertex
108  TClonesArray* fFastTracks = NULL; // fast(sim) tracks
109  TObjArray* fTracks; // papa tracks
110 
111  Int_t fMultiMatch = 0; // number of mutiple matched tracks
112 
115 
116  ClassDef(PairAnalysisEvent, 7) // Event structure
117 };
118 
119 
120 #endif
PairAnalysisEvent::fMCTracks
TClonesArray * fMCTracks
Definition: PairAnalysisEvent.h:69
PairAnalysisEvent::fStsTracks
TClonesArray * fStsTracks
Definition: PairAnalysisEvent.h:84
PairAnalysisEvent::GetPrimaryVertex
CbmVertex * GetPrimaryVertex() const
Definition: PairAnalysisEvent.h:38
CbmVertex.h
PairAnalysisEvent::GetNumberOfPoints
Int_t GetNumberOfPoints(ECbmModuleId det) const
Definition: PairAnalysisEvent.cxx:496
PairAnalysisEvent::fRichHits
TClonesArray * fRichHits
Definition: PairAnalysisEvent.h:93
PairAnalysisEvent::fMuchHitsStraw
TClonesArray * fMuchHitsStraw
Definition: PairAnalysisEvent.h:91
PairAnalysisEvent::fStsHits
TClonesArray * fStsHits
Definition: PairAnalysisEvent.h:89
PairAnalysisEvent::GetMvdMatchingIndex
Int_t GetMvdMatchingIndex(CbmStsTrack *track) const
Definition: PairAnalysisEvent.cxx:587
PairAnalysisEvent::fMultiMatch
Int_t fMultiMatch
Definition: PairAnalysisEvent.h:111
ECbmModuleId
ECbmModuleId
Definition: CbmDefs.h:33
PairAnalysisEvent::fRichPoints
TClonesArray * fRichPoints
Definition: PairAnalysisEvent.h:78
PairAnalysisEvent::fMuchTracks
TClonesArray * fMuchTracks
Definition: PairAnalysisEvent.h:85
PairAnalysisTrack
Definition: PairAnalysisTrack.h:37
PairAnalysisEvent::fTrdHitMatches
TClonesArray * fTrdHitMatches
Definition: PairAnalysisEvent.h:102
PairAnalysisEvent::fStsMatches
TClonesArray * fStsMatches
Definition: PairAnalysisEvent.h:70
PairAnalysisEvent::Init
void Init()
Definition: PairAnalysisEvent.cxx:181
PairAnalysisEvent::fTrdPoints
TClonesArray * fTrdPoints
Definition: PairAnalysisEvent.h:79
PairAnalysisEvent::fTrdCluster
TClonesArray * fTrdCluster
Definition: PairAnalysisEvent.h:105
PairAnalysisEvent::fPrimVertex
CbmVertex * fPrimVertex
Definition: PairAnalysisEvent.h:107
PairAnalysisEvent::GetPoints
TClonesArray * GetPoints(ECbmModuleId det) const
Definition: PairAnalysisEvent.cxx:542
PairAnalysisEvent::fStsPoints
TClonesArray * fStsPoints
Definition: PairAnalysisEvent.h:76
PairAnalysisEvent::GetNumberOfHits
Int_t GetNumberOfHits(ECbmModuleId det) const
Definition: PairAnalysisEvent.cxx:484
PairAnalysisEvent::fRichMatches
TClonesArray * fRichMatches
Definition: PairAnalysisEvent.h:73
PairAnalysisEvent::GetNumberOfMatches
Int_t GetNumberOfMatches(ECbmModuleId det) const
Definition: PairAnalysisEvent.cxx:454
PairAnalysisEvent::fGlobalTracks
TClonesArray * fGlobalTracks
Definition: PairAnalysisEvent.h:82
PairAnalysisEvent::fFastTracks
TClonesArray * fFastTracks
Definition: PairAnalysisEvent.h:108
PairAnalysisEvent::GetNumberOfHitMatches
Int_t GetNumberOfHitMatches(ECbmModuleId det) const
Definition: PairAnalysisEvent.cxx:472
PairAnalysisEvent::fTracks
TObjArray * fTracks
Definition: PairAnalysisEvent.h:109
PairAnalysisEvent::fMuchMatches
TClonesArray * fMuchMatches
Definition: PairAnalysisEvent.h:71
PairAnalysisEvent::fTrdTracks
TClonesArray * fTrdTracks
Definition: PairAnalysisEvent.h:83
PairAnalysisEvent::GetTrack
PairAnalysisTrack * GetTrack(UInt_t pos)
Definition: PairAnalysisEvent.cxx:439
PairAnalysisEvent::fTofPoints
TClonesArray * fTofPoints
Definition: PairAnalysisEvent.h:80
CbmVertex
Definition: CbmVertex.h:26
PairAnalysisEvent::fMuchPoints
TClonesArray * fMuchPoints
Definition: PairAnalysisEvent.h:77
PairAnalysisEvent::fRichHitMatches
TClonesArray * fRichHitMatches
Definition: PairAnalysisEvent.h:100
PairAnalysisEvent::PairAnalysisEvent
PairAnalysisEvent()
PairAnalysisEvent::fRichProjection
TClonesArray * fRichProjection
Definition: PairAnalysisEvent.h:96
PairAnalysisEvent::SetInput
void SetInput(FairRootManager *man)
Definition: PairAnalysisEvent.cxx:122
PairAnalysisEvent::GetNumberOfVageMatches
Int_t GetNumberOfVageMatches() const
Definition: PairAnalysisEvent.h:45
PairAnalysisEvent::fMvdHits
TClonesArray * fMvdHits
Definition: PairAnalysisEvent.h:88
PairAnalysisEvent::GetNumberOfMCTracks
Int_t GetNumberOfMCTracks() const
Definition: PairAnalysisEvent.h:42
PairAnalysisEvent::fTofHits
TClonesArray * fTofHits
Definition: PairAnalysisEvent.h:94
PairAnalysisEvent
Definition: PairAnalysisEvent.h:25
PairAnalysisEvent::fMuchHits
TClonesArray * fMuchHits
Definition: PairAnalysisEvent.h:90
PairAnalysisEvent::fTrdMatches
TClonesArray * fTrdMatches
Definition: PairAnalysisEvent.h:72
PairAnalysisEvent::GetCluster
TClonesArray * GetCluster(ECbmModuleId det) const
Definition: PairAnalysisEvent.cxx:558
PairAnalysisEvent::fStsHitMatches
TClonesArray * fStsHitMatches
Definition: PairAnalysisEvent.h:99
PairAnalysisEvent::operator=
PairAnalysisEvent & operator=(const PairAnalysisEvent &c)
PairAnalysisEvent::GetHits
TClonesArray * GetHits(ECbmModuleId det) const
Definition: PairAnalysisEvent.cxx:508
PairAnalysisEvent::fMvdPoints
TClonesArray * fMvdPoints
Definition: PairAnalysisEvent.h:75
PairAnalysisEvent::fTrdHits
TClonesArray * fTrdHits
Definition: PairAnalysisEvent.h:92
pos
TVector3 pos
Definition: CbmMvdSensorDigiToHitTask.cxx:60
PairAnalysisEvent::PairAnalysisEvent
PairAnalysisEvent(const PairAnalysisEvent &event)
PairAnalysisEvent::fTofHitMatches
TClonesArray * fTofHitMatches
Definition: PairAnalysisEvent.h:103
PairAnalysisEvent::GetHitMatches
TClonesArray * GetHitMatches(ECbmModuleId det) const
Definition: PairAnalysisEvent.cxx:525
PairAnalysisEvent::~PairAnalysisEvent
virtual ~PairAnalysisEvent()
Definition: PairAnalysisEvent.cxx:72
PairAnalysisEvent::fMCHeader
FairMCEventHeader * fMCHeader
Definition: PairAnalysisEvent.h:68
CbmStsTrack
Definition: CbmStsTrack.h:37
PairAnalysisEvent::fMvdHitMatches
TClonesArray * fMvdHitMatches
Definition: PairAnalysisEvent.h:98
PairAnalysisEvent::fMuchHitMatches
TClonesArray * fMuchHitMatches
Definition: PairAnalysisEvent.h:101
PairAnalysisEvent::GetNumberOfTracks
Int_t GetNumberOfTracks() const
Definition: PairAnalysisEvent.h:39
PairAnalysisEvent::GetMCHeader
FairMCEventHeader * GetMCHeader() const
Definition: PairAnalysisEvent.h:37
PairAnalysisEvent::GetTracks
TObjArray * GetTracks() const
Definition: PairAnalysisEvent.h:57
PairAnalysisEvent::Clear
virtual void Clear(Option_t *opt="C")
Definition: PairAnalysisEvent.cxx:574
PairAnalysisEvent::fRichRings
TClonesArray * fRichRings
Definition: PairAnalysisEvent.h:86
CbmDefs.h