 |
Belle II Software
release-05-01-25
|
10 #include <tracking/trackFindingCDC/filters/axialSegmentPair/MCAxialSegmentPairFilter.h>
12 #include <tracking/trackFindingCDC/mclookup/CDCMCSegment2DLookUp.h>
14 #include <tracking/trackFindingCDC/fitting/CDCRiemannFitter.h>
16 #include <tracking/trackFindingCDC/eventdata/tracks/CDCAxialSegmentPair.h>
17 #include <tracking/trackFindingCDC/eventdata/segments/CDCSegment2D.h>
19 #include <tracking/trackFindingCDC/filters/base/MCSymmetricFilter.icc.h>
21 #include <framework/core/ModuleParamList.templateDetails.h>
24 using namespace TrackFindingCDC;
34 const std::string& prefix)
37 moduleParamList->
addParameter(prefixed(prefix,
"requireRLPure"),
39 "Switch to require the segment combination contain mostly correct rl information",
48 assert(ptrFromSegment);
62 if (pairFBInfo == EForwardBackward::c_Invalid)
return NAN;
64 if (pairFBInfo == EForwardBackward::c_Forward or (
getAllowReverse() and pairFBInfo == EForwardBackward::c_Backward)) {
67 if (fromNPassedSuperLayers == c_InvalidIndex)
return NAN;
70 if (toNPassedSuperLayers == c_InvalidIndex)
return NAN;
73 if (abs(fromNPassedSuperLayers - toNPassedSuperLayers) == 0)
return NAN;
76 if (abs(fromNPassedSuperLayers - toNPassedSuperLayers) > 2)
return NAN;
83 return fromSegment.size() + toSegment.size();
bool getAllowReverse() const
Getter for the allow reverse parameter.
MCAxialSegmentPairFilter(bool allowReverse=true)
Constructor.
EForwardBackward areAlignedInMCTrackWithRLCheck(const ACDCHitCollection *ptrFromHits, const ACDCHitCollection *ptrToHits) const
Returns if the second collection of hits follows the first collection of hits in their common Monte C...
Index getFirstNPassedSuperLayers(const ACDCHitCollection *ptrHits) const
Getter for number of passed superlayer till the first hit the collection of hits which has the Monte ...
const CDCAxialSegment2D * getStartSegment() const
Getter for the start segment.
Specialisation of the lookup for the truth values of two dimensional segments.
EForwardBackward
Enumeration to represent the distinct possibilities of the right left passage information.
static const CDCMCSegment2DLookUp & getInstance()
Getter for the singletone instance.
Particle trajectory as it is seen in xy projection represented as a circle.
const CDCAxialSegment2D * getEndSegment() const
Getter for the end segment.
void exposeParameters(ModuleParamList *moduleParamList, const std::string &prefix) final
Expose the set of parameters of the filter to the module parameter list.
EForwardBackward areAlignedInMCTrack(const ACDCHitCollection *ptrFromHits, const ACDCHitCollection *ptrToHits) const
Returns if the second collection of hits follows the first collection of hits in their common Monte C...
bool m_param_requireRLPure
Parameter : Switch to require the segment combination contain mostly correct rl information.
void addParameter(const std::string &name, T ¶mVariable, const std::string &description, const T &defaultValue)
Adds a new parameter to the module list.
Class representing a pair of reconstructed axial segements in adjacent superlayer.
Abstract base class for different kinds of events.
CDCTrajectory2D fit(const CDCObservations2D &observations2D) const
Fits a collection of observation drift circles.
CDCTrajectory2D & getTrajectory2D() const
Getter for the trajectory of the two dimensional trajectory.
bool isFitted() const
Checks if the circle is already set to a valid value.
static const CDCRiemannFitter & getFitter()
Static getter for a general Riemann fitter.
A reconstructed sequence of two dimensional hits in one super layer.
The Module parameter list class.
void exposeParameters(ModuleParamList *moduleParamList, const std::string &prefix) override
Expose the set of parameters of the filter to the module parameter list.
void setTrajectory2D(const CDCTrajectory2D &trajectory2D) const
Setter for the trajectory of the two dimensional trajectory.
Weight operator()(const CDCAxialSegmentPair &axialSegmentPair) final
Checks if a pair of axial segments is a good combination.
Index getLastNPassedSuperLayers(const ACDCHitCollection *ptrHits) const
Getter for number of passed superlayer till the last hit the collection of hits which has the Monte C...