Belle II Software  release-08-01-10
NonIPCrossingStateFilter< AllStateFilter > Class Template Reference

Reusable filter for checking the direction of a new state if it is in the correct orientation (forwards or backwards) by their arc length. More...

#include <NonIPCrossingStateFilter.dcl.h>

Inheritance diagram for NonIPCrossingStateFilter< AllStateFilter >:
Collaboration diagram for NonIPCrossingStateFilter< AllStateFilter >:

Public Member Functions

TrackFindingCDC::Weight operator() (const Object &pair) final
 Main function testing the object for the direction.
 
void exposeParameters (ModuleParamList *moduleParamList, const std::string &prefix) override
 Expose the direction parameter.
 
void initialize () final
 Copy the string direction parameter to the enum.
 

Private Types

using Object = typename AllStateFilter::Object
 The object to filter.
 
using Super = AllStateFilter
 The parent class.
 

Private Attributes

std::string m_param_directionAsString = "unknown"
 Parameter for the distance given to the framework (can not handle EForwardBackward directly)
 
TrackFindingCDC::EForwardBackward m_param_direction = TrackFindingCDC::EForwardBackward::c_Unknown
 Direction parameter converted from the string parameters.
 

Detailed Description

template<class AllStateFilter>
class Belle2::NonIPCrossingStateFilter< AllStateFilter >

Reusable filter for checking the direction of a new state if it is in the correct orientation (forwards or backwards) by their arc length.

Especially, the following is checked:

arc length of this hit < arc length of the origin (backward) or > (forward) arc length of this hit > arc length of the hit before (backward) or < (forward)

All the arc lengths are calculated using a trajectory based on the last valid mSoP (always pointing in forward direction).

Definition at line 32 of file NonIPCrossingStateFilter.dcl.h.


The documentation for this class was generated from the following files: