Belle II Software  release-05-01-25
MCSegmentTripleRelationFilter.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2012 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Oliver Frost *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 #pragma once
11 
12 #include <tracking/trackFindingCDC/filters/segmentTripleRelation/BaseSegmentTripleRelationFilter.h>
13 #include <tracking/trackFindingCDC/filters/segmentTriple/MCSegmentTripleFilter.h>
14 #include <tracking/trackFindingCDC/filters/base/MCSymmetricFilter.dcl.h>
15 
16 namespace Belle2 {
21  namespace TrackFindingCDC {
22  class CDCSegmentTriple;
23 
25  class MCSegmentTripleRelationFilter : public MCSymmetric<BaseSegmentTripleRelationFilter> {
26 
27  private:
29  using Super = MCSymmetric<BaseSegmentTripleRelationFilter>;
30 
31  public:
33  explicit MCSegmentTripleRelationFilter(bool allowReverse = true);
34 
36  void exposeParameters(ModuleParamList* moduleParamList, const std::string& prefix) final;
37 
39  void initialize() final;
40 
41  public:
46  Weight operator()(const CDCSegmentTriple& fromTriple, const CDCSegmentTriple& toTriple) final;
47 
48  public:
50  void setAllowReverse(bool allowReverse) override
51  {
52  Super::setAllowReverse(allowReverse);
54  }
55 
56  private:
59  };
60  }
62 }
Belle2::TrackFindingCDC::MCSegmentTripleRelationFilter::m_mcSegmentTripleFilter
MCSegmentTripleFilter m_mcSegmentTripleFilter
Instance of the Monte Carlo segment triple filter for rejection of false cells.
Definition: MCSegmentTripleRelationFilter.h:66
Belle2::TrackFindingCDC::MCSegmentTripleRelationFilter::MCSegmentTripleRelationFilter
MCSegmentTripleRelationFilter(bool allowReverse=true)
Constructor.
Definition: MCSegmentTripleRelationFilter.cc:22
Belle2::TrackFindingCDC::MCSegmentTripleRelationFilter::exposeParameters
void exposeParameters(ModuleParamList *moduleParamList, const std::string &prefix) final
Expose the parameters to a module.
Definition: MCSegmentTripleRelationFilter.cc:28
Belle2::TrackFindingCDC::MCSegmentTripleFilter::setAllowReverse
void setAllowReverse(bool allowReverse) override
Setter for the allow reverse parameter.
Definition: MCSegmentTripleFilter.h:63
Belle2::TrackFindingCDC::MCSegmentTripleRelationFilter::initialize
void initialize() final
Initialize the before event processing.
Definition: MCSegmentTripleRelationFilter.cc:34
Belle2::TrackFindingCDC::MCSegmentTripleRelationFilter::setAllowReverse
void setAllowReverse(bool allowReverse) override
Setter for the allow reverse parameter.
Definition: MCSegmentTripleRelationFilter.h:58
Belle2::TrackFindingCDC::MCSegmentTripleFilter
Filter for the constuction of segment triples based on monte carlo information.
Definition: MCSegmentTripleFilter.h:37
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::TrackFindingCDC::MCSegmentTripleRelationFilter::Super
MCSymmetric< BaseSegmentTripleRelationFilter > Super
Type of the super class.
Definition: MCSegmentTripleRelationFilter.h:37
Belle2::ModuleParamList
The Module parameter list class.
Definition: ModuleParamList.h:46
Belle2::TrackFindingCDC::CDCSegmentTriple
Class representing a triple of reconstructed segements in adjacent superlayer.
Definition: CDCSegmentTriple.h:42
Belle2::TrackFindingCDC::MCSymmetric< BaseSegmentTripleRelationFilter >::setAllowReverse
virtual void setAllowReverse(bool allowReverse)
Setter for the allow reverse parameter.
Definition: MCSymmetricFilter.icc.h:79