10 #include <tracking/ckf/pxd/filters/relations/SensorPXDPairFilter.h>
11 #include <tracking/trackFindingCDC/filters/base/Filter.icc.h>
13 #include <tracking/trackFindingCDC/utilities/StringManipulation.h>
14 #include <framework/core/ModuleParamList.templateDetails.h>
16 #include <vxd/geometry/GeoCache.h>
19 using namespace TrackFindingCDC;
21 TrackFindingCDC::Weight
27 const CKFToPXDState::stateCache& fromStateCache = fromState.
getStateCache();
28 const CKFToPXDState::stateCache& toStateCache = toState.
getStateCache();
30 B2ASSERT(
"You have filled the wrong states into this!", toStateCache.isHitState);
32 if (not fromStateCache.isHitState) {
35 double phiDiff = fromStateCache.phi - toStateCache.sensorCenterPhi;
36 while (phiDiff > M_PI) phiDiff -= 2. * M_PI;
37 while (phiDiff < -M_PI) phiDiff += 2. * M_PI;
39 if (fabs(phiDiff) < m_param_PhiRecoTrackToHitCut) {
49 if (fromStateCache.geoLayer == toStateCache.geoLayer and
50 fromStateCache.sensorID.getSensorNumber() == toStateCache.sensorID.getSensorNumber()) {
57 double phiDiff = fromStateCache.sensorCenterPhi - toStateCache.sensorCenterPhi;
58 while (phiDiff > M_PI) phiDiff -= 2. * M_PI;
59 while (phiDiff < -M_PI) phiDiff += 2. * M_PI;
61 if (fabs(phiDiff) < m_param_PhiHitHitCut) {
70 moduleParamList->
addParameter(TrackFindingCDC::prefixed(prefix,
"phiRecoTrackToHitCut"), m_param_PhiRecoTrackToHitCut,
71 "Cut in phi for the difference between RecoTrack (seed) mSoP and current hit-based state.", m_param_PhiRecoTrackToHitCut);
72 moduleParamList->
addParameter(TrackFindingCDC::prefixed(prefix,
"phiHitHitCut"), m_param_PhiHitHitCut,
73 "Cut in phi between two hit-based states.", m_param_PhiHitHitCut);