Belle II Software development
FeasibleRLFacetFilter.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/facet/BaseFacetFilter.h>
11
12#include <string>
13
14namespace Belle2 {
19
20
21 namespace TrackFindingCDC {
22 class CDCFacet;
24
30 class FeasibleRLFacetFilter : public BaseFacetFilter {
31
32 private:
34 using Super = BaseFacetFilter;
35
36 public:
38 explicit FeasibleRLFacetFilter(bool hardRLCut = true);
39
40 public:
42 void exposeParameters(ModuleParamList* moduleParamList, const std::string& prefix) final;
43
44 public:
49 Weight operator()(const CDCFacet& facet) final;
50
51 public:
53 void setHardRLCut(bool hardRLCut)
54 {
55 m_param_hardRLCut = hardRLCut;
56 }
57
59 bool getHardRLCut() const
60 {
61 return m_param_hardRLCut;
62 }
63
64 private:
66 bool isFeasible(const CDCRLWireHitTriple& rlWireHitTriple) const;
67
68 private:
70 bool m_param_hardRLCut = true;
71 };
72 }
74}
The Module parameter list class.
Class representing a triple of neighboring oriented wire with additional trajectory information.
Definition CDCFacet.h:32
Class representing a triple of neighboring wire hits.
FeasibleRLFacetFilter(bool hardRLCut=true)
Constructor taking a flag if borderline feasible cases should be excluded.
Weight operator()(const CDCFacet &facet) final
Main filter method returning the weight of the facet.
void setHardRLCut(bool hardRLCut)
Setter for the flag that the borderline cases should be excluded.
bool getHardRLCut() const
Getter for the flag that the borderline cases should be excluded.
BaseFacetFilter Super
Type of the super class.
bool isFeasible(const CDCRLWireHitTriple &rlWireHitTriple) const
Check if the hit triplet is a feasible combination for shape and rl passage information.
void exposeParameters(ModuleParamList *moduleParamList, const std::string &prefix) final
Expose the set of parameters of the filter to the module parameter list.
Abstract base class for different kinds of events.