Belle II Software
release-08-01-10
|
Wire hit relation filter that is compensating for hit inefficiencies. More...
#include <BridgingWireHitRelationFilter.h>
Public Types | |
using | Object = AObject |
Type of the object to be analysed. | |
using | Interface = Filter< AObject > |
Mark this class as the basic interface. | |
Public Member Functions | |
BridgingWireHitRelationFilter () | |
Default constructor. | |
~BridgingWireHitRelationFilter () | |
Default destructor. | |
void | exposeParameters (ModuleParamList *moduleParamList, const std::string &prefix) override |
Expose the set of parameters of the filter to the module parameter list. | |
void | initialize () override |
Receive signal at the begin of the event processing and prepare some parameters. More... | |
std::vector< CDCWireHit * > | getPossibleTos (CDCWireHit *from, const std::vector< CDCWireHit * > &wireHits) const final |
Returns a vector containing the neighboring wire hits of the given wire hit out of the sorted range given by the two iterator other argumets. More... | |
virtual std::vector< CDCWireHit * > | getPossibleTos (CDCWireHit *from, const std::vector< CDCWireHit * > &objects) const |
Selects the objects possibly related to the given one from the given pool of objects. | |
virtual Weight | operator() (const CDCWireHit &from, const CDCWireHit &to) |
Main filter method returning the weight of the neighborhood relation. More... | |
Weight | operator() (const Relation< CDCWireHit > &relation) override |
Main filter method overriding the filter interface method. More... | |
virtual Weight | operator() (const Object &obj) |
Function to evaluate the object. More... | |
Weight | operator() (const Object *obj) |
Function to evaluate the object. More... | |
virtual bool | needsTruthInformation () |
Indicates if the filter requires Monte Carlo information. | |
void | beginRun () override |
Receive and dispatch signal for the beginning of a new run. | |
void | beginEvent () override |
Receive and dispatch signal for the start of a new event. | |
void | endRun () override |
Receive and dispatch signal for the end of the run. | |
void | terminate () override |
Receive and dispatch Signal for termination of the event processing. | |
Protected Member Functions | |
void | addProcessingSignalListener (ProcessingSignalListener *psl) |
Register a processing signal listener to be notified. | |
int | getNProcessingSignalListener () |
Get the number of currently registered listeners. | |
Private Types | |
using | Super = RelationFilter< CDCWireHit > |
Type of the base class. | |
Private Attributes | |
std::map< int, int > | m_param_missingPrimaryNeighborThresholdMap |
Parameter: A map from o'clock direction to the number of missing primary drift cells. More... | |
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< short > | m_consideredSecondaryNeighbors |
Indices of the considered o'clock positions of the secondary neighborhood. | |
std::vector< ProcessingSignalListener * > | m_subordinaryProcessingSignalListeners |
References to subordinary signal processing listener contained in this findlet. | |
bool | m_initialized = false |
Flag to keep track whether initialization happend before. | |
bool | m_terminated = false |
Flag to keep track whether termination happend before. | |
std::string | m_initializedAs |
Name of the type during initialisation. | |
Wire hit relation filter that is compensating for hit inefficiencies.
The default setup counters some hits lost due to a drift time cut off if the track enters at the edge of a drift cell. The biggest effect observed in the CDC simulation was observed when the track is along the 2, 4, 8 and 10 o'clock direction since in this case two neighboring hits can be lost due to this time cut off. In an attempt to detect if this occured the primary wire hit neighborhood is slightly extended to bridge to the secondary neighborhood in the critical directions.
The criterion can be lowered such that fewer missing hits trigger the inclusion of the secondary neighbors.
Definition at line 40 of file BridgingWireHitRelationFilter.h.
|
final |
Returns a vector containing the neighboring wire hits of the given wire hit out of the sorted range given by the two iterator other argumets.
Merge the sorted primary and secondary neighbors.
Definition at line 68 of file BridgingWireHitRelationFilter.cc.
|
overridevirtual |
Receive signal at the begin of the event processing and prepare some parameters.
Prepare the lookup such that it turns out most likely sorted.
Reimplemented from ProcessingSignalListener.
Definition at line 49 of file BridgingWireHitRelationFilter.cc.
|
virtualinherited |
Main filter method returning the weight of the neighborhood relation.
Return always returns NAN to reject all segment neighbors.
Definition at line 44 of file RelationFilter.icc.h.
|
virtualinherited |
Function to evaluate the object.
Base implementation accepts all objects.
obj | The object to be accepted or rejected. |
Reimplemented in AllSVDStateFilter, SimpleSVDStateFilter, ResidualSVDStateFilter, AllPXDStateFilter, SimplePXDStateFilter, TwoHitVirtualIPQIFilter, TwoHitVirtualIPFilter, ThreeHitFilter, QualityIndicatorFilter, FourHitFilter, FiveHitFilter, RoughCDCStateFilter, RoughCDCfromEclStateFilter, MCTruthEclSeedFilter, MCTruthCDCStateFilter, ExtrapolateAndUpdateCDCStateFilter, DistanceCDCStateFilter, MCTruthCDCPathPairFilter, HitDistanceBasedCDCPathPairFilter, DuplicateCDCPathPairFilter, DistanceBasedCDCPathPairFilter, Chi2BasedCDCPathPairFilter, ArcLengthBasedCDCPathPairFilter, ArcLengthBasedCDCfromEclPathPairFilter, SizeCDCPathFilter, and SeedChargeCDCPathFilter.
Definition at line 52 of file Filter.icc.h.
|
inherited |
Function to evaluate the object.
Base implementation accepts all objects, except nullptr.
obj | The object to be accepted or rejected. |
Definition at line 58 of file Filter.icc.h.
|
overrideinherited |
Main filter method overriding the filter interface method.
Checks the validity of the pointers in the relation and unpacks the relation to the method implementing the rejection.
Definition at line 51 of file RelationFilter.icc.h.
|
private |
Parameter: A map from o'clock direction to the number of missing primary drift cells.
Definition at line 68 of file BridgingWireHitRelationFilter.h.