 |
Belle II Software
release-05-01-25
|
10 #include <tracking/modules/vxdCDCTrackMerger/MCVXDCDCTrackMergerModule.h>
11 #include <tracking/dataobjects/RecoTrack.h>
13 #include <tracking/mcMatcher/TrackMatchLookUp.h>
14 #include <tracking/trackFindingCDC/utilities/StringManipulation.h>
23 addProcessingSignalListener(&m_storeArrayMerger);
24 addProcessingSignalListener(&m_bestMatchSelector);
25 addProcessingSignalListener(&m_relationAdder);
35 "Only use fitted CDC tracks as otherwise the comparison with the CKF is unfair.",
42 std::vector<RecoTrack*> cdcRecoTrackVector;
43 std::vector<RecoTrack*> vxdRecoTrackVector;
48 std::vector<TrackFindingCDC::WeightedRelation<RecoTrack*, RecoTrack* const>> weightedRelations;
49 weightedRelations.reserve(cdcRecoTrackVector.size() * vxdRecoTrackVector.size());
53 for (
auto& cdcRecoTrack : cdcRecoTrackVector) {
60 if (not cdcMCRecoTrack) {
64 for (
auto& vxdRecoTrack : vxdRecoTrackVector) {
66 if (not vxdMCRecoTrack) {
70 if (cdcMCRecoTrack != vxdMCRecoTrack) {
76 weightedRelations.emplace_back(&cdcRecoTrack, matchedEfficiency, &vxdRecoTrack);
83 for (
auto& relation : weightedRelations) {
84 relation.setWeight(-1);
void apply(std::vector< RecoTrack * > &cdcRecoTrackVector, std::vector< RecoTrack * > &vxdRecoTrackVector) override
Fetch the RecoTracks from the two input Store Arrays and fill them into two vectors.
#define REG_MODULE(moduleName)
Register the given module (without 'Module' suffix) with the framework.
TrackFindingCDC::RelationAdder< RecoTrack *, RecoTrack * > m_relationAdder
Use the weighted relations to turn them into real DataStore relations.
Class to provide convenient methods to look up matching information between pattern recognition and M...
Findlet for merging VXD and CDC tracks with MC information.
const RecoTrack * getMatchedMCRecoTrack(const RecoTrack &prRecoTrack) const
Looks up the matched Monte Carlo track for the given pattern recognition track.
void exposeParameters(ModuleParamList *moduleParamList, const std::string &prefix) override
Expose the parameters of the findlet.
void exposeParameters(ModuleParamList *moduleParamList, const std::string &prefix) override
Expose the parameters of the sub findlets.
float getMatchedEfficiency(const RecoTrack &recoTrack) const
Get the hit efficiency of the matched track.
This is the Reconstruction Event-Data Model Track.
void addParameter(const std::string &name, T ¶mVariable, const std::string &description, const T &defaultValue)
Adds a new parameter to the module list.
Abstract base class for different kinds of events.
void apply() override
Do the track merging.
TrackFindingCDC::BestMatchSelector< RecoTrack *, RecoTrack * > m_bestMatchSelector
Make a best candidate selection.
bool m_param_onlyFittedCDCTracks
Only use fitted CDC tracks, as otherwise the comparison with the CKF is unfair.
const std::string & getVXDStoreArrayName()
Get the name of the VXD StoreArray<RecoTrack>
const std::string & getCDCStoreArrayName()
Get the name of the CDC StoreArray<RecoTrack>
StoreArrayMerger m_storeArrayMerger
Get and write back the relations to the store array.
The Module parameter list class.