CbmRoot
CbmBinnedTrackerQA.h
Go to the documentation of this file.
1 /*
2  * To change this license header, choose License Headers in Project Properties.
3  * To change this template file, choose Tools | Templates
4  * and open the template in the editor.
5  */
6 
7 /*
8  * File: CbmBinnedTrackerQA.h
9  * Author: tablyaz
10  *
11  * Created on August 24, 2017, 6:21 PM
12  */
13 
14 #ifndef CBMBINNEDTRACKERQA_H
15 #define CBMBINNEDTRACKERQA_H
16 
17 #include "CbmMCDataArray.h"
18 #include "CbmMuchTrack.h"
19 #include "CbmStsTrack.h"
20 #include "CbmTofHit.h"
21 #include "CbmTrdHit.h"
22 #include "CbmTrdPoint.h"
23 #include "CbmTrdTrack.h"
24 #include "FairTask.h"
25 #include "Settings.h"
26 #include "TClonesArray.h"
27 #include <functional>
28 
29 class CbmBinnedTrackerQA : public FairTask {
30 public:
34  InitStatus Init(); // Overridden from FairTask
35  void Exec(Option_t* opt); // Overridden from FairTask
36  void Finish(); // Overridden from FairTask
37  void SetParContainers();
38 
40  fPrimaryParticleIds.clear();
41  fPrimaryParticleIds.push_back(v);
42  }
43 
45  fPrimaryParticleIds.push_back(v);
46  }
47 
48 private:
49  void HandleSts(Int_t stsTrackIndex,
50  std::map<Int_t, std::set<Int_t>>& mcTrackIds,
51  std::set<Int_t>* globalTrackMCRefs,
52  Int_t* globalTracksHitInds);
53  void HandleMuch(Int_t muchTrackIndex,
54  std::map<Int_t, std::set<Int_t>>& mcTrackIds,
55  std::set<Int_t>* globalTrackMCRefs,
56  Int_t* globalTracksHitInds);
57  void HandleTrd(Int_t trdTrackIndex,
58  std::map<Int_t, std::set<Int_t>>& mcTrackIds,
59  std::set<Int_t>* globalTrackMCRefs,
60  Int_t* globalTracksHitInds);
61  void HandleTof(Int_t globalTrackIndex,
62  Int_t tofHitIndex,
63  std::map<Int_t, std::set<Int_t>>& mcTrackIds,
64  std::set<Int_t>* globalTrackMCRefs,
65  Int_t* globalTracksHitInds);
66  void IterateTrdHits(
67  std::function<void(const CbmTrdHit*, const CbmTrdPoint*)> handleData);
68 
69 private:
70  std::list<EPrimaryParticleId> fPrimaryParticleIds;
73  TClonesArray* fGlobalTracks;
74  TClonesArray* fStsTracks;
75  TClonesArray* fMuchTracks;
76  TClonesArray* fTrdTracks;
77  TClonesArray* fStsHits;
78  TClonesArray* fMuchHits;
79  TClonesArray* fTrdHits;
80  TClonesArray* fTofHits;
81  TClonesArray* fStsClusters;
82  TClonesArray* fMuchClusters;
83  TClonesArray* fTrdClusters;
84 
85  TClonesArray* fTrdDigiMatches;
86  TClonesArray* fTofHitDigiMatches;
87  TClonesArray* fTofDigiPointMatches;
88 
89  TClonesArray* fStsDigis;
90  TClonesArray* fStsDigiMatches;
91  TClonesArray* fMuchDigis;
92  TClonesArray* fMuchDigiMatches;
93  TClonesArray* fTrdDigis;
94  TClonesArray* fTofDigis;
95 
101  ClassDef(CbmBinnedTrackerQA, 1)
102 };
103 
104 #endif /* CBMBINNEDTRACKERQA_H */
Settings.h
CbmBinnedTrackerQA::SetParContainers
void SetParContainers()
Definition: CbmBinnedTrackerQA.cxx:2462
CbmBinnedTrackerQA::fTrdHits
TClonesArray * fTrdHits
Definition: CbmBinnedTrackerQA.h:79
CbmBinnedTrackerQA::fMuchTracks
TClonesArray * fMuchTracks
Definition: CbmBinnedTrackerQA.h:75
CbmBinnedTrackerQA::fTofHits
TClonesArray * fTofHits
Definition: CbmBinnedTrackerQA.h:80
CbmBinnedTrackerQA::Exec
void Exec(Option_t *opt)
Definition: CbmBinnedTrackerQA.cxx:845
CbmBinnedTrackerQA::fTrdDigis
TClonesArray * fTrdDigis
Definition: CbmBinnedTrackerQA.h:93
CbmBinnedTrackerQA::AddPrimaryParticle
void AddPrimaryParticle(EPrimaryParticleId v)
Definition: CbmBinnedTrackerQA.h:44
CbmBinnedTrackerQA::HandleMuch
void HandleMuch(Int_t muchTrackIndex, std::map< Int_t, std::set< Int_t >> &mcTrackIds, std::set< Int_t > *globalTrackMCRefs, Int_t *globalTracksHitInds)
Definition: CbmBinnedTrackerQA.cxx:1462
CbmTrdHit
data class for a reconstructed Energy-4D measurement in the TRD
Definition: CbmTrdHit.h:35
CbmMCDataArray.h
CbmBinnedTrackerQA::HandleTof
void HandleTof(Int_t globalTrackIndex, Int_t tofHitIndex, std::map< Int_t, std::set< Int_t >> &mcTrackIds, std::set< Int_t > *globalTrackMCRefs, Int_t *globalTracksHitInds)
Definition: CbmBinnedTrackerQA.cxx:1669
CbmBinnedTrackerQA::fTrdPoints
CbmMCDataArray * fTrdPoints
Definition: CbmBinnedTrackerQA.h:99
CbmMCDataArray
Access to a MC data branch for time-based analysis.
Definition: CbmMCDataArray.h:35
CbmBinnedTrackerQA::operator=
CbmBinnedTrackerQA & operator=(const CbmBinnedTrackerQA &)=delete
CbmBinnedTrackerQA::fTofPoints
CbmMCDataArray * fTofPoints
Definition: CbmBinnedTrackerQA.h:100
CbmBinnedTrackerQA::CbmBinnedTrackerQA
CbmBinnedTrackerQA(const CbmBinnedTrackerQA &)=delete
CbmBinnedTrackerQA::fPrimaryParticleIds
std::list< EPrimaryParticleId > fPrimaryParticleIds
Definition: CbmBinnedTrackerQA.h:70
CbmBinnedTrackerQA::fStsClusters
TClonesArray * fStsClusters
Definition: CbmBinnedTrackerQA.h:81
CbmBinnedTrackerQA::fTrdClusters
TClonesArray * fTrdClusters
Definition: CbmBinnedTrackerQA.h:83
CbmStsTrack.h
Data class for STS tracks.
CbmMuchTrack.h
CbmBinnedTrackerQA::fGlobalTracks
TClonesArray * fGlobalTracks
Definition: CbmBinnedTrackerQA.h:73
CbmBinnedTrackerQA::fStsPoints
CbmMCDataArray * fStsPoints
Definition: CbmBinnedTrackerQA.h:97
CbmBinnedTrackerQA::HandleSts
void HandleSts(Int_t stsTrackIndex, std::map< Int_t, std::set< Int_t >> &mcTrackIds, std::set< Int_t > *globalTrackMCRefs, Int_t *globalTracksHitInds)
Definition: CbmBinnedTrackerQA.cxx:1345
CbmBinnedTrackerQA::fMuchHits
TClonesArray * fMuchHits
Definition: CbmBinnedTrackerQA.h:78
CbmBinnedTrackerQA::fMuchDigis
TClonesArray * fMuchDigis
Definition: CbmBinnedTrackerQA.h:91
CbmBinnedTrackerQA::HandleTrd
void HandleTrd(Int_t trdTrackIndex, std::map< Int_t, std::set< Int_t >> &mcTrackIds, std::set< Int_t > *globalTrackMCRefs, Int_t *globalTracksHitInds)
Definition: CbmBinnedTrackerQA.cxx:1577
CbmBinnedTrackerQA::fSettings
CbmBinnedSettings * fSettings
Definition: CbmBinnedTrackerQA.h:72
CbmBinnedTrackerQA::fStsDigis
TClonesArray * fStsDigis
Definition: CbmBinnedTrackerQA.h:89
CbmBinnedTrackerQA::fMuchDigiMatches
TClonesArray * fMuchDigiMatches
Definition: CbmBinnedTrackerQA.h:92
CbmTrdHit.h
Class for hits in TRD detector.
CbmBinnedTrackerQA::CbmBinnedTrackerQA
CbmBinnedTrackerQA()
Definition: CbmBinnedTrackerQA.cxx:273
CbmBinnedTrackerQA::IterateTrdHits
void IterateTrdHits(std::function< void(const CbmTrdHit *, const CbmTrdPoint *)> handleData)
Definition: CbmBinnedTrackerQA.cxx:809
CbmTrdPoint
Definition: CbmTrdPoint.h:23
CbmBinnedTrackerQA
Definition: CbmBinnedTrackerQA.h:29
CbmBinnedTrackerQA::fMuchClusters
TClonesArray * fMuchClusters
Definition: CbmBinnedTrackerQA.h:82
CbmBinnedTrackerQA::fStsTracks
TClonesArray * fStsTracks
Definition: CbmBinnedTrackerQA.h:74
v
__m128 v
Definition: L1/vectors/P4_F32vec4.h:1
CbmBinnedTrackerQA::fStsDigiMatches
TClonesArray * fStsDigiMatches
Definition: CbmBinnedTrackerQA.h:90
CbmBinnedTrackerQA::SetPrimaryParticle
void SetPrimaryParticle(EPrimaryParticleId v)
Definition: CbmBinnedTrackerQA.h:39
CbmBinnedTrackerQA::Finish
void Finish()
Definition: CbmBinnedTrackerQA.cxx:1796
CbmBinnedTrackerQA::Init
InitStatus Init()
Definition: CbmBinnedTrackerQA.cxx:304
CbmBinnedTrackerQA::fTofDigiPointMatches
TClonesArray * fTofDigiPointMatches
Definition: CbmBinnedTrackerQA.h:87
CbmBinnedTrackerQA::fStsHits
TClonesArray * fStsHits
Definition: CbmBinnedTrackerQA.h:77
CbmTrdPoint.h
CbmBinnedTrackerQA::fMuchPoints
CbmMCDataArray * fMuchPoints
Definition: CbmBinnedTrackerQA.h:98
CbmBinnedSettings
Definition: Settings.h:27
CbmBinnedTrackerQA::fTrdTracks
TClonesArray * fTrdTracks
Definition: CbmBinnedTrackerQA.h:76
EPrimaryParticleId
EPrimaryParticleId
Definition: Settings.h:25
CbmBinnedTrackerQA::fIsOnlyPrimary
bool fIsOnlyPrimary
Definition: CbmBinnedTrackerQA.h:71
CbmTrdTrack.h
CbmBinnedTrackerQA::fMCTracks
CbmMCDataArray * fMCTracks
Definition: CbmBinnedTrackerQA.h:96
CbmBinnedTrackerQA::fTofHitDigiMatches
TClonesArray * fTofHitDigiMatches
Definition: CbmBinnedTrackerQA.h:86
CbmBinnedTrackerQA::fTrdDigiMatches
TClonesArray * fTrdDigiMatches
Definition: CbmBinnedTrackerQA.h:85
CbmBinnedTrackerQA::fTofDigis
TClonesArray * fTofDigis
Definition: CbmBinnedTrackerQA.h:94