20 if(
const auto & thrVs =
data().get_child_optional(
"thrValues") ) {
21 for(
auto &
x : thrVs.get() ) {
22 auto isobits =
x.second.get_child(
"isobits").get_value<std::string>();
23 auto etamin =
x.second.get_child(
"etamin").get_value<
unsigned int>();
24 auto etamax =
x.second.get_child(
"etamax").get_value<
unsigned int>();
25 auto priority =
x.second.get_child(
"priority").get_value<
unsigned int>();
28 for(
char c: isobits) {
30 if(c==
'1') isomask += 1;
32 m_isolationMask.addRangeValue(isomask, etamin, etamax, priority,
false);
39 os <<
"EM threshold " <<
name() <<
" with mapping " <<
mapping() << std::endl;
46 os <<
" eta = " <<
eta <<
" : " << value <<
" GeV " << valueMeV <<
" MeV " << value100MeV <<
" 100MeV "
47 << counts <<
" counts , isoMaks " << iso << std::endl;
60 for(
char c: isobits) {
74 static const std::vector<int> allowedBoundaries{0, 1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25, 28, 31, 49};
75 if(
const auto & thrVs =
data().get_child_optional(
"thrValues") ) {
76 for(
auto &
x : thrVs.get() ) {
77 auto etamin =
x.second.get_child(
"etamin").get_value<
int>();
82 auto etamax =
x.second.get_child(
"etamax").get_value<
int>();
87 auto priority =
x.second.get_child(
"priority").get_value<
unsigned int>();
88 auto window =
x.second.get_child(
"window").get_value<
unsigned int>();
171const std::shared_ptr<TrigConf::L1ThrExtraInfo_jTAU>
174 return dynamic_pointer_cast<TrigConf::L1ThrExtraInfo_jTAU>(
m_extraInfo.lock());
187const std::shared_ptr<TrigConf::L1ThrExtraInfo_cTAU>
190 return dynamic_pointer_cast<TrigConf::L1ThrExtraInfo_cTAU>(
m_extraInfo.lock());
269 auto muInfo = std::dynamic_pointer_cast<L1ThrExtraInfo_MU>(
m_extraInfo.lock());
Scalar eta() const
pseudorapidity method
char data[hepevt_bytes_allocation_ATLAS]
const ptree & data() const
Access to the underlying data, if needed.
std::optional< T > getAttribute_optional(const std::string &key) const
T getAttribute(const std::string &key, bool ignoreIfMissing=false, const T &def=T()) const
Access to simple attribute.
virtual float thrValue(int eta=0) const override
Accessor to the threshold value for eta-dependent threholds.
ValueWithEtaDependence< unsigned int > m_etaDepThrValue
eta-dependent threshold value in MeV
virtual unsigned int thrValueMeV(int eta=0) const
virtual unsigned int thrValueCounts(int eta=0) const
virtual unsigned int thrValue100MeV(int eta=0) const
as above above but in 100 MeV
uint16_t isolationMask(int eta) const
void print(std::ostream &os=std::cout) const override
ValueWithEtaDependence< uint16_t > m_isolationMask
ValueWithEtaDependence< unsigned int > m_etaDepWindow
eta-dependent threshold value in MeV
unsigned int window(int eta=0) const
float thrValue(int eta=0) const override
this function is only to satisfy the base class interface.
std::string m_region
comma-separated list of BA, EC, FW or the string ALL
unsigned int m_idxForward
std::string m_tgcFlags
a logical expression like 'F & C | F & H | C & H'
std::string m_rpcFlags
a logical expression like 'M'
std::string m_rpcExclROIList
a string sepcifying the list of ROIs to be excluded (the lists are defined in the extraInfo_MU)
unsigned int m_seedBcdelay
unsigned int m_seedMultiplicity
unsigned int m_seedBcdelay
Selection::WP m_isolation
const std::shared_ptr< L1ThrExtraInfo_cTAU > getExtraInfo() const
const std::shared_ptr< L1ThrExtraInfo_jTAU > getExtraInfo() const
Selection::WP m_isolation
unsigned int mapping() const
Accessor to the mapping number The mapping is unique within a type.
std::weak_ptr< L1ThrExtraInfoBase > m_extraInfo
static WP stringToWP(const std::string &)