Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
Alexander Undrus
athena
Commits
6ec81dd3
Commit
6ec81dd3
authored
Sep 29, 2021
by
Frank Winklmeier
Browse files
Merge branch 'ATR-21235_dzanzi' into 'master'
further work on L1 configuration (ATR-21235, ATR-23596) See merge request
atlas/athena!46711
parents
25138896
4e6f4079
Changes
11
Hide whitespace changes
Inline
Side-by-side
Trigger/TrigConfiguration/TrigConfData/CMakeLists.txt
View file @
6ec81dd3
...
...
@@ -51,7 +51,7 @@ if( NOT XAOD_ANALYSIS )
atlas_add_test
(
TestDoubleMenuLoad SOURCES test/doubleLoad.cxx
INCLUDE_DIRS
${
CORAL_INCLUDE_DIRS
}
LINK_LIBRARIES
${
CORAL_LIBRARIES
}
TrigConfData TrigConfIO
ENVIRONMENT
"CLArgs=TRIGGERDBDEV1_I8
99 497 487
4"
ENVIRONMENT
"CLArgs=TRIGGERDBDEV1_I8
104 499 490
4"
PRE_EXEC_SCRIPT
"rm -f *1.json *2.json NoDBConnection.txt"
POST_EXEC_SCRIPT
${
CMAKE_CURRENT_SOURCE_DIR
}
/share/doubleTestComp.py
)
endif
()
Trigger/TrigConfiguration/TrigConfData/TrigConfData/L1ThrExtraInfo.h
View file @
6ec81dd3
...
...
@@ -210,20 +210,32 @@ namespace TrigConf {
virtual
std
::
string
className
()
const
{
return
"L1ThrExtraInfo_jEM"
;
}
const
WorkingPoints_jEM
&
isolation
(
TrigConf
::
Selection
::
WP
wp
,
int
eta
)
const
{
return
m_isolation
.
at
(
wp
).
at
(
eta
);
}
const
ValueWithEtaDependence
<
WorkingPoints_jEM
>
&
isolation
(
TrigConf
::
Selection
::
WP
wp
)
const
{
return
m_isolation
.
at
(
wp
);
}
float
ptMinToTopo
(
int
eta
=
0
)
const
{
return
ptMinToTopoMeV
(
eta
)
/
1000.0
;
}
unsigned
int
ptMinToTopoMeV
(
int
eta
=
0
)
const
{
return
m_ptMinToTopoMeV
.
at
(
eta
);
}
unsigned
int
ptMinToTopoCounts
(
int
eta
=
0
)
const
{
return
energyInCounts
(
ptMinToTopoMeV
(
eta
),
resolutionMeV
()
);
}
const
ValueWithEtaDependence
<
int
>
&
ptMinToTopoEtaMeV
()
const
{
return
m_ptMinToTopoMeV
;
}
float
ptMinxTOB
(
int
eta
=
0
)
const
{
return
ptMinxTOBMeV
(
eta
)
/
1000.0
;
}
unsigned
int
ptMinxTOBMeV
(
int
eta
=
0
)
const
{
return
m_ptMinxTOBMeV
.
at
(
eta
);
}
unsigned
int
ptMinxTOBCounts
(
int
eta
=
0
)
const
{
return
energyInCounts
(
ptMinxTOBMeV
(
eta
),
resolutionMeV
()
);
}
const
ValueWithEtaDependence
<
int
>
&
ptMinxTOBEtaMeV
()
const
{
return
m_ptMinxTOBMeV
;
}
float
ptMinToTopo
(
std
::
string
module
)
const
{
return
ptMinToTopoMeV
(
module
)
/
1000.0
;
}
unsigned
int
ptMinToTopoCounts
(
std
::
string
module
)
const
{
return
energyInCounts
(
ptMinToTopoMeV
(
module
),
resolutionMeV
());
}
unsigned
int
ptMinToTopoMeV
(
std
::
string
module
)
const
{
if
(
module
==
"1C"
||
module
==
"1A"
)
return
m_ptMinToTopoMeV1
;
if
(
module
==
"2C"
||
module
==
"2A"
)
return
m_ptMinToTopoMeV2
;
if
(
module
==
"3C"
||
module
==
"3A"
)
return
m_ptMinToTopoMeV3
;
throw
std
::
runtime_error
(
"L1ThrExtraInfo: Module"
+
module
+
" not recongnised"
);
}
float
ptMinxTOB
(
std
::
string
module
)
const
{
return
ptMinxTOBMeV
(
module
)
/
1000.0
;
}
unsigned
int
ptMinxTOBCounts
(
std
::
string
module
)
const
{
return
energyInCounts
(
ptMinxTOBMeV
(
module
),
resolutionMeV
());
}
unsigned
int
ptMinxTOBMeV
(
std
::
string
module
)
const
{
if
(
module
==
"1C"
||
module
==
"1A"
)
return
m_ptMinxTOBMeV1
;
if
(
module
==
"2C"
||
module
==
"2A"
)
return
m_ptMinxTOBMeV2
;
if
(
module
==
"3C"
||
module
==
"3A"
)
return
m_ptMinxTOBMeV3
;
throw
std
::
runtime_error
(
"L1ThrExtraInfo: Module"
+
module
+
" not recongnised"
);
}
private:
/** Update the internal members */
void
load
();
/** jEM specific data */
ValueWithEtaDependence
<
int
>
m_ptMinToTopoMeV
{
"jEMptMinTopo"
};
ValueWithEtaDependence
<
int
>
m_ptMinxTOBMeV
{
"jEMptMinxTOB"
};
unsigned
int
m_ptMinToTopoMeV1
{
0
};
unsigned
int
m_ptMinToTopoMeV2
{
0
};
unsigned
int
m_ptMinToTopoMeV3
{
0
};
unsigned
int
m_ptMinxTOBMeV1
{
0
};
unsigned
int
m_ptMinxTOBMeV2
{
0
};
unsigned
int
m_ptMinxTOBMeV3
{
0
};
std
::
map
<
TrigConf
::
Selection
::
WP
,
ValueWithEtaDependence
<
WorkingPoints_jEM
>>
m_isolation
{};
};
std
::
ostream
&
operator
<<
(
std
::
ostream
&
os
,
const
TrigConf
::
L1ThrExtraInfo_jEM
::
WorkingPoints_jEM
&
iso
);
...
...
@@ -234,17 +246,17 @@ namespace TrigConf {
public:
WorkingPoints_eTAU
(
const
boost
::
property_tree
::
ptree
&
);
bool
isDefined
()
const
{
return
m_isDefined
;
}
int
isoConeRel
_fw
()
const
{
return
m_
isoConeRel
_fw
;
}
float
isoConeRel
_d
()
const
{
return
m_
isoConeRel
_d
;
}
int
fEM
_fw
()
const
{
return
m_
fEM
_fw
;
}
float
fEM
_d
()
const
{
return
m_
fEM
_d
;
}
int
rCore
_fw
()
const
{
return
m_
rCore
_fw
;
}
float
rCore
_d
()
const
{
return
m_
rCore
_d
;
}
int
rHad
_fw
()
const
{
return
m_
rHad
_fw
;
}
float
rHad
_d
()
const
{
return
m_
rHad
_d
;
}
unsigned
int
maxEt
()
const
{
return
m_maxEt
;
}
private:
bool
m_isDefined
{
false
};
int
m_
isoConeRel
_fw
{
0
};
int
m_
fEM
_fw
{
0
};
float
m_
isoConeRel
_d
{
0
};
float
m_
fEM
_d
{
0
};
int
m_
rCore
_fw
{
0
};
int
m_
rHad
_fw
{
0
};
float
m_
rCore
_d
{
0
};
float
m_
rHad
_d
{
0
};
unsigned
int
m_maxEt
{
0
};
};
L1ThrExtraInfo_eTAU
(
const
std
::
string
&
thrTypeName
,
const
ptree
&
data
)
:
...
...
@@ -284,22 +296,34 @@ namespace TrigConf {
L1ThrExtraInfoBase
(
thrTypeName
,
data
)
{
load
();
}
virtual
~
L1ThrExtraInfo_jTAU
()
=
default
;
virtual
std
::
string
className
()
const
{
return
"L1ThrExtraInfo_jTAU"
;
}
float
ptMinToTopo
(
int
eta
=
0
)
const
{
return
ptMinToTopoMeV
(
eta
)
/
1000.0
;
}
unsigned
int
ptMinToTopoMeV
(
int
eta
=
0
)
const
{
return
m_ptMinToTopoMeV
.
at
(
eta
);
}
unsigned
int
ptMinToTopoCounts
(
int
eta
=
0
)
const
{
return
energyInCounts
(
ptMinToTopoMeV
(
eta
),
resolutionMeV
()
);
}
const
ValueWithEtaDependence
<
int
>
&
ptMinToTopoEtaMeV
()
const
{
return
m_ptMinToTopoMeV
;
}
float
ptMinxTOB
(
int
eta
=
0
)
const
{
return
ptMinxTOBMeV
(
eta
)
/
1000.0
;
}
unsigned
int
ptMinxTOBMeV
(
int
eta
=
0
)
const
{
return
m_ptMinxTOBMeV
.
at
(
eta
);
}
unsigned
int
ptMinxTOBCounts
(
int
eta
=
0
)
const
{
return
energyInCounts
(
ptMinxTOBMeV
(
eta
),
resolutionMeV
()
);
}
const
ValueWithEtaDependence
<
int
>
&
ptMinxTOBEtaMeV
()
const
{
return
m_ptMinxTOBMeV
;
}
const
WorkingPoints_jTAU
&
isolation
(
TrigConf
::
Selection
::
WP
wp
,
int
eta
)
const
{
return
m_isolation
.
at
(
wp
).
at
(
eta
);
}
const
ValueWithEtaDependence
<
WorkingPoints_jTAU
>
&
isolation
(
TrigConf
::
Selection
::
WP
wp
)
const
{
return
m_isolation
.
at
(
wp
);
}
float
ptMinToTopo
(
std
::
string
module
)
const
{
return
ptMinToTopoMeV
(
module
)
/
1000.0
;
}
unsigned
int
ptMinToTopoCounts
(
std
::
string
module
)
const
{
return
energyInCounts
(
ptMinToTopoMeV
(
module
),
resolutionMeV
());
}
unsigned
int
ptMinToTopoMeV
(
std
::
string
module
)
const
{
if
(
module
==
"1C"
||
module
==
"1A"
)
return
m_ptMinToTopoMeV1
;
if
(
module
==
"2C"
||
module
==
"2A"
)
return
m_ptMinToTopoMeV2
;
if
(
module
==
"3C"
||
module
==
"3A"
)
return
m_ptMinToTopoMeV3
;
throw
std
::
runtime_error
(
"L1ThrExtraInfo: Module"
+
module
+
" not recongnised"
);
}
float
ptMinxTOB
(
std
::
string
module
)
const
{
return
ptMinxTOBMeV
(
module
)
/
1000.0
;
}
unsigned
int
ptMinxTOBCounts
(
std
::
string
module
)
const
{
return
energyInCounts
(
ptMinxTOBMeV
(
module
),
resolutionMeV
());
}
unsigned
int
ptMinxTOBMeV
(
std
::
string
module
)
const
{
if
(
module
==
"1C"
||
module
==
"1A"
)
return
m_ptMinxTOBMeV1
;
if
(
module
==
"2C"
||
module
==
"2A"
)
return
m_ptMinxTOBMeV2
;
if
(
module
==
"3C"
||
module
==
"3A"
)
return
m_ptMinxTOBMeV3
;
throw
std
::
runtime_error
(
"L1ThrExtraInfo: Module"
+
module
+
" not recongnised"
);
}
private:
/** Update the internal members */
void
load
();
/** jTAU specific data */
ValueWithEtaDependence
<
int
>
m_ptMinToTopoMeV
{
"jTAUptMinTopo"
};
ValueWithEtaDependence
<
int
>
m_ptMinxTOBMeV
{
"jTAUptMinxTOB"
};
unsigned
int
m_ptMinToTopoMeV1
{
0
};
unsigned
int
m_ptMinToTopoMeV2
{
0
};
unsigned
int
m_ptMinToTopoMeV3
{
0
};
unsigned
int
m_ptMinxTOBMeV1
{
0
};
unsigned
int
m_ptMinxTOBMeV2
{
0
};
unsigned
int
m_ptMinxTOBMeV3
{
0
};
std
::
map
<
TrigConf
::
Selection
::
WP
,
ValueWithEtaDependence
<
WorkingPoints_jTAU
>>
m_isolation
{};
};
std
::
ostream
&
operator
<<
(
std
::
ostream
&
os
,
const
TrigConf
::
L1ThrExtraInfo_jTAU
::
WorkingPoints_jTAU
&
iso
);
...
...
@@ -337,20 +361,32 @@ namespace TrigConf {
L1ThrExtraInfoBase
(
thrTypeName
,
data
)
{
load
();
}
virtual
~
L1ThrExtraInfo_jJ
()
=
default
;
virtual
std
::
string
className
()
const
{
return
"L1ThrExtraInfo_jJ"
;
}
float
ptMinToTopo
(
int
eta
=
0
)
const
{
return
ptMinToTopoMeV
(
eta
)
/
1000.0
;
}
unsigned
int
ptMinToTopoMeV
(
int
eta
=
0
)
const
{
return
m_ptMinToTopoMeV
.
at
(
eta
);
}
unsigned
int
ptMinToTopoCounts
(
int
eta
=
0
)
const
{
return
energyInCounts
(
ptMinToTopoMeV
(
eta
),
resolutionMeV
()
);
}
const
ValueWithEtaDependence
<
int
>
&
ptMinToTopoEtaMeV
()
const
{
return
m_ptMinToTopoMeV
;
}
float
ptMinxTOB
(
int
eta
=
0
)
const
{
return
ptMinxTOBMeV
(
eta
)
/
1000.0
;
}
unsigned
int
ptMinxTOBMeV
(
int
eta
=
0
)
const
{
return
m_ptMinxTOBMeV
.
at
(
eta
);
}
unsigned
int
ptMinxTOBCounts
(
int
eta
=
0
)
const
{
return
energyInCounts
(
ptMinxTOBMeV
(
eta
),
resolutionMeV
()
);
}
const
ValueWithEtaDependence
<
int
>
&
ptMinxTOBEtaMeV
()
const
{
return
m_ptMinxTOBMeV
;
}
float
ptMinToTopo
(
std
::
string
module
)
const
{
return
ptMinToTopoMeV
(
module
)
/
1000.0
;
}
unsigned
int
ptMinToTopoCounts
(
std
::
string
module
)
const
{
return
energyInCounts
(
ptMinToTopoMeV
(
module
),
resolutionMeV
());
}
unsigned
int
ptMinToTopoMeV
(
std
::
string
module
)
const
{
if
(
module
==
"1C"
||
module
==
"1A"
)
return
m_ptMinToTopoMeV1
;
if
(
module
==
"2C"
||
module
==
"2A"
)
return
m_ptMinToTopoMeV2
;
if
(
module
==
"3C"
||
module
==
"3A"
)
return
m_ptMinToTopoMeV3
;
throw
std
::
runtime_error
(
"L1ThrExtraInfo: Module"
+
module
+
" not recongnised"
);
}
float
ptMinxTOB
(
std
::
string
module
)
const
{
return
ptMinxTOBMeV
(
module
)
/
1000.0
;
}
unsigned
int
ptMinxTOBCounts
(
std
::
string
module
)
const
{
return
energyInCounts
(
ptMinxTOBMeV
(
module
),
resolutionMeV
());
}
unsigned
int
ptMinxTOBMeV
(
std
::
string
module
)
const
{
if
(
module
==
"1C"
||
module
==
"1A"
)
return
m_ptMinxTOBMeV1
;
if
(
module
==
"2C"
||
module
==
"2A"
)
return
m_ptMinxTOBMeV2
;
if
(
module
==
"3C"
||
module
==
"3A"
)
return
m_ptMinxTOBMeV3
;
throw
std
::
runtime_error
(
"L1ThrExtraInfo: Module"
+
module
+
" not recongnised"
);
}
private:
/** Update the internal members */
void
load
();
/** jJ specific data */
ValueWithEtaDependence
<
int
>
m_ptMinToTopoMeV
{
"jJptMinTopo"
};
ValueWithEtaDependence
<
int
>
m_ptMinxTOBMeV
{
"jJptMinxTOB"
};
unsigned
int
m_ptMinToTopoMeV1
{
0
};
unsigned
int
m_ptMinToTopoMeV2
{
0
};
unsigned
int
m_ptMinToTopoMeV3
{
0
};
unsigned
int
m_ptMinxTOBMeV1
{
0
};
unsigned
int
m_ptMinxTOBMeV2
{
0
};
unsigned
int
m_ptMinxTOBMeV3
{
0
};
};
class
L1ThrExtraInfo_jLJ
final
:
public
L1ThrExtraInfoBase
{
...
...
@@ -359,20 +395,32 @@ namespace TrigConf {
L1ThrExtraInfoBase
(
thrTypeName
,
data
)
{
load
();
}
virtual
~
L1ThrExtraInfo_jLJ
()
=
default
;
virtual
std
::
string
className
()
const
{
return
"L1ThrExtraInfo_jLJ"
;
}
float
ptMinToTopo
(
int
eta
=
0
)
const
{
return
ptMinToTopoMeV
(
eta
)
/
1000.0
;
}
unsigned
int
ptMinToTopoMeV
(
int
eta
=
0
)
const
{
return
m_ptMinToTopoMeV
.
at
(
eta
);
}
unsigned
int
ptMinToTopoCounts
(
int
eta
=
0
)
const
{
return
energyInCounts
(
ptMinToTopoMeV
(
eta
),
resolutionMeV
()
);
}
const
ValueWithEtaDependence
<
int
>
&
ptMinToTopoEtaMeV
()
const
{
return
m_ptMinToTopoMeV
;
}
float
ptMinxTOB
(
int
eta
=
0
)
const
{
return
ptMinxTOBMeV
(
eta
)
/
1000.0
;
}
unsigned
int
ptMinxTOBMeV
(
int
eta
=
0
)
const
{
return
m_ptMinxTOBMeV
.
at
(
eta
);
}
unsigned
int
ptMinxTOBCounts
(
int
eta
=
0
)
const
{
return
energyInCounts
(
ptMinxTOBMeV
(
eta
),
resolutionMeV
()
);
}
const
ValueWithEtaDependence
<
int
>
&
ptMinxTOBEtaMeV
()
const
{
return
m_ptMinxTOBMeV
;
}
float
ptMinToTopo
(
std
::
string
module
)
const
{
return
ptMinToTopoMeV
(
module
)
/
1000.0
;
}
unsigned
int
ptMinToTopoCounts
(
std
::
string
module
)
const
{
return
energyInCounts
(
ptMinToTopoMeV
(
module
),
resolutionMeV
());
}
unsigned
int
ptMinToTopoMeV
(
std
::
string
module
)
const
{
if
(
module
==
"1C"
||
module
==
"1A"
)
return
m_ptMinToTopoMeV1
;
if
(
module
==
"2C"
||
module
==
"2A"
)
return
m_ptMinToTopoMeV2
;
if
(
module
==
"3C"
||
module
==
"3A"
)
return
m_ptMinToTopoMeV3
;
throw
std
::
runtime_error
(
"L1ThrExtraInfo: Module"
+
module
+
" not recongnised"
);
}
float
ptMinxTOB
(
std
::
string
module
)
const
{
return
ptMinxTOBMeV
(
module
)
/
1000.0
;
}
unsigned
int
ptMinxTOBCounts
(
std
::
string
module
)
const
{
return
energyInCounts
(
ptMinxTOBMeV
(
module
),
resolutionMeV
());
}
unsigned
int
ptMinxTOBMeV
(
std
::
string
module
)
const
{
if
(
module
==
"1C"
||
module
==
"1A"
)
return
m_ptMinxTOBMeV1
;
if
(
module
==
"2C"
||
module
==
"2A"
)
return
m_ptMinxTOBMeV2
;
if
(
module
==
"3C"
||
module
==
"3A"
)
return
m_ptMinxTOBMeV3
;
throw
std
::
runtime_error
(
"L1ThrExtraInfo: Module"
+
module
+
" not recongnised"
);
}
private:
/** Update the internal members */
void
load
();
/** jLJ specific data */
ValueWithEtaDependence
<
int
>
m_ptMinToTopoMeV
{
"jLJptMinTopo"
};
ValueWithEtaDependence
<
int
>
m_ptMinxTOBMeV
{
"jLJptMinxTOB"
};
unsigned
int
m_ptMinToTopoMeV1
{
0
};
unsigned
int
m_ptMinToTopoMeV2
{
0
};
unsigned
int
m_ptMinToTopoMeV3
{
0
};
unsigned
int
m_ptMinxTOBMeV1
{
0
};
unsigned
int
m_ptMinxTOBMeV2
{
0
};
unsigned
int
m_ptMinxTOBMeV3
{
0
};
};
class
L1ThrExtraInfo_jXE
final
:
public
L1ThrExtraInfoBase
{
...
...
@@ -393,12 +441,28 @@ namespace TrigConf {
L1ThrExtraInfoBase
(
thrTypeName
,
data
)
{
load
();
}
virtual
~
L1ThrExtraInfo_jTE
()
=
default
;
virtual
std
::
string
className
()
const
{
return
"L1ThrExtraInfo_jTE"
;
}
unsigned
int
etaBoundary
()
const
{
return
m_etaBoundary
;
}
unsigned
int
etaBoundary_fw
(
std
::
string
module
)
const
{
if
(
module
==
"1C"
||
module
==
"1A"
)
return
m_etaBoundary1_fw
;
if
(
module
==
"2C"
||
module
==
"2A"
)
return
m_etaBoundary2_fw
;
if
(
module
==
"3C"
||
module
==
"3A"
)
return
m_etaBoundary3_fw
;
throw
std
::
runtime_error
(
"L1ThrExtraInfo: Module"
+
module
+
" not recongnised"
);
}
unsigned
int
etaBoundary
(
std
::
string
module
)
const
{
if
(
module
==
"1C"
||
module
==
"1A"
)
return
m_etaBoundary1
;
if
(
module
==
"2C"
||
module
==
"2A"
)
return
m_etaBoundary2
;
if
(
module
==
"3C"
||
module
==
"3A"
)
return
m_etaBoundary3
;
throw
std
::
runtime_error
(
"L1ThrExtraInfo: Module"
+
module
+
" not recongnised"
);
}
private:
/** Update the internal members */
void
load
();
/** jTE specific data */
unsigned
int
m_etaBoundary
{
0
};
unsigned
int
m_etaBoundary1
{
0
};
// eta for module 1A, 1C
unsigned
int
m_etaBoundary1_fw
{
0
};
// tower number for module 1A, 1C
unsigned
int
m_etaBoundary2
{
0
};
// eta for module 2A, 2C
unsigned
int
m_etaBoundary2_fw
{
0
};
// tower number for module 2A, 2C
unsigned
int
m_etaBoundary3
{
0
};
// eta for module 3A, 3C
unsigned
int
m_etaBoundary3_fw
{
0
};
// tower number for module 3A, 3C
};
class
L1ThrExtraInfo_gXE
final
:
public
L1ThrExtraInfoBase
{
...
...
Trigger/TrigConfiguration/TrigConfData/TrigConfData/L1Threshold.h
View file @
6ec81dd3
...
...
@@ -190,8 +190,8 @@ namespace TrigConf {
virtual
~
L1Threshold_eTAU
()
=
default
;
virtual
std
::
string
className
()
const
override
{
return
"L1Threshold_eTAU"
;
}
// access functions
Selection
::
WP
isoConeRel
()
const
{
return
m_
isoConeRel
;
}
Selection
::
WP
fEM
()
const
{
return
m_
fEM
;
}
Selection
::
WP
rCore
()
const
{
return
m_
rCore
;
}
Selection
::
WP
rHad
()
const
{
return
m_
rHad
;
}
protected:
virtual
void
update
()
override
{
L1Threshold_Calo
::
update
();
...
...
@@ -200,8 +200,8 @@ namespace TrigConf {
private:
void
load
();
// the isolation requirement
Selection
::
WP
m_
isoConeRel
{
Selection
::
WP
::
NONE
};
Selection
::
WP
m_
fEM
{
Selection
::
WP
::
NONE
};
Selection
::
WP
m_
rCore
{
Selection
::
WP
::
NONE
};
Selection
::
WP
m_
rHad
{
Selection
::
WP
::
NONE
};
};
class
L1Threshold_jTAU
final
:
public
L1Threshold_Calo
{
...
...
Trigger/TrigConfiguration/TrigConfData/src/L1ThrExtraInfo.cxx
View file @
6ec81dd3
...
...
@@ -326,24 +326,18 @@ void
TrigConf
::
L1ThrExtraInfo_jEM
::
load
()
{
for
(
auto
&
x
:
m_extraInfo
)
{
if
(
x
.
first
==
"ptMinToTopo"
)
{
for
(
auto
&
k
:
x
.
second
.
data
()
)
{
int
etamin
=
k
.
second
.
get_optional
<
int
>
(
"etamin"
).
get_value_or
(
-
49
);
int
etamax
=
k
.
second
.
get_optional
<
int
>
(
"etamax"
).
get_value_or
(
49
);
float
value
=
k
.
second
.
get_optional
<
float
>
(
"value"
).
get_value_or
(
0
);
auto
priority
=
k
.
second
.
get_optional
<
unsigned
int
>
(
"priority"
).
get_value_or
(
0
);
m_ptMinToTopoMeV
.
addRangeValue
(
lround
(
1000
*
value
),
etamin
,
etamax
,
priority
,
/*symmetric=*/
false
);
}
}
else
if
(
x
.
first
==
"ptMinxTOB"
){
for
(
auto
&
k
:
x
.
second
.
data
()
)
{
int
etamin
=
k
.
second
.
get_optional
<
int
>
(
"etamin"
).
get_value_or
(
-
49
);
int
etamax
=
k
.
second
.
get_optional
<
int
>
(
"etamax"
).
get_value_or
(
49
);
float
value
=
k
.
second
.
get_optional
<
float
>
(
"value"
).
get_value_or
(
0
);
auto
priority
=
k
.
second
.
get_optional
<
unsigned
int
>
(
"priority"
).
get_value_or
(
0
);
m_ptMinxTOBMeV
.
addRangeValue
(
lround
(
1000
*
value
),
etamin
,
etamax
,
priority
,
/*symmetric=*/
false
);
}
if
(
x
.
first
==
"ptMinToTopo1"
)
{
m_ptMinToTopoMeV1
=
1000
*
x
.
second
.
getValue
<
unsigned
int
>
();
}
else
if
(
x
.
first
==
"ptMinToTopo2"
){
m_ptMinToTopoMeV2
=
1000
*
x
.
second
.
getValue
<
unsigned
int
>
();
}
else
if
(
x
.
first
==
"ptMinToTopo3"
){
m_ptMinToTopoMeV3
=
1000
*
x
.
second
.
getValue
<
unsigned
int
>
();
}
else
if
(
x
.
first
==
"ptMinxTOB1"
){
m_ptMinxTOBMeV1
=
1000
*
x
.
second
.
getValue
<
unsigned
int
>
();
}
else
if
(
x
.
first
==
"ptMinxTOB2"
){
m_ptMinxTOBMeV2
=
1000
*
x
.
second
.
getValue
<
unsigned
int
>
();
}
else
if
(
x
.
first
==
"ptMinxTOB3"
){
m_ptMinxTOBMeV3
=
1000
*
x
.
second
.
getValue
<
unsigned
int
>
();
}
else
if
(
x
.
first
==
"workingPoints"
)
{
for
(
auto
&
y
:
x
.
second
.
data
()
)
{
auto
wp
=
Selection
::
stringToWP
(
y
.
first
);
...
...
@@ -364,16 +358,16 @@ TrigConf::L1ThrExtraInfo_jEM::load()
*******/
TrigConf
::
L1ThrExtraInfo_eTAU
::
WorkingPoints_eTAU
::
WorkingPoints_eTAU
(
const
boost
::
property_tree
::
ptree
&
pt
)
{
m_isDefined
=
true
;
m_
isoConeRel
_d
=
pt
.
get_optional
<
float
>
(
"
isoConeRel
"
).
get_value_or
(
0
);
m_
fEM_d
=
pt
.
get_optional
<
float
>
(
"
fEM
"
).
get_value_or
(
0
);
m_
isoConeRel
_fw
=
pt
.
get_optional
<
float
>
(
"
isoConeRel
_fw"
).
get_value_or
(
0
);
m_
fEM_fw
=
pt
.
get_optional
<
float
>
(
"
fEM
_fw"
).
get_value_or
(
0
);
m_maxEt
=
pt
.
get_optional
<
unsigned
int
>
(
"maxEt"
).
get_value_or
(
0
);
m_
rCore
_d
=
pt
.
get_optional
<
float
>
(
"
rCore
"
).
get_value_or
(
0
);
m_
rHad_d
=
pt
.
get_optional
<
float
>
(
"
rHad
"
).
get_value_or
(
0
);
m_
rCore
_fw
=
pt
.
get_optional
<
float
>
(
"
rCore
_fw"
).
get_value_or
(
0
);
m_
rHad_fw
=
pt
.
get_optional
<
float
>
(
"
rHad
_fw"
).
get_value_or
(
0
);
m_maxEt
=
pt
.
get_optional
<
unsigned
int
>
(
"maxEt"
).
get_value_or
(
0
);
}
std
::
ostream
&
TrigConf
::
operator
<<
(
std
::
ostream
&
os
,
const
TrigConf
::
L1ThrExtraInfo_eTAU
::
WorkingPoints_eTAU
&
iso
)
{
os
<<
"
isoConeRel
_fw="
<<
iso
.
isoConeRel
_fw
()
<<
",
fEM
_fw="
<<
iso
.
fEM
_fw
()
;
os
<<
"
rCore
_fw="
<<
iso
.
rCore
_fw
()
<<
",
rHad
_fw="
<<
iso
.
rHad
_fw
()
;
return
os
;
}
...
...
@@ -418,24 +412,18 @@ void
TrigConf
::
L1ThrExtraInfo_jTAU
::
load
()
{
for
(
auto
&
x
:
m_extraInfo
)
{
if
(
x
.
first
==
"ptMinToTopo"
)
{
for
(
auto
&
k
:
x
.
second
.
data
()
)
{
int
etamin
=
k
.
second
.
get_optional
<
int
>
(
"etamin"
).
get_value_or
(
-
49
);
int
etamax
=
k
.
second
.
get_optional
<
int
>
(
"etamax"
).
get_value_or
(
49
);
float
value
=
k
.
second
.
get_optional
<
float
>
(
"value"
).
get_value_or
(
0
);
auto
priority
=
k
.
second
.
get_optional
<
unsigned
int
>
(
"priority"
).
get_value_or
(
0
);
m_ptMinToTopoMeV
.
addRangeValue
(
lround
(
1000
*
value
),
etamin
,
etamax
,
priority
,
/*symmetric=*/
false
);
}
}
else
if
(
x
.
first
==
"ptMinxTOB"
){
for
(
auto
&
k
:
x
.
second
.
data
()
)
{
int
etamin
=
k
.
second
.
get_optional
<
int
>
(
"etamin"
).
get_value_or
(
-
49
);
int
etamax
=
k
.
second
.
get_optional
<
int
>
(
"etamax"
).
get_value_or
(
49
);
float
value
=
k
.
second
.
get_optional
<
float
>
(
"value"
).
get_value_or
(
0
);
auto
priority
=
k
.
second
.
get_optional
<
unsigned
int
>
(
"priority"
).
get_value_or
(
0
);
m_ptMinxTOBMeV
.
addRangeValue
(
lround
(
1000
*
value
),
etamin
,
etamax
,
priority
,
/*symmetric=*/
false
);
}
if
(
x
.
first
==
"ptMinToTopo1"
)
{
m_ptMinToTopoMeV1
=
1000
*
x
.
second
.
getValue
<
unsigned
int
>
();
}
else
if
(
x
.
first
==
"ptMinToTopo2"
){
m_ptMinToTopoMeV2
=
1000
*
x
.
second
.
getValue
<
unsigned
int
>
();
}
else
if
(
x
.
first
==
"ptMinToTopo3"
){
m_ptMinToTopoMeV3
=
1000
*
x
.
second
.
getValue
<
unsigned
int
>
();
}
else
if
(
x
.
first
==
"ptMinxTOB1"
){
m_ptMinxTOBMeV1
=
1000
*
x
.
second
.
getValue
<
unsigned
int
>
();
}
else
if
(
x
.
first
==
"ptMinxTOB2"
){
m_ptMinxTOBMeV2
=
1000
*
x
.
second
.
getValue
<
unsigned
int
>
();
}
else
if
(
x
.
first
==
"ptMinxTOB3"
){
m_ptMinxTOBMeV3
=
1000
*
x
.
second
.
getValue
<
unsigned
int
>
();
}
else
if
(
x
.
first
==
"workingPoints"
)
{
for
(
auto
&
y
:
x
.
second
.
data
()
)
{
auto
wp
=
TrigConf
::
Selection
::
stringToWP
(
y
.
first
);
...
...
@@ -493,25 +481,19 @@ void
TrigConf
::
L1ThrExtraInfo_jJ
::
load
()
{
for
(
auto
&
x
:
m_extraInfo
)
{
if
(
x
.
first
==
"ptMinToTopo"
)
{
for
(
auto
&
k
:
x
.
second
.
data
()
)
{
int
etamin
=
k
.
second
.
get_optional
<
int
>
(
"etamin"
).
get_value_or
(
-
49
);
int
etamax
=
k
.
second
.
get_optional
<
int
>
(
"etamax"
).
get_value_or
(
49
);
float
value
=
k
.
second
.
get_optional
<
float
>
(
"value"
).
get_value_or
(
0
);
auto
priority
=
k
.
second
.
get_optional
<
unsigned
int
>
(
"priority"
).
get_value_or
(
0
);
m_ptMinToTopoMeV
.
addRangeValue
(
lround
(
1000
*
value
),
etamin
,
etamax
,
priority
,
/*symmetric=*/
false
);
}
}
else
if
(
x
.
first
==
"ptMinxTOB"
){
for
(
auto
&
k
:
x
.
second
.
data
()
)
{
int
etamin
=
k
.
second
.
get_optional
<
int
>
(
"etamin"
).
get_value_or
(
-
49
);
int
etamax
=
k
.
second
.
get_optional
<
int
>
(
"etamax"
).
get_value_or
(
49
);
float
value
=
k
.
second
.
get_optional
<
float
>
(
"value"
).
get_value_or
(
0
);
auto
priority
=
k
.
second
.
get_optional
<
unsigned
int
>
(
"priority"
).
get_value_or
(
0
);
m_ptMinxTOBMeV
.
addRangeValue
(
lround
(
1000
*
value
),
etamin
,
etamax
,
priority
,
/*symmetric=*/
false
);
}
}
if
(
x
.
first
==
"ptMinToTopo1"
)
{
m_ptMinToTopoMeV1
=
1000
*
x
.
second
.
getValue
<
unsigned
int
>
();
}
else
if
(
x
.
first
==
"ptMinToTopo2"
){
m_ptMinToTopoMeV2
=
1000
*
x
.
second
.
getValue
<
unsigned
int
>
();
}
else
if
(
x
.
first
==
"ptMinToTopo3"
){
m_ptMinToTopoMeV3
=
1000
*
x
.
second
.
getValue
<
unsigned
int
>
();
}
else
if
(
x
.
first
==
"ptMinxTOB1"
){
m_ptMinxTOBMeV1
=
1000
*
x
.
second
.
getValue
<
unsigned
int
>
();
}
else
if
(
x
.
first
==
"ptMinxTOB2"
){
m_ptMinxTOBMeV2
=
1000
*
x
.
second
.
getValue
<
unsigned
int
>
();
}
else
if
(
x
.
first
==
"ptMinxTOB3"
){
m_ptMinxTOBMeV3
=
1000
*
x
.
second
.
getValue
<
unsigned
int
>
();
}
}
}
...
...
@@ -522,25 +504,19 @@ void
TrigConf
::
L1ThrExtraInfo_jLJ
::
load
()
{
for
(
auto
&
x
:
m_extraInfo
)
{
if
(
x
.
first
==
"ptMinToTopo"
)
{
for
(
auto
&
k
:
x
.
second
.
data
()
)
{
int
etamin
=
k
.
second
.
get_optional
<
int
>
(
"etamin"
).
get_value_or
(
-
49
);
int
etamax
=
k
.
second
.
get_optional
<
int
>
(
"etamax"
).
get_value_or
(
49
);
float
value
=
k
.
second
.
get_optional
<
float
>
(
"value"
).
get_value_or
(
0
);
auto
priority
=
k
.
second
.
get_optional
<
unsigned
int
>
(
"priority"
).
get_value_or
(
0
);
m_ptMinToTopoMeV
.
addRangeValue
(
lround
(
1000
*
value
),
etamin
,
etamax
,
priority
,
/*symmetric=*/
false
);
}
}
else
if
(
x
.
first
==
"ptMinxTOB"
){
for
(
auto
&
k
:
x
.
second
.
data
()
)
{
int
etamin
=
k
.
second
.
get_optional
<
int
>
(
"etamin"
).
get_value_or
(
-
49
);
int
etamax
=
k
.
second
.
get_optional
<
int
>
(
"etamax"
).
get_value_or
(
49
);
float
value
=
k
.
second
.
get_optional
<
float
>
(
"value"
).
get_value_or
(
0
);
auto
priority
=
k
.
second
.
get_optional
<
unsigned
int
>
(
"priority"
).
get_value_or
(
0
);
m_ptMinxTOBMeV
.
addRangeValue
(
lround
(
1000
*
value
),
etamin
,
etamax
,
priority
,
/*symmetric=*/
false
);
}
}
if
(
x
.
first
==
"ptMinToTopo1"
)
{
m_ptMinToTopoMeV1
=
1000
*
x
.
second
.
getValue
<
unsigned
int
>
();
}
else
if
(
x
.
first
==
"ptMinToTopo2"
){
m_ptMinToTopoMeV2
=
1000
*
x
.
second
.
getValue
<
unsigned
int
>
();
}
else
if
(
x
.
first
==
"ptMinToTopo3"
){
m_ptMinToTopoMeV3
=
1000
*
x
.
second
.
getValue
<
unsigned
int
>
();
}
else
if
(
x
.
first
==
"ptMinxTOB1"
){
m_ptMinxTOBMeV1
=
1000
*
x
.
second
.
getValue
<
unsigned
int
>
();
}
else
if
(
x
.
first
==
"ptMinxTOB2"
){
m_ptMinxTOBMeV2
=
1000
*
x
.
second
.
getValue
<
unsigned
int
>
();
}
else
if
(
x
.
first
==
"ptMinxTOB3"
){
m_ptMinxTOBMeV3
=
1000
*
x
.
second
.
getValue
<
unsigned
int
>
();
}
}
}
...
...
@@ -559,9 +535,19 @@ void
TrigConf
::
L1ThrExtraInfo_jTE
::
load
()
{
for
(
auto
&
x
:
m_extraInfo
)
{
if
(
x
.
first
==
"etaBoundary"
)
{
m_etaBoundary
=
x
.
second
.
getValue
<
unsigned
int
>
();
}
if
(
x
.
first
==
"etaBoundary1"
)
{
m_etaBoundary1
=
x
.
second
.
getValue
<
unsigned
int
>
();
}
else
if
(
x
.
first
==
"etaBoundary1_fw"
)
{
m_etaBoundary1_fw
=
x
.
second
.
getValue
<
unsigned
int
>
();
}
else
if
(
x
.
first
==
"etaBoundary2"
)
{
m_etaBoundary2
=
x
.
second
.
getValue
<
unsigned
int
>
();
}
else
if
(
x
.
first
==
"etaBoundary2_fw"
)
{
m_etaBoundary2_fw
=
x
.
second
.
getValue
<
unsigned
int
>
();
}
else
if
(
x
.
first
==
"etaBoundary3"
)
{
m_etaBoundary3
=
x
.
second
.
getValue
<
unsigned
int
>
();
}
else
if
(
x
.
first
==
"etaBoundary3_fw"
)
{
m_etaBoundary3_fw
=
x
.
second
.
getValue
<
unsigned
int
>
();
}
}
}
...
...
Trigger/TrigConfiguration/TrigConfData/src/L1Threshold.cxx
View file @
6ec81dd3
...
...
@@ -134,8 +134,8 @@ void
TrigConf
::
L1Threshold_eTAU
::
load
()
{
// read the isolation requirements
m_
isoConeRel
=
Selection
::
stringToWP
(
getAttribute_optional
<
std
::
string
>
(
"
isoConeRel
"
).
value_or
(
"None"
));
m_
fEM
=
Selection
::
stringToWP
(
getAttribute_optional
<
std
::
string
>
(
"
fEM
"
).
value_or
(
"None"
));
m_
rCore
=
Selection
::
stringToWP
(
getAttribute_optional
<
std
::
string
>
(
"
rCore
"
).
value_or
(
"None"
));
m_
rHad
=
Selection
::
stringToWP
(
getAttribute_optional
<
std
::
string
>
(
"
rHad
"
).
value_or
(
"None"
));
}
void
...
...
@@ -154,11 +154,15 @@ TrigConf::L1Threshold_cTAU::load()
void
TrigConf
::
L1Threshold_jJ
::
load
()
{}
{
m_etaDepThrValue
.
setOutsideRangeValue
(
getAttribute
(
"maxValue"
,
true
,
14000000
));
}
void
TrigConf
::
L1Threshold_jLJ
::
load
()
{}
{
m_etaDepThrValue
.
setOutsideRangeValue
(
getAttribute
(
"maxValue"
,
true
,
14000000
));
}
void
TrigConf
::
L1Threshold_jXE
::
load
()
...
...
Trigger/TrigConfiguration/TrigConfIO/src/JsonFileWriterL1.cxx
View file @
6ec81dd3
...
...
@@ -188,8 +188,8 @@ TrigConf::JsonFileWriterL1::writeJsonFile(const std::string & filename, const L1
// eTAU
try
{
auto
eTAUThr
=
dynamic_cast
<
const
TrigConf
::
L1Threshold_eTAU
&>
(
*
thr
);
jThr
[
"
isoConeRel
"
]
=
TrigConf
::
Selection
::
wpToString
(
eTAUThr
.
isoConeRel
());
jThr
[
"
fEM
"
]
=
TrigConf
::
Selection
::
wpToString
(
eTAUThr
.
fEM
());
jThr
[
"
rCore
"
]
=
TrigConf
::
Selection
::
wpToString
(
eTAUThr
.
rCore
());
jThr
[
"
rHad
"
]
=
TrigConf
::
Selection
::
wpToString
(
eTAUThr
.
rHad
());
jThr
[
"value"
]
=
int
(
eTAUThr
.
thrValue
());
}
catch
(
std
::
bad_cast
&
)
{};
...
...
@@ -389,22 +389,12 @@ TrigConf::JsonFileWriterL1::writeJsonFile(const std::string & filename, const L1
if
(
thrType
==
"jEM"
)
{
auto
&
jeminfo
=
l1menu
.
thrExtraInfo
().
jEM
();
jThrType
[
"ptMinToTopo"
]
=
json
::
array_t
({});
for
(
auto
&
x
:
jeminfo
.
ptMinToTopoEtaMeV
()
)
{
jThrType
[
"ptMinToTopo"
]
+=
json
({
{
"etamin"
,
x
.
etaMin
()},
{
"etamax"
,
x
.
etaMax
()},
{
"value"
,
int
(
x
.
value
()
/
1000.
)},
});
}
jThrType
[
"ptMinxTOB"
]
=
json
::
array_t
({});
for
(
auto
&
x
:
jeminfo
.
ptMinxTOBEtaMeV
()
)
{
jThrType
[
"ptMinxTOB"
]
+=
json
({
{
"etamin"
,
x
.
etaMin
()},
{
"etamax"
,
x
.
etaMax
()},
{
"value"
,
int
(
x
.
value
()
/
1000.
)},
});
}
jThrType
[
"ptMinToTopo1"
]
=
jeminfo
.
ptMinToTopo
(
"1A"
);
jThrType
[
"ptMinToTopo2"
]
=
jeminfo
.
ptMinToTopo
(
"2A"
);
jThrType
[
"ptMinToTopo3"
]
=
jeminfo
.
ptMinToTopo
(
"3A"
);
jThrType
[
"ptMinxTOB1"
]
=
jeminfo
.
ptMinxTOB
(
"1A"
);
jThrType
[
"ptMinxTOB2"
]
=
jeminfo
.
ptMinxTOB
(
"2A"
);
jThrType
[
"ptMinxTOB3"
]
=
jeminfo
.
ptMinxTOB
(
"3A"
);
for
(
auto
wp
:
{
TrigConf
::
Selection
::
WP
::
LOOSE
,
TrigConf
::
Selection
::
WP
::
MEDIUM
,
TrigConf
::
Selection
::
WP
::
TIGHT
}
)
{
auto
wpstr
=
TrigConf
::
Selection
::
wpToString
(
wp
);
jThrType
[
"workingPoints"
][
wpstr
]
=
json
::
array_t
({});
...
...
@@ -432,10 +422,10 @@ TrigConf::JsonFileWriterL1::writeJsonFile(const std::string & filename, const L1
jThrType
[
"workingPoints"
][
wpstr
]
=
json
::
array_t
({});
for
(
auto
&
iso
:
eeminfo
.
isolation
(
wp
))
{
json
jWPIso
({});
jWPIso
[
"
isoConeRel
"
]
=
iso
.
value
().
isoConeRel
_d
();
jWPIso
[
"
isoConeRel
_fw"
]
=
iso
.
value
().
isoConeRel
_fw
();
jWPIso
[
"
fEM
"
]
=
iso
.
value
().
fEM
_d
();
jWPIso
[
"
fEM
_fw"
]
=
iso
.
value
().
fEM
_fw
();
jWPIso
[
"
rCore
"
]
=
iso
.
value
().
rCore
_d
();
jWPIso
[
"
rCore
_fw"
]
=
iso
.
value
().
rCore
_fw
();