ATLAS Offline Software
Loading...
Searching...
No Matches
CaloInfo.h
Go to the documentation of this file.
1// Dear emacs, this is -*- c++ -*-
2
3/*
4 Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
5*/
6
7#ifndef TrigConf_CaloInfo
8#define TrigConf_CaloInfo
9
10#include <string>
11#include <vector>
16
17namespace TrigConf {
18
19 struct MinTOBPt {
21 MinTOBPt( unsigned int ptmin,
22 int32_t etamin,
23 int32_t etamax,
24 unsigned int priority) :
26 {}
27
28 unsigned int ptmin {0};
29 int32_t etamin {-49};
30 int32_t etamax {49};
31 unsigned int priority {0};
32 };
33
34
35 class CaloInfo : public L1DataBaseclass {
36
37 public:
38 CaloInfo();
39 virtual ~CaloInfo() override = default;
40
41 // getters
42 double globalScale() const { return m_GlobalScale; }
43 float globalEmScale() const { return m_GlobalEmScale; }
44 float globalJetScale() const { return m_GlobalJetScale; }
45
46 const std::vector<int>& jetWeights() const { return m_JetWeights; }
47
48 const std::vector<CaloSinCos>& caloSinCos() const { return m_CaloSinCos; }
49
51 const METSigParam& metSigParam() const { return m_METSigParam; }
52
53 const std::vector<IsolationParam>& isolationHAIsoForEMthr() const { return m_IsolationHAIsoForEMthr; }
54 const std::vector<IsolationParam>& isolationEMIsoForEMthr() const { return m_IsolationEMIsoForEMthr; }
55 const std::vector<IsolationParam>& isolationEMIsoForTAUthr() const { return m_IsolationEMIsoForTAUthr; }
56
57 unsigned int jetWindowSizeSmall() const { return m_JetWindowSizeSmall; }
58 unsigned int jetWindowSizeLarge() const { return m_JetWindowSizeLarge; }
59
60 const MinTOBPt & minTobEM() const { return m_tobEM; }
61 const MinTOBPt & minTobTau() const { return m_tobTau; }
62 const MinTOBPt & minTobJetSmall() const { return m_tobJetSmall; }
63 const MinTOBPt & minTobJetLarge() const { return m_tobJetLarge; }
64
65 // setters
66 void setGlobalScale(double val) { m_GlobalScale = val; }
67 void setGlobalEmScale(float val) { m_GlobalEmScale = val; }
68 void setGlobalJetScale(float val) { m_GlobalJetScale = val; }
69 void addJetWeight(int);
70 void addCaloSinCos(const CaloSinCos&);
71
72 void setIsolation(const std::string & isothrtype, unsigned int bit, const IsolationParam & isopar);
73
74 void setMinTobEM(const MinTOBPt & m) { m_tobEM = m; }
75 void setMinTobTau(const MinTOBPt & m) { m_tobTau = m; }
76 void setMinTobJetSmall(const MinTOBPt & m) { m_tobJetSmall = m; }
77 void setMinTobJetLarge(const MinTOBPt & m) { m_tobJetLarge = m; }
78
79 void setJetWindowSizeSmall(unsigned int window) { m_JetWindowSizeSmall = window; }
80 void setJetWindowSizeLarge(unsigned int window) { m_JetWindowSizeLarge = window; }
81
82
83 virtual void print(const std::string& indent="", unsigned int detail=1) const override;
84 void writeXML(std::ostream & xmlfile, int indentLevel=0, int indentWidth=2) const;
85
86 void clear();
87
88 protected:
89 float m_GlobalScale {1};
90 float m_GlobalEmScale {1};
92 std::vector<int> m_JetWeights;
93 std::vector<CaloSinCos> m_CaloSinCos;
95
96 std::vector<IsolationParam> m_IsolationHAIsoForEMthr;
97 std::vector<IsolationParam> m_IsolationEMIsoForEMthr;
98 std::vector<IsolationParam> m_IsolationEMIsoForTAUthr;
99
104
105 unsigned int m_JetWindowSizeSmall {4};
106 unsigned int m_JetWindowSizeLarge {8};
107
108 };
109
110}
111
112#endif
113
void setIsolation(const std::string &isothrtype, unsigned int bit, const IsolationParam &isopar)
Definition CaloInfo.cxx:57
std::vector< IsolationParam > m_IsolationHAIsoForEMthr
Definition CaloInfo.h:96
const std::vector< int > & jetWeights() const
Definition CaloInfo.h:46
virtual void print(const std::string &indent="", unsigned int detail=1) const override
Definition CaloInfo.cxx:75
const MinTOBPt & minTobEM() const
Definition CaloInfo.h:60
const MinTOBPt & minTobJetSmall() const
Definition CaloInfo.h:62
void setMinTobEM(const MinTOBPt &m)
Definition CaloInfo.h:74
void setJetWindowSizeLarge(unsigned int window)
Definition CaloInfo.h:80
void addCaloSinCos(const CaloSinCos &)
Definition CaloInfo.cxx:35
std::vector< int > m_JetWeights
Definition CaloInfo.h:92
const METSigParam & metSigParam() const
Definition CaloInfo.h:51
const std::vector< CaloSinCos > & caloSinCos() const
Definition CaloInfo.h:48
virtual ~CaloInfo() override=default
MinTOBPt m_tobJetSmall
Definition CaloInfo.h:102
std::vector< IsolationParam > m_IsolationEMIsoForEMthr
Definition CaloInfo.h:97
void setGlobalScale(double val)
Definition CaloInfo.h:66
void setMinTobTau(const MinTOBPt &m)
Definition CaloInfo.h:75
float m_GlobalJetScale
Definition CaloInfo.h:91
unsigned int m_JetWindowSizeSmall
Definition CaloInfo.h:105
void setMinTobJetSmall(const MinTOBPt &m)
Definition CaloInfo.h:76
float globalEmScale() const
Definition CaloInfo.h:43
void writeXML(std::ostream &xmlfile, int indentLevel=0, int indentWidth=2) const
Definition CaloInfo.cxx:98
unsigned int jetWindowSizeSmall() const
Definition CaloInfo.h:57
const MinTOBPt & minTobTau() const
Definition CaloInfo.h:61
double globalScale() const
Definition CaloInfo.h:42
unsigned int m_JetWindowSizeLarge
Definition CaloInfo.h:106
MinTOBPt m_tobJetLarge
Definition CaloInfo.h:103
void setJetWindowSizeSmall(unsigned int window)
Definition CaloInfo.h:79
const std::vector< IsolationParam > & isolationEMIsoForTAUthr() const
Definition CaloInfo.h:55
void setMinTobJetLarge(const MinTOBPt &m)
Definition CaloInfo.h:77
METSigParam & metSigParam()
Definition CaloInfo.h:50
METSigParam m_METSigParam
Definition CaloInfo.h:94
float m_GlobalEmScale
Definition CaloInfo.h:90
const std::vector< IsolationParam > & isolationEMIsoForEMthr() const
Definition CaloInfo.h:54
void addJetWeight(int)
Definition CaloInfo.cxx:29
unsigned int jetWindowSizeLarge() const
Definition CaloInfo.h:58
float globalJetScale() const
Definition CaloInfo.h:44
std::vector< CaloSinCos > m_CaloSinCos
Definition CaloInfo.h:93
const std::vector< IsolationParam > & isolationHAIsoForEMthr() const
Definition CaloInfo.h:53
const MinTOBPt & minTobJetLarge() const
Definition CaloInfo.h:63
void setGlobalEmScale(float val)
Definition CaloInfo.h:67
void setGlobalJetScale(float val)
Definition CaloInfo.h:68
std::vector< IsolationParam > m_IsolationEMIsoForTAUthr
Definition CaloInfo.h:98
MinTOBPt m_tobTau
Definition CaloInfo.h:101
std::ostream & indent(std::ostream &o, int lvl, int size) const
static std::vector< std::string > xmlfile
Definition iLumiCalc.h:29
Forward iterator to traverse the main components of the trigger configuration.
Definition Config.h:22
unsigned int priority
Definition CaloInfo.h:31
MinTOBPt(unsigned int ptmin, int32_t etamin, int32_t etamax, unsigned int priority)
Definition CaloInfo.h:21
unsigned int ptmin
Definition CaloInfo.h:28