Belle II Software  release-08-01-10
MCSegmentRelationFilter.h
1 /**************************************************************************
2  * basf2 (Belle II Analysis Software Framework) *
3  * Author: The Belle II Collaboration *
4  * *
5  * See git log for contributors and copyright holders. *
6  * This file is licensed under LGPL-3.0, see LICENSE.md. *
7  **************************************************************************/
8 #pragma once
9 
10 #include <tracking/trackFindingCDC/filters/segmentRelation/BaseSegmentRelationFilter.h>
11 
12 #include <tracking/trackFindingCDC/filters/base/MCSymmetricFilter.dcl.h>
13 
14 namespace Belle2 {
20  namespace TrackFindingCDC {
21 
23  class MCSegmentRelationFilter : public MCSymmetric<BaseSegmentRelationFilter> {
24 
25  private:
28 
29  public:
31  explicit MCSegmentRelationFilter(bool allowReverse = true);
32 
34  void exposeParameters(ModuleParamList* moduleParamList, const std::string& prefix) final;
35 
37  using Super::operator();
38 
39  private:
41  bool m_param_requireRLPure = false;
42 
44  Weight operator()(const CDCSegment2D& fromSegment, const CDCSegment2D& toSegment) final;
45  };
46  }
48 }
The Module parameter list class.
A reconstructed sequence of two dimensional hits in one super layer.
Definition: CDCSegment2D.h:39
Filter for the constuction of segment relations based on MC information.
bool m_param_requireRLPure
Parameter : Switch to require the segment combination contain mostly correct rl information.
Weight operator()(const CDCSegment2D &fromSegment, const CDCSegment2D &toSegment) final
Checks if a segment relation is a good combination.
void exposeParameters(ModuleParamList *moduleParamList, const std::string &prefix) final
Expose the set of parameters of the filter to the module parameter list.
MCSegmentRelationFilter(bool allowReverse=true)
Constructor.
Mixin for filters that use Monte Carlo information.
Abstract base class for different kinds of events.