CbmRoot
|
#include <CbmMatchRecoToMC.h>
Public Member Functions | |
CbmMatchRecoToMC () | |
Constructor. More... | |
virtual | ~CbmMatchRecoToMC () |
Destructor. More... | |
virtual InitStatus | Init () |
Derived from FairTask. More... | |
virtual void | Exec (Option_t *opt) |
Derived from FairTask. More... | |
virtual void | Finish () |
Derived from FairTask. More... | |
void | SetIncludeMvdHitsInStsTrack (Bool_t includeMvdHitsInStsTrack) |
Static Public Member Functions | |
static std::vector< std::pair< Int_t, Int_t > > | GetMcTrackMotherIdsForRichHit (CbmDigiManager *digiMan, const CbmRichHit *hit, CbmMCDataArray *richPoints, CbmMCDataArray *mcTracks, Int_t eventNumber) |
Return McTrack Ids for RICH hit C++11 efficient way to return vector. More... | |
static std::vector< Int_t > | GetMcTrackMotherIdsForRichHit (CbmDigiManager *digiMan, const CbmRichHit *hit, const TClonesArray *richPoints, const TClonesArray *mcTracks) |
Private Member Functions | |
void | ReadAndCreateDataBranches () |
Read and create data branches. More... | |
void | MatchClusters (const TClonesArray *digiMatches, const TClonesArray *clusters, TClonesArray *clusterMatches) |
Generic creation of cluster match objects. More... | |
void | MatchClusters (ECbmModuleId systemId, const TClonesArray *clusters, TClonesArray *clusterMatches) |
Generic creation of cluster match objects, using CbmDigiManager. More... | |
void | MatchHits (const TClonesArray *matches, const TClonesArray *hits, TClonesArray *hitMatches) |
void | MatchHitsSts (const TClonesArray *clusterMmatches, const TClonesArray *hits, TClonesArray *hitMatches) |
Match STS hits, using cluster match objects. More... | |
void | MatchHitsMvd (const TClonesArray *hits, TClonesArray *hitMatches) |
void | MatchHitsTof (const TClonesArray *HitDigiMatches, const TClonesArray *hits, TClonesArray *hitMatches) |
void | MatchHitsToPoints (CbmMCDataArray *points, const TClonesArray *hits, TClonesArray *hitMatches) |
void | MatchTracks (const TClonesArray *hitMatches, CbmMCDataArray *points, const TClonesArray *tracks, TClonesArray *trackMatches) |
void | MatchStsTracks (const TClonesArray *mvdHitMatches, const TClonesArray *stsHitMatches, CbmMCDataArray *mvdPoints, CbmMCDataArray *stsPoints, const TClonesArray *tracks, TClonesArray *trackMatches) |
void | MatchRichRings (const TClonesArray *richRings, const TClonesArray *richHits, CbmMCDataArray *richMcPoints, CbmMCDataArray *mcTracks, TClonesArray *ringMatches) |
CbmMatchRecoToMC (const CbmMatchRecoToMC &) | |
Match Hit -> MC point [out]. More... | |
CbmMatchRecoToMC & | operator= (const CbmMatchRecoToMC &) |
ClassDef (CbmMatchRecoToMC, 1) | |
Private Attributes | |
Bool_t | fIncludeMvdHitsInStsTrack = kFALSE |
Bool_t | fbDigiExpUsed = kTRUE |
CbmMCDataArray * | fMCTracks = nullptr |
CbmDigiManager * | fDigiManager = nullptr |
Monte-Carlo tracks. More... | |
CbmMCDataArray * | fMvdPoints = nullptr |
Interface to digi branches. More... | |
TClonesArray * | fMvdCluster = nullptr |
MC points [in]. More... | |
TClonesArray * | fMvdHits = nullptr |
Clusters [in]. More... | |
TClonesArray * | fMvdClusterMatches = nullptr |
Hits [in]. More... | |
TClonesArray * | fMvdHitMatches = nullptr |
Cluster matches [out]. More... | |
CbmMCDataArray * | fStsPoints = nullptr |
Hit matches [out]. More... | |
TClonesArray * | fStsClusters = nullptr |
MC points [in]. More... | |
TClonesArray * | fStsHits = nullptr |
Clusters [in]. More... | |
TClonesArray * | fStsTracks = nullptr |
Hits [in]. More... | |
TClonesArray * | fStsClusterMatches = nullptr |
Tracks [in]. More... | |
TClonesArray * | fStsHitMatches = nullptr |
Cluster matches [out]. More... | |
TClonesArray * | fStsTrackMatches = nullptr |
Hit matches [out]. More... | |
CbmMCDataArray * | fRichMcPoints = nullptr |
Track matches [out]. More... | |
TClonesArray * | fRichHits = nullptr |
MC points [in]. More... | |
TClonesArray * | fRichRings = nullptr |
Hits [in]. More... | |
TClonesArray * | fRichTrackMatches = nullptr |
Rings [in]. More... | |
CbmMCDataArray * | fMuchPoints = nullptr |
[out] More... | |
TClonesArray * | fMuchClusters = nullptr |
MC points [in]. More... | |
TClonesArray * | fMuchPixelHits = nullptr |
Clusters [in]. More... | |
TClonesArray * | fMuchTracks = nullptr |
Hits [in]. More... | |
TClonesArray * | fMuchClusterMatches = nullptr |
Tracks [in]. More... | |
TClonesArray * | fMuchPixelHitMatches = nullptr |
Cluster matches [out]. More... | |
TClonesArray * | fMuchTrackMatches = nullptr |
Hit matches [out]. More... | |
CbmMCDataArray * | fTrdPoints = nullptr |
Track matches [out]. More... | |
TClonesArray * | fTrdClusters = nullptr |
MC points [in]. More... | |
TClonesArray * | fTrdHits = nullptr |
Clusters [in]. More... | |
TClonesArray * | fTrdTracks = nullptr |
Hits [in]. More... | |
TClonesArray * | fTrdClusterMatches = nullptr |
Tracks [in]. More... | |
TClonesArray * | fTrdHitMatches = nullptr |
Cluster matches [out]. More... | |
TClonesArray * | fTrdTrackMatches = nullptr |
Hit matches [out]. More... | |
CbmMCDataArray * | fTofPoints = nullptr |
Track matches [out]. More... | |
TClonesArray * | fTofHits = nullptr |
CbmTofPoint array. More... | |
TClonesArray * | fTofHitDigiMatches = nullptr |
CbmTofHit array. More... | |
TClonesArray * | fTofHitMatches = nullptr |
Match Hit -> Digi [out]. More... | |
Static Private Attributes | |
static Int_t | fEventNumber = 0 |
Definition at line 26 of file CbmMatchRecoToMC.h.
CbmMatchRecoToMC::CbmMatchRecoToMC | ( | ) |
Constructor.
Definition at line 45 of file CbmMatchRecoToMC.cxx.
|
virtual |
Destructor.
Definition at line 47 of file CbmMatchRecoToMC.cxx.
References fMuchClusterMatches, fMuchPixelHitMatches, fMuchTrackMatches, fMvdClusterMatches, fMvdHitMatches, fRichTrackMatches, fStsClusterMatches, fStsHitMatches, fStsTrackMatches, fTofHitMatches, fTrdClusterMatches, fTrdHitMatches, and fTrdTrackMatches.
|
private |
Match Hit -> MC point [out].
|
private |
|
virtual |
Derived from FairTask.
Definition at line 118 of file CbmMatchRecoToMC.cxx.
References fEventNumber, fMCTracks, fMuchClusterMatches, fMuchClusters, fMuchPixelHitMatches, fMuchPixelHits, fMuchPoints, fMuchTrackMatches, fMuchTracks, fMvdCluster, fMvdClusterMatches, fMvdHitMatches, fMvdHits, fMvdPoints, fRichHits, fRichMcPoints, fRichRings, fRichTrackMatches, fStsClusterMatches, fStsClusters, fStsHitMatches, fStsHits, fStsPoints, fStsTrackMatches, fStsTracks, fTofHitDigiMatches, fTofHitMatches, fTofHits, fTrdClusterMatches, fTrdClusters, fTrdHitMatches, fTrdHits, fTrdPoints, fTrdTrackMatches, fTrdTracks, kMuch, kMvd, kSts, kTrd, MatchClusters(), MatchHits(), MatchHitsMvd(), MatchHitsSts(), MatchHitsTof(), MatchHitsToPoints(), MatchRichRings(), MatchStsTracks(), and MatchTracks().
|
virtual |
Derived from FairTask.
Definition at line 191 of file CbmMatchRecoToMC.cxx.
|
static |
Return McTrack Ids for RICH hit C++11 efficient way to return vector.
Definition at line 821 of file CbmMatchRecoToMC.cxx.
References CbmMCDataArray::Get(), CbmDigiManager::Get(), CbmMatch::GetLinks(), CbmDigiManager::GetMatch(), CbmMCTrack::GetMotherId(), CbmMCTrack::GetPdgCode(), CbmHit::GetRefId(), i, kRich, and mcTracks.
Referenced by CbmLitMCTrackCreator::AddRichHits(), CbmRichRingFinderIdeal::DoFind(), CbmRichRecoQa::FillRichRingNofHits(), CbmRichUrqmdTest::FillRichRingNofHits(), MatchRichRings(), and CbmRichRecoTbQa::RingRecoEfficiency().
|
static |
Definition at line 866 of file CbmMatchRecoToMC.cxx.
References CbmDigiManager::Get(), CbmMatch::GetLinks(), CbmDigiManager::GetMatch(), CbmMCTrack::GetMotherId(), CbmMCTrack::GetPdgCode(), CbmHit::GetRefId(), i, kRich, and mcTracks.
|
virtual |
Derived from FairTask.
Definition at line 112 of file CbmMatchRecoToMC.cxx.
References ReadAndCreateDataBranches().
|
private |
Generic creation of cluster match objects.
digiMatches | Array of match objects for digis |
clusters | Arrays of clusters |
clusterMatches | Array of match objects for clusters |
The cluster match objects are created by summing up the match objects of all digis belonging to the cluster.
Definition at line 412 of file CbmMatchRecoToMC.cxx.
References CbmMatch::AddLinks(), CbmCluster::GetDigi(), and CbmCluster::GetNofDigis().
Referenced by Exec().
|
private |
Generic creation of cluster match objects, using CbmDigiManager.
clusters | Arrays of clusters |
clusterMatches | Array of match objects for clusters |
The cluster match objects are created by summing up the match objects of all digis belonging to the cluster.
Definition at line 429 of file CbmMatchRecoToMC.cxx.
References CbmMatch::AddLinks(), fDigiManager, CbmCluster::GetDigi(), CbmDigiManager::GetMatch(), CbmCluster::GetNofDigis(), and CbmDigiManager::IsMatchPresent().
|
private |
Definition at line 447 of file CbmMatchRecoToMC.cxx.
References CbmMatch::AddLinks(), CbmHit::GetRefId(), and hits.
Referenced by Exec().
|
private |
Definition at line 478 of file CbmMatchRecoToMC.cxx.
References CbmMatch::AddLinks(), fDigiManager, CbmDigiManager::GetMatch(), CbmHit::GetRefId(), hits, and kMvd.
Referenced by Exec().
|
private |
Match STS hits, using cluster match objects.
clusterMatches | TClonesArray with cluster matches |
hits | TClonesArray with CbmStsHit |
hitMatches | TClonesArray with hit matches (to be filled) |
Since a StsHit is constructed from two StsClusters (from front and back side of a sensor), its match object must also be constructed from the two match objects corresponding to the clusters. This makes it different from the method MatchHits, which just copies the cluster match object to the hit match object.
Definition at line 461 of file CbmMatchRecoToMC.cxx.
References CbmMatch::AddLinks(), CbmStsHit::GetBackClusterId(), CbmStsHit::GetFrontClusterId(), and hits.
Referenced by Exec().
|
private |
Definition at line 491 of file CbmMatchRecoToMC.cxx.
References CbmMatch::AddLink(), fDigiManager, CbmDigiManager::Get(), CbmLink::GetEntry(), CbmLink::GetFile(), CbmLink::GetIndex(), CbmMatch::GetLink(), CbmDigiManager::GetMatch(), CbmDigiManager::GetNofDigis(), CbmMatch::GetNofLinks(), CbmTofDigi::GetTot(), hits, and kTof.
Referenced by Exec().
|
private |
Definition at line 544 of file CbmMatchRecoToMC.cxx.
References CbmMatch::AddLink(), fEventNumber, CbmHit::GetRefId(), hits, and points.
Referenced by Exec().
|
private |
Definition at line 756 of file CbmMatchRecoToMC.cxx.
References CbmMatch::AddLink(), fDigiManager, fEventNumber, first, CbmLink::GetEntry(), CbmRichRing::GetHit(), CbmLink::GetIndex(), CbmMatch::GetMatchedLink(), GetMcTrackMotherIdsForRichHit(), CbmRichRing::GetNofHits(), CbmMatch::GetNofLinks(), i, mcTracks, CbmTrackMatchNew::SetNofTrueHits(), and CbmTrackMatchNew::SetNofWrongHits().
Referenced by Exec().
|
private |
Definition at line 637 of file CbmMatchRecoToMC.cxx.
References CbmMatch::AddLink(), fIncludeMvdHitsInStsTrack, fMCTracks, CbmMCDataArray::Get(), CbmLink::GetEntry(), CbmLink::GetFile(), CbmTrack::GetHitIndex(), CbmLink::GetIndex(), CbmMatch::GetLink(), CbmMatch::GetMatchedLink(), CbmStsTrack::GetMvdHitIndex(), CbmMatch::GetNofLinks(), CbmStsTrack::GetNofMvdHits(), CbmStsTrack::GetNofStsHits(), CbmTrackMatchNew::GetNofTrueHits(), CbmTrackMatchNew::GetNofWrongHits(), CbmMCTrack::GetNPoints(), CbmStsAddress::GetSystemId(), kSts, CbmTrackMatchNew::SetNofTrueHits(), CbmTrackMatchNew::SetNofWrongHits(), and tracks.
Referenced by Exec().
|
private |
Definition at line 559 of file CbmMatchRecoToMC.cxx.
References CbmMatch::AddLink(), fMCTracks, fMuchPixelHitMatches, CbmMCDataArray::Get(), CbmLink::GetEntry(), CbmLink::GetFile(), CbmTrack::GetHitIndex(), CbmTrack::GetHitType(), CbmLink::GetIndex(), CbmMatch::GetLink(), CbmMatch::GetMatchedLink(), CbmTrack::GetNofHits(), CbmMatch::GetNofLinks(), CbmTrackMatchNew::GetNofTrueHits(), CbmTrackMatchNew::GetNofWrongHits(), CbmMCTrack::GetNPoints(), CbmStsAddress::GetSystemId(), kMUCHPIXELHIT, kMUCHSTRAWHIT, kSts, points, CbmTrackMatchNew::SetNofTrueHits(), CbmTrackMatchNew::SetNofWrongHits(), and tracks.
Referenced by Exec().
|
private |
|
private |
Read and create data branches.
Definition at line 193 of file CbmMatchRecoToMC.cxx.
References fDigiManager, fMCTracks, fMuchClusterMatches, fMuchClusters, fMuchPixelHitMatches, fMuchPixelHits, fMuchPoints, fMuchTrackMatches, fMuchTracks, fMvdCluster, fMvdClusterMatches, fMvdHitMatches, fMvdHits, fMvdPoints, fRichHits, fRichMcPoints, fRichRings, fRichTrackMatches, fStsClusterMatches, fStsClusters, fStsHitMatches, fStsHits, fStsPoints, fStsTrackMatches, fStsTracks, fTofHitDigiMatches, fTofHitMatches, fTofHits, fTofPoints, fTrdClusterMatches, fTrdClusters, fTrdHitMatches, fTrdHits, fTrdPoints, fTrdTrackMatches, fTrdTracks, CbmMCDataManager::GetObject(), CbmDigiManager::Init(), CbmMCDataManager::InitBranch(), and CbmDigiManager::Instance().
Referenced by Init().
void CbmMatchRecoToMC::SetIncludeMvdHitsInStsTrack | ( | Bool_t | includeMvdHitsInStsTrack | ) |
Definition at line 107 of file CbmMatchRecoToMC.cxx.
References fIncludeMvdHitsInStsTrack.
|
private |
Definition at line 157 of file CbmMatchRecoToMC.h.
|
private |
Monte-Carlo tracks.
Definition at line 160 of file CbmMatchRecoToMC.h.
Referenced by MatchClusters(), MatchHitsMvd(), MatchHitsTof(), MatchRichRings(), and ReadAndCreateDataBranches().
|
staticprivate |
Definition at line 154 of file CbmMatchRecoToMC.h.
Referenced by Exec(), MatchHitsToPoints(), and MatchRichRings().
|
private |
Definition at line 156 of file CbmMatchRecoToMC.h.
Referenced by MatchStsTracks(), and SetIncludeMvdHitsInStsTrack().
|
private |
Definition at line 159 of file CbmMatchRecoToMC.h.
Referenced by Exec(), MatchStsTracks(), MatchTracks(), and ReadAndCreateDataBranches().
|
private |
Tracks [in].
Definition at line 189 of file CbmMatchRecoToMC.h.
Referenced by Exec(), ReadAndCreateDataBranches(), and ~CbmMatchRecoToMC().
|
private |
MC points [in].
Definition at line 186 of file CbmMatchRecoToMC.h.
Referenced by Exec(), and ReadAndCreateDataBranches().
|
private |
Cluster matches [out].
Definition at line 190 of file CbmMatchRecoToMC.h.
Referenced by Exec(), MatchTracks(), ReadAndCreateDataBranches(), and ~CbmMatchRecoToMC().
|
private |
Clusters [in].
Definition at line 187 of file CbmMatchRecoToMC.h.
Referenced by Exec(), and ReadAndCreateDataBranches().
|
private |
[out]
Definition at line 185 of file CbmMatchRecoToMC.h.
Referenced by Exec(), and ReadAndCreateDataBranches().
|
private |
Hit matches [out].
Definition at line 191 of file CbmMatchRecoToMC.h.
Referenced by Exec(), ReadAndCreateDataBranches(), and ~CbmMatchRecoToMC().
|
private |
Hits [in].
Definition at line 188 of file CbmMatchRecoToMC.h.
Referenced by Exec(), and ReadAndCreateDataBranches().
|
private |
MC points [in].
Definition at line 164 of file CbmMatchRecoToMC.h.
Referenced by Exec(), and ReadAndCreateDataBranches().
|
private |
Hits [in].
Definition at line 166 of file CbmMatchRecoToMC.h.
Referenced by Exec(), ReadAndCreateDataBranches(), and ~CbmMatchRecoToMC().
|
private |
Cluster matches [out].
Definition at line 167 of file CbmMatchRecoToMC.h.
Referenced by Exec(), ReadAndCreateDataBranches(), and ~CbmMatchRecoToMC().
|
private |
Clusters [in].
Definition at line 165 of file CbmMatchRecoToMC.h.
Referenced by Exec(), and ReadAndCreateDataBranches().
|
private |
Interface to digi branches.
Definition at line 163 of file CbmMatchRecoToMC.h.
Referenced by Exec(), and ReadAndCreateDataBranches().
|
private |
MC points [in].
Definition at line 180 of file CbmMatchRecoToMC.h.
Referenced by Exec(), and ReadAndCreateDataBranches().
|
private |
Track matches [out].
Definition at line 179 of file CbmMatchRecoToMC.h.
Referenced by Exec(), and ReadAndCreateDataBranches().
|
private |
Hits [in].
Definition at line 181 of file CbmMatchRecoToMC.h.
Referenced by Exec(), and ReadAndCreateDataBranches().
|
private |
Rings [in].
Definition at line 182 of file CbmMatchRecoToMC.h.
Referenced by Exec(), ReadAndCreateDataBranches(), and ~CbmMatchRecoToMC().
|
private |
Tracks [in].
Definition at line 174 of file CbmMatchRecoToMC.h.
Referenced by Exec(), ReadAndCreateDataBranches(), and ~CbmMatchRecoToMC().
|
private |
MC points [in].
Definition at line 171 of file CbmMatchRecoToMC.h.
Referenced by Exec(), and ReadAndCreateDataBranches().
|
private |
Cluster matches [out].
Definition at line 175 of file CbmMatchRecoToMC.h.
Referenced by Exec(), ReadAndCreateDataBranches(), and ~CbmMatchRecoToMC().
|
private |
Clusters [in].
Definition at line 172 of file CbmMatchRecoToMC.h.
Referenced by Exec(), and ReadAndCreateDataBranches().
|
private |
Hit matches [out].
Definition at line 170 of file CbmMatchRecoToMC.h.
Referenced by Exec(), and ReadAndCreateDataBranches().
|
private |
Hit matches [out].
Definition at line 176 of file CbmMatchRecoToMC.h.
Referenced by Exec(), ReadAndCreateDataBranches(), and ~CbmMatchRecoToMC().
|
private |
Hits [in].
Definition at line 173 of file CbmMatchRecoToMC.h.
Referenced by Exec(), and ReadAndCreateDataBranches().
|
private |
CbmTofHit array.
Definition at line 205 of file CbmMatchRecoToMC.h.
Referenced by Exec(), and ReadAndCreateDataBranches().
|
private |
Match Hit -> Digi [out].
Definition at line 206 of file CbmMatchRecoToMC.h.
Referenced by Exec(), ReadAndCreateDataBranches(), and ~CbmMatchRecoToMC().
|
private |
CbmTofPoint array.
Definition at line 204 of file CbmMatchRecoToMC.h.
Referenced by Exec(), and ReadAndCreateDataBranches().
|
private |
Track matches [out].
Definition at line 203 of file CbmMatchRecoToMC.h.
Referenced by ReadAndCreateDataBranches().
|
private |
Tracks [in].
Definition at line 198 of file CbmMatchRecoToMC.h.
Referenced by Exec(), ReadAndCreateDataBranches(), and ~CbmMatchRecoToMC().
|
private |
MC points [in].
Definition at line 195 of file CbmMatchRecoToMC.h.
Referenced by Exec(), and ReadAndCreateDataBranches().
|
private |
Cluster matches [out].
Definition at line 199 of file CbmMatchRecoToMC.h.
Referenced by Exec(), ReadAndCreateDataBranches(), and ~CbmMatchRecoToMC().
|
private |
Clusters [in].
Definition at line 196 of file CbmMatchRecoToMC.h.
Referenced by Exec(), and ReadAndCreateDataBranches().
|
private |
Track matches [out].
Definition at line 194 of file CbmMatchRecoToMC.h.
Referenced by Exec(), and ReadAndCreateDataBranches().
|
private |
Hit matches [out].
Definition at line 200 of file CbmMatchRecoToMC.h.
Referenced by Exec(), ReadAndCreateDataBranches(), and ~CbmMatchRecoToMC().
|
private |
Hits [in].
Definition at line 197 of file CbmMatchRecoToMC.h.
Referenced by Exec(), and ReadAndCreateDataBranches().