Belle II Software  release-05-01-25
LayerPXDRelationFilter.dcl.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2016 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Nils Braun, Christian Wessel *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 #pragma once
11 
12 #include <tracking/trackFindingCDC/filters/base/RelationFilter.dcl.h>
13 #include <tracking/ckf/pxd/entities/CKFToPXDState.h>
14 
15 namespace Belle2 {
20  template <class AFilter, class APrefilter = AFilter>
22  class LayerPXDRelationFilter : public TrackFindingCDC::RelationFilter<CKFToPXDState> {
24  using Super = TrackFindingCDC::RelationFilter<CKFToPXDState>;
25 
26  public:
27  using Super::operator();
28 
31 
34 
35  std::vector<CKFToPXDState*> getPossibleTos(CKFToPXDState* from,
36  const std::vector<CKFToPXDState*>& states) const override;
37 
38  void exposeParameters(ModuleParamList* moduleParamList, const std::string& prefix) override;
39 
40  TrackFindingCDC::Weight operator()(const CKFToPXDState& from, const CKFToPXDState& to) override;
41 
42  private:
44  int m_param_hitJumping = 0;
46  AFilter m_filter;
48  APrefilter m_prefilter;
49  };
51 }
Belle2::LayerPXDRelationFilter::Super
TrackFindingCDC::RelationFilter< CKFToPXDState > Super
The parent class.
Definition: LayerPXDRelationFilter.dcl.h:32
Belle2::CKFToPXDState
Specialized CKF State for extrapolating into the PXD.
Definition: CKFToPXDState.h:29
Belle2::LayerPXDRelationFilter::m_param_hitJumping
int m_param_hitJumping
Parameter: Make it possible to jump over N layers.
Definition: LayerPXDRelationFilter.dcl.h:52
Belle2::LayerPXDRelationFilter::m_filter
AFilter m_filter
Filter for rejecting the states.
Definition: LayerPXDRelationFilter.dcl.h:54
Belle2::LayerPXDRelationFilter::operator()
TrackFindingCDC::Weight operator()(const CKFToPXDState &from, const CKFToPXDState &to) override
Main filter method returning the weight of the neighborhood relation.
Definition: LayerPXDRelationFilter.icc.h:128
Belle2::LayerPXDRelationFilter::m_prefilter
APrefilter m_prefilter
Loose pre-filter to reject possibleTos.
Definition: LayerPXDRelationFilter.dcl.h:56
Belle2::LayerPXDRelationFilter::LayerPXDRelationFilter
LayerPXDRelationFilter()
Add the filter as listener.
Definition: LayerPXDRelationFilter.icc.h:34
Belle2::LayerPXDRelationFilter::getPossibleTos
std::vector< CKFToPXDState * > getPossibleTos(CKFToPXDState *from, const std::vector< CKFToPXDState * > &states) const override
Selects the objects possibly related to the given one from the given pool of objects.
Definition: LayerPXDRelationFilter.icc.h:45
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::LayerPXDRelationFilter::~LayerPXDRelationFilter
~LayerPXDRelationFilter()
Default destructor.
Belle2::LayerPXDRelationFilter::exposeParameters
void exposeParameters(ModuleParamList *moduleParamList, const std::string &prefix) override
Expose the set of parameters of the filter to the module parameter list.
Definition: LayerPXDRelationFilter.icc.h:118
Belle2::ModuleParamList
The Module parameter list class.
Definition: ModuleParamList.h:46