ATLAS Offline Software
TFCSParametrization.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef ISF_FASTCALOSIMEVENT_TFCSParametrization_h
6 #define ISF_FASTCALOSIMEVENT_TFCSParametrization_h
7 
9 
11 public:
12  TFCSParametrization(const char *name = nullptr, const char *title = nullptr);
13  void clear();
14 
15  virtual bool is_match_pdgid(int id) const override {
16  return TestBit(kMatchAllPDGID) || m_pdgid.find(id) != m_pdgid.end();
17  };
18  virtual bool is_match_Ekin(float Ekin) const override {
19  return (Ekin >= m_Ekin_min) && (Ekin < m_Ekin_max);
20  };
21  virtual bool is_match_eta(float eta) const override {
22  return (eta >= m_eta_min) && (eta < m_eta_max);
23  };
24 
25  virtual bool is_match_all_Ekin() const override {
26  return Ekin_min() == init_Ekin_min && Ekin_max() == init_Ekin_max;
27  };
28  virtual bool is_match_all_eta() const override {
29  return eta_min() == init_eta_min && eta_max() == init_eta_max;
30  };
31  virtual bool is_match_all_Ekin_bin() const override { return true; };
32  virtual bool is_match_all_calosample() const override { return true; };
33 
34  const std::set<int> &pdgid() const override { return m_pdgid; };
35  double Ekin_nominal() const override { return m_Ekin_nominal; };
36  double Ekin_min() const override { return m_Ekin_min; };
37  double Ekin_max() const override { return m_Ekin_max; };
38  double eta_nominal() const override { return m_eta_nominal; };
39  double eta_min() const override { return m_eta_min; };
40  double eta_max() const override { return m_eta_max; };
41 
42  virtual void set_pdgid(int id);
43  virtual void set_pdgid(const std::set<int> &ids);
44  virtual void add_pdgid(int id);
45  virtual void clear_pdgid();
46 
47  virtual void set_Ekin_nominal(double min);
48  virtual void set_Ekin_min(double min);
49  virtual void set_Ekin_max(double max);
50  virtual void set_eta_nominal(double min);
51  virtual void set_eta_min(double min);
52  virtual void set_eta_max(double max);
53 
54  virtual void set_Ekin(const TFCSParametrizationBase &ref);
55  virtual void set_eta(const TFCSParametrizationBase &ref);
56  virtual void set_Ekin_eta(const TFCSParametrizationBase &ref);
57  virtual void set_pdgid_Ekin_eta(const TFCSParametrizationBase &ref);
58 
59 protected:
60  bool compare(const TFCSParametrizationBase &ref) const;
61 
62 private:
63  std::set<int> m_pdgid;
66 
67  ClassDefOverride(TFCSParametrization, 1) // TFCSParametrization
68 };
69 
70 #endif
TFCSParametrization::is_match_all_Ekin
virtual bool is_match_all_Ekin() const override
Definition: TFCSParametrization.h:25
TFCSParametrization::set_Ekin_nominal
virtual void set_Ekin_nominal(double min)
Definition: TFCSParametrization.cxx:39
TFCSParametrization::pdgid
const std::set< int > & pdgid() const override
Definition: TFCSParametrization.h:34
TFCSParametrization::compare
bool compare(const TFCSParametrizationBase &ref) const
Definition: TFCSParametrization.cxx:78
TFCSParametrizationBase::init_Ekin_max
static constexpr double init_Ekin_max
Do not persistify!
Definition: TFCSParametrizationBase.h:155
TFCSParametrization::is_match_pdgid
virtual bool is_match_pdgid(int id) const override
Definition: TFCSParametrization.h:15
max
#define max(a, b)
Definition: cfImp.cxx:41
TFCSParametrizationBase::init_Ekin_min
static constexpr double init_Ekin_min
Do not persistify!
Definition: TFCSParametrizationBase.h:154
TFCSParametrization::Ekin_max
double Ekin_max() const override
Definition: TFCSParametrization.h:37
TFCSParametrizationBase::init_eta_min
static constexpr double init_eta_min
Do not persistify!
Definition: TFCSParametrizationBase.h:157
eta
Scalar eta() const
pseudorapidity method
Definition: AmgMatrixBasePlugin.h:79
TFCSParametrization::add_pdgid
virtual void add_pdgid(int id)
Definition: TFCSParametrization.cxx:35
TFCSParametrization::set_pdgid_Ekin_eta
virtual void set_pdgid_Ekin_eta(const TFCSParametrizationBase &ref)
Definition: TFCSParametrization.cxx:72
TFCSParametrization::m_eta_nominal
double m_eta_nominal
Definition: TFCSParametrization.h:65
TFCSParametrization::set_Ekin_max
virtual void set_Ekin_max(double max)
Definition: TFCSParametrization.cxx:45
TFCSParametrizationBase::init_eta_max
static constexpr double init_eta_max
Do not persistify!
Definition: TFCSParametrizationBase.h:158
TFCSParametrization::eta_nominal
double eta_nominal() const override
Definition: TFCSParametrization.h:38
TFCSParametrization::m_eta_max
double m_eta_max
Definition: TFCSParametrization.h:65
TFCSParametrization::set_Ekin
virtual void set_Ekin(const TFCSParametrizationBase &ref)
Definition: TFCSParametrization.cxx:55
TFCSParametrization::set_eta
virtual void set_eta(const TFCSParametrizationBase &ref)
Definition: TFCSParametrization.cxx:61
TFCSParametrization::is_match_all_Ekin_bin
virtual bool is_match_all_Ekin_bin() const override
Definition: TFCSParametrization.h:31
TFCSParametrization::set_eta_max
virtual void set_eta_max(double max)
Definition: TFCSParametrization.cxx:53
TFCSParametrization::is_match_all_calosample
virtual bool is_match_all_calosample() const override
Definition: TFCSParametrization.h:32
TFCSParametrizationBase.h
TFCSParametrization::is_match_Ekin
virtual bool is_match_Ekin(float Ekin) const override
Definition: TFCSParametrization.h:18
TFCSParametrization::set_pdgid
virtual void set_pdgid(int id)
Definition: TFCSParametrization.cxx:28
TFCSParametrization::set_Ekin_eta
virtual void set_Ekin_eta(const TFCSParametrizationBase &ref)
Definition: TFCSParametrization.cxx:67
TFCSParametrizationBase
Definition: TFCSParametrizationBase.h:46
TFCSParametrization::set_Ekin_min
virtual void set_Ekin_min(double min)
Definition: TFCSParametrization.cxx:43
TFCSParametrization::TFCSParametrization
TFCSParametrization(const char *name=nullptr, const char *title=nullptr)
Definition: TFCSParametrization.cxx:12
TFCSParametrization::clear_pdgid
virtual void clear_pdgid()
Definition: TFCSParametrization.cxx:37
covarianceTool.title
title
Definition: covarianceTool.py:542
TFCSParametrization::is_match_eta
virtual bool is_match_eta(float eta) const override
Definition: TFCSParametrization.h:21
TFCSParametrization::m_Ekin_min
double m_Ekin_min
Definition: TFCSParametrization.h:64
TFCSParametrization::Ekin_min
double Ekin_min() const override
Definition: TFCSParametrization.h:36
TFCSParametrization::m_eta_min
double m_eta_min
Definition: TFCSParametrization.h:65
TFCSParametrization::eta_max
double eta_max() const override
Definition: TFCSParametrization.h:40
TFCSParametrization::is_match_all_eta
virtual bool is_match_all_eta() const override
Definition: TFCSParametrization.h:28
min
#define min(a, b)
Definition: cfImp.cxx:40
TFCSParametrization::m_Ekin_nominal
double m_Ekin_nominal
Definition: TFCSParametrization.h:64
TFCSParametrization
Definition: TFCSParametrization.h:10
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
TFCSParametrization::eta_min
double eta_min() const override
Definition: TFCSParametrization.h:39
TFCSParametrization::m_pdgid
std::set< int > m_pdgid
Definition: TFCSParametrization.h:63
python.subdetectors.mmg.ids
ids
Definition: mmg.py:8
TFCSParametrization::set_eta_nominal
virtual void set_eta_nominal(double min)
Definition: TFCSParametrization.cxx:47
TFCSParametrization::clear
void clear()
Definition: TFCSParametrization.cxx:18
ref
const boost::regex ref(r_ef)
TFCSParametrization::Ekin_nominal
double Ekin_nominal() const override
Definition: TFCSParametrization.h:35
TFCSParametrization::set_eta_min
virtual void set_eta_min(double min)
Definition: TFCSParametrization.cxx:51
TFCSParametrization::m_Ekin_max
double m_Ekin_max
Definition: TFCSParametrization.h:64
TFCSParametrizationBase::kMatchAllPDGID
@ kMatchAllPDGID
Set this bit in the TObject bit field if valid for all PDGID.
Definition: TFCSParametrizationBase.h:53