Belle II Software  release-05-01-25
CutsFromDBWireHitFilter.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2019 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Oliver Frost, Cyrille Praz *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 #pragma once
11 
12 #include <tracking/trackFindingCDC/filters/wireHit/BaseWireHitFilter.h>
13 #include <framework/database/DBObjPtr.h>
14 #include <cdc/dbobjects/CDCWireHitRequirements.h>
15 
16 namespace Belle2 {
21  namespace TrackFindingCDC {
22  class CDCWireHit;
23 
25  class CutsFromDBWireHitFilter : public BaseWireHitFilter {
26 
27  public:
28 
31 
33  virtual ~CutsFromDBWireHitFilter() = default;
34 
36  void initialize() final;
37 
39  void beginRun() final;
40 
42  Weight operator()(const CDCWireHit& wireHit) final;
43 
44  private:
45 
49 
52  template <typename T>
53  bool isInRange(const T& value, const std::pair<T, T>& range) const;
54 
57  template <typename T>
58  bool isLessThanOrEqualTo(const T& value, const T& upper_value) const;
59 
62 
65  };
66  }
68 }
Belle2::TrackFindingCDC::CutsFromDBWireHitFilter::checkIfDBObjPtrIsValid
void checkIfDBObjPtrIsValid()
Check if m_CDCWireHitRequirementsFromDB is valid and set m_DBPtrIsValidForCurrentRun accordingly.
Definition: CutsFromDBWireHitFilter.cc:34
Belle2::TrackFindingCDC::CutsFromDBWireHitFilter::initialize
void initialize() final
Called at the beginning of the processing.
Definition: CutsFromDBWireHitFilter.cc:23
Belle2::TrackFindingCDC::CutsFromDBWireHitFilter::isInRange
bool isInRange(const T &value, const std::pair< T, T > &range) const
Check if value >= range.first and value <= range.second If range.second == -1, then check only if val...
Belle2::TrackFindingCDC::CutsFromDBWireHitFilter::beginRun
void beginRun() final
Called when a new run is started.
Definition: CutsFromDBWireHitFilter.cc:29
Belle2::TrackFindingCDC::CutsFromDBWireHitFilter::m_DBPtrIsValidForCurrentRun
bool m_DBPtrIsValidForCurrentRun
Boolean asserting if DBObjPtr is valid for the current run.
Definition: CutsFromDBWireHitFilter.h:72
Belle2::TrackFindingCDC::CutsFromDBWireHitFilter::isLessThanOrEqualTo
bool isLessThanOrEqualTo(const T &value, const T &upper_value) const
Check if value <= upper_value If upper_value == -1, then return true.
Belle2::DBObjPtr
Class for accessing objects in the database.
Definition: DBObjPtr.h:31
Belle2::CDCWireHitRequirements
Database object containing cut values to filter CDCWireHits.
Definition: CDCWireHitRequirements.h:44
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::TrackFindingCDC::CutsFromDBWireHitFilter::~CutsFromDBWireHitFilter
virtual ~CutsFromDBWireHitFilter()=default
Default destructor.
Belle2::TrackFindingCDC::CutsFromDBWireHitFilter::CutsFromDBWireHitFilter
CutsFromDBWireHitFilter()
Default constructor.
Definition: CutsFromDBWireHitFilter.cc:18
Belle2::TrackFindingCDC::CutsFromDBWireHitFilter::m_CDCWireHitRequirementsFromDB
std::unique_ptr< DBObjPtr< CDCWireHitRequirements > > m_CDCWireHitRequirementsFromDB
Cut values from the Data Base.
Definition: CutsFromDBWireHitFilter.h:69
Belle2::TrackFindingCDC::CDCWireHit
Class representing a hit wire in the central drift chamber.
Definition: CDCWireHit.h:65