10#include <tracking/trackingUtilities/filters/base/RelationFilter.dcl.h>
28 namespace TrackingUtilities {
31 namespace TrackFindingCDC {
70 const std::vector<TrackingUtilities::CDCWireHit*>& wireHits)
const final;
79 void prepare(
const std::vector<TrackingUtilities::CDCWireHit*>& wireHits);
84 {{0, 2}, {2, 2}, {4, 2}, {6, 2}, {8, 2}, {10, 2}};
Class representing a sense wire in the central drift chamber.
The Module parameter list class.
std::map< int, int > m_param_missingPrimaryNeighborThresholdMap
Parameter: A map from o'clock direction to the number of missing primary drift cells.
void prepare(const std::vector< TrackingUtilities::CDCWireHit * > &wireHits)
Precompute the wires of the given wire hits to speed up the searches in the following getPossibleTos ...
~BridgingWireHitRelationFilter() override
Default destructor.
TrackingUtilities::CDCWireHit *const * m_preparedWireHitsData
Data pointer of the prepared wire hit vector used to recognize it in getPossibleTos.
void initialize() override
Receive signal at the begin of the event processing and prepare some parameters.
std::vector< TrackingUtilities::CDCWireHit * > getPossibleTos(TrackingUtilities::CDCWireHit *from, const std::vector< TrackingUtilities::CDCWireHit * > &wireHits) const final
Returns a vector containing the neighboring wire hits of the given wire hit out of the sorted range g...
BridgingWireHitRelationFilter()
Default constructor.
std::array< short, 12 > m_missingPrimaryNeighborThresholds
Array for the number of primary drift cells to be included for the o'clock position at each index.
std::vector< const CDC::CDCWire * > m_preparedWires
Memory for the wires of the prepared wire hit vector.
void exposeParameters(ModuleParamList *moduleParamList, const std::string &prefix) override
Expose the set of parameters of the filter to the module parameter list.
std::size_t m_preparedWireHitsSize
Size of the prepared wire hit vector used to recognize it in getPossibleTos.
TrackingUtilities::RelationFilter< TrackingUtilities::CDCWireHit > Super
Type of the base class.
std::vector< short > m_consideredSecondaryNeighbors
Indices of the considered o'clock positions of the secondary neighborhood.
Class representing a hit wire in the central drift chamber.
Base class for filtering the neighborhood of objects.
Abstract base class for different kinds of events.