ATLAS Offline Software
eEmSelector.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef GLOBALSIM_EEMSELECTOR_H
6 #define GLOBALSIM_EEMSELECTOR_H
7 
8 #include "IeEmSelector.h"
9 #include "../IO/IeEmTOB.h" // bitset widths
10 
11 #include <climits>
12 
13 namespace GlobalSim {
21 
22 
23  class ICutter {
24  public:
25  virtual ~ICutter() = default;
26  virtual bool cut(const ulong&) const = 0;
27  virtual std::string to_string() const = 0;
28  };
29 
30  class eEmSelector : public IeEmSelector {
31  public:
32 
34  eEmSelector() = default;
35 
37  eEmSelector(ulong rhad_cut,
38  const std::string& rhad_op,
39  ulong reta_cut,
40  const std::string& reta_op,
41  ulong wstot_cut,
42  const std::string& wstot_op);
43 
44  virtual ~eEmSelector() = default;
45 
46  virtual bool select(const IeEmTOB&) const override;
47 
48  virtual std::string to_string() const override;
49 
50  private:
51  std::unique_ptr<ICutter> m_rhad_cutter{nullptr};
52  std::unique_ptr<ICutter> m_reta_cutter{nullptr};
53  std::unique_ptr<ICutter> m_wstot_cutter{nullptr};
54  };
55 }
56 #endif
GlobalSim::eEmSelector::eEmSelector
eEmSelector()=default
Passes all.
GlobalSim::ICutter::~ICutter
virtual ~ICutter()=default
IeEmSelector.h
GlobalSim::eEmSelector::select
virtual bool select(const IeEmTOB &) const override
Definition: eEmSelector.cxx:118
GlobalSim::ICutter::cut
virtual bool cut(const ulong &) const =0
GlobalSim::eEmSelector::m_rhad_cutter
std::unique_ptr< ICutter > m_rhad_cutter
Definition: eEmSelector.h:51
GlobalSim
AlgTool that to test whether expected the TIP values generated by data supplied by eEmMultTestBench c...
Definition: CommonSelector.cxx:8
GlobalSim::ICutter::to_string
virtual std::string to_string() const =0
GlobalSim::eEmSelector::m_wstot_cutter
std::unique_ptr< ICutter > m_wstot_cutter
Definition: eEmSelector.h:53
GlobalSim::ICutter
Definition: eEmSelector.h:23
GlobalSim::IeEmSelector
Definition: IeEmSelector.h:26
GlobalSim::IOBitwise::IeEmTOB
Class to hold eFexROI TOB bits.
Definition: IeEmTOB.h:29
GlobalSim::eEmSelector
Definition: eEmSelector.h:30
GlobalSim::eEmSelector::to_string
virtual std::string to_string() const override
Definition: eEmSelector.cxx:128
GlobalSim::eEmSelector::~eEmSelector
virtual ~eEmSelector()=default
GlobalSim::eEmSelector::m_reta_cutter
std::unique_ptr< ICutter > m_reta_cutter
Definition: eEmSelector.h:52