|
ATLAS Offline Software
|
#include <jFEXForwardJetsAlgo.h>
|
| jFEXForwardJetsAlgo (const std::string &type, const std::string &name, const IInterface *parent) |
| Constructors. More...
|
|
virtual StatusCode | initialize () override |
| standard Athena-Algorithm method More...
|
|
virtual | ~jFEXForwardJetsAlgo () |
| Destructor. More...
|
|
virtual StatusCode | safetyTest () override |
|
virtual StatusCode | reset () override |
|
virtual void | setup (int inputTable[FEXAlgoSpaceDefs::jFEX_algoSpace_height][FEXAlgoSpaceDefs::jFEX_wide_algoSpace_width], int jfex) override |
|
virtual std::unordered_map< int, jFEXForwardJetsInfo > | FcalJetsTowerIDLists (int seedThreshold) override |
|
virtual std::unordered_map< int, jFEXForwardJetsInfo > | calculateJetETs (int seedThreshold) override |
|
virtual void | setFPGAEnergy (std::unordered_map< int, std::vector< int > > et_map) override |
|
ServiceHandle< StoreGateSvc > & | evtStore () |
| The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
const ServiceHandle< StoreGateSvc > & | evtStore () const |
| The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
const ServiceHandle< StoreGateSvc > & | detStore () const |
| The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
virtual StatusCode | sysInitialize () override |
| Perform system initialization for an algorithm. More...
|
|
virtual StatusCode | sysStart () override |
| Handle START transition. More...
|
|
virtual std::vector< Gaudi::DataHandle * > | inputHandles () const override |
| Return this algorithm's input handles. More...
|
|
virtual std::vector< Gaudi::DataHandle * > | outputHandles () const override |
| Return this algorithm's output handles. More...
|
|
Gaudi::Details::PropertyBase & | declareProperty (Gaudi::Property< T > &t) |
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleKey &hndl, const std::string &doc, const SG::VarHandleKeyType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleBase &hndl, const std::string &doc, const SG::VarHandleType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleKeyArray &hndArr, const std::string &doc, const SG::VarHandleKeyArrayType &) |
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, T &property, const std::string &doc, const SG::NotHandleType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, T &property, const std::string &doc="none") |
| Declare a new Gaudi property. More...
|
|
void | updateVHKA (Gaudi::Details::PropertyBase &) |
|
MsgStream & | msg () const |
|
MsgStream & | msg (const MSG::Level lvl) const |
|
bool | msgLvl (const MSG::Level lvl) const |
|
|
SG::ReadHandleKey< LVL1::jTowerContainer > | m_jFEXForwardJetsAlgo_jTowerContainerKey {this, "MyjTowers", "jTowerContainer", "Input container for jTowers"} |
|
SG::ReadHandle< jTowerContainer > | m_jTowerContainer |
|
int | m_jFEXalgoTowerID [FEXAlgoSpaceDefs::jFEX_algoSpace_height][FEXAlgoSpaceDefs::jFEX_wide_algoSpace_width] |
|
std::unordered_map< int, std::vector< int > > | m_map_Etvalues |
|
int | m_lowerEM_eta |
|
int | m_upperEM_eta |
|
int | m_jfex |
|
bool | m_storeEnergyRingTTIDs = true |
|
Gaudi::Property< std::string > | m_SeedRingStr {this, "SeedRingMap", "Run3L1CaloSimulation/JetMaps/2024_04_09/jFEX_FWD_seed.dat" , "Contains Trigger tower in seed"} |
|
Gaudi::Property< std::string > | m_1stRingStr {this, "Energy1stRingMap" , "Run3L1CaloSimulation/JetMaps/2024_04_09/jFEX_FWD_1stRing.dat" , "Contains Trigger tower in 1st Energy ring"} |
|
Gaudi::Property< std::string > | m_2ndRingStr {this, "Energy2ndRingMap" , "Run3L1CaloSimulation/JetMaps/2024_04_09/jFEX_FWD_2ndRing.dat" , "Contains Trigger tower in 2nd energy ring"} |
|
Gaudi::Property< std::string > | m_CorrStr {this, "CorrMap" , "Run3L1CaloSimulation/JetMaps/2024_04_09/jFEX_FWD_corr.dat" , "Contains Trigger tower to correct displacement (greater than)"} |
|
Gaudi::Property< std::string > | m_Corr2Str {this, "Corr2Map" , "Run3L1CaloSimulation/JetMaps/2024_04_09/jFEX_FWD_corr2.dat" , "Contains Trigger tower to correct displacement (greater or equal than)"} |
|
Gaudi::Property< std::string > | m_SearchGStr {this, "SearchGMap" , "Run3L1CaloSimulation/JetMaps/2024_04_09/jFEX_FWD_searchG.dat" , "Contains Trigger tower to find local max (greater than)"} |
|
Gaudi::Property< std::string > | m_SearchGeStr {this, "SearchGeMap", "Run3L1CaloSimulation/JetMaps/2024_04_09/jFEX_FWD_searchGe.dat", "Contains Trigger tower to find local max (greater or equal than)"} |
|
std::unordered_map< unsigned int, std::vector< unsigned int > > | m_SeedRingMap |
|
std::unordered_map< unsigned int, std::vector< unsigned int > > | m_1stRingMap |
|
std::unordered_map< unsigned int, std::vector< unsigned int > > | m_2ndRingMap |
|
std::unordered_map< unsigned int, std::vector< unsigned int > > | m_CorrMap |
|
std::unordered_map< unsigned int, std::vector< unsigned int > > | m_Corr2Map |
|
std::unordered_map< unsigned int, std::vector< unsigned int > > | m_SearchGMap |
|
std::unordered_map< unsigned int, std::vector< unsigned int > > | m_SearchGeMap |
|
StoreGateSvc_t | m_evtStore |
| Pointer to StoreGate (event store by default) More...
|
|
StoreGateSvc_t | m_detStore |
| Pointer to StoreGate (detector store by default) More...
|
|
std::vector< SG::VarHandleKeyArray * > | m_vhka |
|
bool | m_varHandleArraysDeclared |
|
Definition at line 30 of file jFEXForwardJetsAlgo.h.
◆ StoreGateSvc_t
◆ jFEXForwardJetsAlgo()
LVL1::jFEXForwardJetsAlgo::jFEXForwardJetsAlgo |
( |
const std::string & |
type, |
|
|
const std::string & |
name, |
|
|
const IInterface * |
parent |
|
) |
| |
◆ ~jFEXForwardJetsAlgo()
LVL1::jFEXForwardJetsAlgo::~jFEXForwardJetsAlgo |
( |
| ) |
|
|
virtual |
◆ calculateJetETs()
std::unordered_map< int, jFEXForwardJetsInfo > LVL1::jFEXForwardJetsAlgo::calculateJetETs |
( |
int |
seedThreshold | ) |
|
|
overridevirtual |
◆ condCorr()
bool LVL1::jFEXForwardJetsAlgo::condCorr |
( |
unsigned int |
TTID | ) |
|
|
private |
Definition at line 349 of file jFEXForwardJetsAlgo.cxx.
354 ATH_MSG_ERROR(
"Could not find TT" << TTID <<
" in the condition (greater than) for jets file.");
359 if( (it_seed_map->second).size() == 0){
360 ATH_MSG_ERROR(
"Elements=0 in condCorr function for element"<< TTID <<
". This should never happend. REPORT IT!");
364 int centralEt =
getEt(TTID);
366 for (
const auto& Gtt : it_seed_map->second ){
368 int tmpEt =
getEt(Gtt);
370 if( !(centralEt > tmpEt && centralSeed >= tmpSeedEt ) ){
◆ condCorr2()
bool LVL1::jFEXForwardJetsAlgo::condCorr2 |
( |
unsigned int |
TTID | ) |
|
|
private |
Definition at line 389 of file jFEXForwardJetsAlgo.cxx.
394 ATH_MSG_ERROR(
"Could not find TT" << TTID <<
" in the correction (greater or equal) file.");
398 int centralEt =
getEt(TTID);
401 for (
const auto& Gtt : it_seed_map->second ){
403 int tmpEt =
getEt(Gtt);
406 if( !( centralEt >= tmpEt || centralSeed >
SumEtSeed(Gtt) ) ){
◆ declareGaudiProperty() [1/4]
specialization for handling Gaudi::Property<SG::VarHandleKeyArray>
Definition at line 170 of file AthCommonDataStore.h.
175 hndl.documentation());
◆ declareGaudiProperty() [2/4]
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition at line 156 of file AthCommonDataStore.h.
161 hndl.documentation());
◆ declareGaudiProperty() [3/4]
specialization for handling Gaudi::Property<SG::VarHandleBase>
Definition at line 184 of file AthCommonDataStore.h.
189 hndl.documentation());
◆ declareGaudiProperty() [4/4]
◆ declareProperty() [1/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation string for the property. |
This is the version for types that derive from SG::VarHandleBase
. The property value object is put on the input and output lists as appropriate; then we forward to the base class.
Definition at line 245 of file AthCommonDataStore.h.
250 this->declare(hndl.
vhKey());
251 hndl.
vhKey().setOwner(
this);
253 return PBASE::declareProperty(
name,hndl,
doc);
◆ declareProperty() [2/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation string for the property. |
This is the version for types that derive from SG::VarHandleKey
. The property value object is put on the input and output lists as appropriate; then we forward to the base class.
Definition at line 221 of file AthCommonDataStore.h.
229 return PBASE::declareProperty(
name,hndl,
doc);
◆ declareProperty() [3/6]
◆ declareProperty() [4/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation string for the property. |
This is the generic version, for types that do not derive from SG::VarHandleKey
. It just forwards to the base class version of declareProperty
.
Definition at line 333 of file AthCommonDataStore.h.
338 return PBASE::declareProperty(
name, property,
doc);
◆ declareProperty() [5/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation string for the property. |
This dispatches to either the generic declareProperty
or the one for VarHandle/Key/KeyArray.
Definition at line 352 of file AthCommonDataStore.h.
◆ declareProperty() [6/6]
◆ detStore()
◆ elementsCorr()
unsigned int LVL1::jFEXForwardJetsAlgo::elementsCorr |
( |
unsigned int |
TTID | ) |
|
|
private |
Definition at line 339 of file jFEXForwardJetsAlgo.cxx.
342 ATH_MSG_ERROR(
"Could not find TT" << TTID <<
" in the condition (greater than) for jets file.");
346 return (it_seed_map->second).size();
◆ elementsCorr2()
unsigned int LVL1::jFEXForwardJetsAlgo::elementsCorr2 |
( |
unsigned int |
TTID | ) |
|
|
private |
Definition at line 379 of file jFEXForwardJetsAlgo.cxx.
382 ATH_MSG_ERROR(
"Could not find TT" << TTID <<
" in the condition (greater than) for jets file.");
386 return (it_seed_map->second).size();
◆ evtStore() [1/2]
◆ evtStore() [2/2]
◆ extraDeps_update_handler()
Add StoreName to extra input/output deps as needed.
use the logic of the VarHandleKey to parse the DataObjID keys supplied via the ExtraInputs and ExtraOuputs Properties to add the StoreName if it's not explicitly given
◆ FcalJetsTowerIDLists()
std::unordered_map< int, jFEXForwardJetsInfo > LVL1::jFEXForwardJetsAlgo::FcalJetsTowerIDLists |
( |
int |
seedThreshold | ) |
|
|
overridevirtual |
Implements LVL1::IjFEXForwardJetsAlgo.
Definition at line 102 of file jFEXForwardJetsAlgo.cxx.
104 std::unordered_map<int, jFEXForwardJetsInfo> FCALJetTowerIDLists;
106 std::vector<int> lower_centre_neta;
107 std::vector<int> upper_centre_neta;
136 for(
int myCounter = 0; myCounter<3; myCounter++) {
137 for(
int centre_nphi = lower_centre_nphi[myCounter]; centre_nphi < upper_centre_nphi[myCounter]; centre_nphi++) {
138 for(
int centre_neta = lower_centre_neta[myCounter]; centre_neta < upper_centre_neta[myCounter]; centre_neta++) {
148 bool bool_isLM =
false;
149 bool bool_condCorr2 =
false;
150 bool bool_isLMabove =
false;
151 bool bool_condCorr =
false;
157 if(elemCorr == 0 and elemCorr2 == 0){
158 bool_isLM =
isLM(myTTIDKey);
161 else if(elemCorr == 0 and elemCorr2 > 0){
162 bool_isLM =
isLM(myTTIDKey);
164 iAmJet = bool_isLM and bool_condCorr2;
166 else if(elemCorr > 0 and elemCorr2 == 0){
167 bool_isLM =
isLM(myTTIDKey);
169 bool_condCorr =
condCorr(myTTIDKey);
170 iAmJet = bool_isLM or (bool_isLMabove and bool_condCorr);
172 else if(elemCorr > 0 and elemCorr2 > 0){
173 bool_isLM =
isLM(myTTIDKey);
176 bool_condCorr =
condCorr(myTTIDKey);
177 iAmJet = (bool_isLM and bool_condCorr2) or (bool_isLMabove and bool_condCorr);
181 if (
SumEtSeed(myTTIDKey) <= seedThreshold){
188 jFEXForwardJetsInfo TriggerTowerInformation;
190 TriggerTowerInformation.setCentreLocalTTPhi(centre_nphi);
191 TriggerTowerInformation.setCentreLocalTTEta(centre_neta);
193 const auto [centreTT_eta,centreTT_phi] =
globalEtaPhi(myTTIDKey);
194 TriggerTowerInformation.setCentreTTPhi(centreTT_phi);
195 TriggerTowerInformation.setCentreTTEta(centreTT_eta);
203 ATH_MSG_ERROR(
"Could not find TT" << myTTIDKey <<
" in Jet seed file.");
206 for(
const auto& seedTT : it_seed_map->second){
207 TriggerTowerInformation.includeTTinSeed(seedTT);
209 TriggerTowerInformation.addToSeedET(
getEt(seedTT));
215 ATH_MSG_ERROR(
"Could not find TT" << myTTIDKey <<
" in 1st Energy ring file.");
218 for(
const auto& firstER_TT : it_seed_map->second){
219 TriggerTowerInformation.addToFirstEnergyRingET(
getEt(firstER_TT));
222 TriggerTowerInformation.includeTTIDinFirstER(firstER_TT);
227 if(saturation) TriggerTowerInformation.setSRjetSat();
233 ATH_MSG_ERROR(
"Could not find TT" << myTTIDKey <<
" in 2nd Energy ring file.");
236 for(
const auto& secondER_TT : it_seed_map->second){
237 TriggerTowerInformation.addToSecondEnergyRingET(
getEt(secondER_TT));
240 TriggerTowerInformation.includeTTIDinSecondER(secondER_TT);
245 if(saturation) TriggerTowerInformation.setLRjetSat();
248 FCALJetTowerIDLists[myTTIDKey] = std::move(TriggerTowerInformation);
255 return FCALJetTowerIDLists;
◆ getEt()
int LVL1::jFEXForwardJetsAlgo::getEt |
( |
unsigned int |
TTID | ) |
|
|
private |
◆ getTTowerSat()
bool LVL1::jFEXForwardJetsAlgo::getTTowerSat |
( |
unsigned int |
TTID | ) |
|
|
private |
◆ globalEtaPhi()
std::array< float, 2 > LVL1::jFEXForwardJetsAlgo::globalEtaPhi |
( |
int |
TTID | ) |
|
|
private |
◆ initialize()
StatusCode LVL1::jFEXForwardJetsAlgo::initialize |
( |
| ) |
|
|
overridevirtual |
◆ inputHandles()
Return this algorithm's input handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
◆ interfaceID()
const InterfaceID & LVL1::IjFEXForwardJetsAlgo::interfaceID |
( |
| ) |
|
|
inlinestaticinherited |
◆ isLM()
bool LVL1::jFEXForwardJetsAlgo::isLM |
( |
unsigned int |
TTID | ) |
|
|
private |
Definition at line 274 of file jFEXForwardJetsAlgo.cxx.
281 ATH_MSG_ERROR(
"Could not find TT" << TTID <<
" in the seach (>) local maxima for jets file.");
286 for (
const auto& Gtt : it_seed_map->second ){
289 if( !(CentralSeedEt > tmpEt) ){
303 ATH_MSG_ERROR(
"Could not find TT" << TTID <<
" in the seach (>=) local maxima for jets file.");
307 bool greaterEqual =
true;
308 for (
const auto& Gtt : it_seed_map->second ){
311 if( !(CentralSeedEt >= tmpEt) ){
312 greaterEqual =
false;
◆ isLMabove()
bool LVL1::jFEXForwardJetsAlgo::isLMabove |
( |
unsigned int |
TTID | ) |
|
|
private |
Definition at line 324 of file jFEXForwardJetsAlgo.cxx.
329 ATH_MSG_ERROR(
"Could not find TT" << TTID <<
" in the correction (LM above) for jets file.");
334 const auto & GttVec = it_seed_map->second;
335 if (! GttVec.empty())
return isLM(GttVec.front());
◆ msg() [1/2]
◆ msg() [2/2]
◆ msgLvl()
◆ outputHandles()
Return this algorithm's output handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
◆ ReadfromFile()
StatusCode LVL1::jFEXForwardJetsAlgo::ReadfromFile |
( |
const std::string & |
fileName, |
|
|
std::unordered_map< unsigned int, std::vector< unsigned int > > & |
fillingMap |
|
) |
| |
|
private |
Definition at line 436 of file jFEXForwardJetsAlgo.cxx.
443 if ( !myfile.is_open() ){
445 return StatusCode::FAILURE;
449 while ( std::getline (myfile, myline) ) {
452 if(myline[0] ==
'#')
continue;
455 std::stringstream oneLine(myline);
458 std::vector<unsigned int> elements;
460 while(std::getline(oneLine, element,
' '))
462 elements.push_back(std::stoi(element));
466 if(elements.size() < 1){
468 return StatusCode::FAILURE;
472 unsigned int TTID = elements.at(0);
475 elements.erase(elements.begin());
477 fillingMap[TTID] = std::move(elements);
482 return StatusCode::SUCCESS;
◆ renounce()
◆ renounceArray()
◆ reset()
StatusCode LVL1::jFEXForwardJetsAlgo::reset |
( |
| ) |
|
|
overridevirtual |
◆ safetyTest()
StatusCode LVL1::jFEXForwardJetsAlgo::safetyTest |
( |
| ) |
|
|
overridevirtual |
◆ setFPGAEnergy()
void LVL1::jFEXForwardJetsAlgo::setFPGAEnergy |
( |
std::unordered_map< int, std::vector< int > > |
et_map | ) |
|
|
overridevirtual |
◆ setup()
void LVL1::jFEXForwardJetsAlgo::setup |
( |
int |
inputTable[FEXAlgoSpaceDefs::jFEX_algoSpace_height][FEXAlgoSpaceDefs::jFEX_wide_algoSpace_width], |
|
|
int |
jfex |
|
) |
| |
|
overridevirtual |
◆ SumEtSeed()
int LVL1::jFEXForwardJetsAlgo::SumEtSeed |
( |
unsigned int |
TTID | ) |
|
|
private |
◆ sysInitialize()
◆ sysStart()
Handle START transition.
We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.
◆ updateVHKA()
◆ m_1stRingMap
std::unordered_map<unsigned int, std::vector<unsigned int> > LVL1::jFEXForwardJetsAlgo::m_1stRingMap |
|
private |
◆ m_1stRingStr
Gaudi::Property<std::string> LVL1::jFEXForwardJetsAlgo::m_1stRingStr {this, "Energy1stRingMap" , "Run3L1CaloSimulation/JetMaps/2024_04_09/jFEX_FWD_1stRing.dat" , "Contains Trigger tower in 1st Energy ring"} |
|
private |
◆ m_2ndRingMap
std::unordered_map<unsigned int, std::vector<unsigned int> > LVL1::jFEXForwardJetsAlgo::m_2ndRingMap |
|
private |
◆ m_2ndRingStr
Gaudi::Property<std::string> LVL1::jFEXForwardJetsAlgo::m_2ndRingStr {this, "Energy2ndRingMap" , "Run3L1CaloSimulation/JetMaps/2024_04_09/jFEX_FWD_2ndRing.dat" , "Contains Trigger tower in 2nd energy ring"} |
|
private |
◆ m_Corr2Map
std::unordered_map<unsigned int, std::vector<unsigned int> > LVL1::jFEXForwardJetsAlgo::m_Corr2Map |
|
private |
◆ m_Corr2Str
Gaudi::Property<std::string> LVL1::jFEXForwardJetsAlgo::m_Corr2Str {this, "Corr2Map" , "Run3L1CaloSimulation/JetMaps/2024_04_09/jFEX_FWD_corr2.dat" , "Contains Trigger tower to correct displacement (greater or equal than)"} |
|
private |
◆ m_CorrMap
std::unordered_map<unsigned int, std::vector<unsigned int> > LVL1::jFEXForwardJetsAlgo::m_CorrMap |
|
private |
◆ m_CorrStr
Gaudi::Property<std::string> LVL1::jFEXForwardJetsAlgo::m_CorrStr {this, "CorrMap" , "Run3L1CaloSimulation/JetMaps/2024_04_09/jFEX_FWD_corr.dat" , "Contains Trigger tower to correct displacement (greater than)"} |
|
private |
◆ m_detStore
◆ m_evtStore
◆ m_jfex
int LVL1::jFEXForwardJetsAlgo::m_jfex |
|
private |
◆ m_jFEXalgoTowerID
◆ m_jFEXForwardJetsAlgo_jTowerContainerKey
◆ m_jTowerContainer
◆ m_lowerEM_eta
int LVL1::jFEXForwardJetsAlgo::m_lowerEM_eta |
|
private |
◆ m_map_Etvalues
std::unordered_map<int,std::vector<int> > LVL1::jFEXForwardJetsAlgo::m_map_Etvalues |
|
private |
◆ m_SearchGeMap
std::unordered_map<unsigned int, std::vector<unsigned int> > LVL1::jFEXForwardJetsAlgo::m_SearchGeMap |
|
private |
◆ m_SearchGeStr
Gaudi::Property<std::string> LVL1::jFEXForwardJetsAlgo::m_SearchGeStr {this, "SearchGeMap", "Run3L1CaloSimulation/JetMaps/2024_04_09/jFEX_FWD_searchGe.dat", "Contains Trigger tower to find local max (greater or equal than)"} |
|
private |
◆ m_SearchGMap
std::unordered_map<unsigned int, std::vector<unsigned int> > LVL1::jFEXForwardJetsAlgo::m_SearchGMap |
|
private |
◆ m_SearchGStr
Gaudi::Property<std::string> LVL1::jFEXForwardJetsAlgo::m_SearchGStr {this, "SearchGMap" , "Run3L1CaloSimulation/JetMaps/2024_04_09/jFEX_FWD_searchG.dat" , "Contains Trigger tower to find local max (greater than)"} |
|
private |
◆ m_SeedRingMap
std::unordered_map<unsigned int, std::vector<unsigned int> > LVL1::jFEXForwardJetsAlgo::m_SeedRingMap |
|
private |
◆ m_SeedRingStr
Gaudi::Property<std::string> LVL1::jFEXForwardJetsAlgo::m_SeedRingStr {this, "SeedRingMap", "Run3L1CaloSimulation/JetMaps/2024_04_09/jFEX_FWD_seed.dat" , "Contains Trigger tower in seed"} |
|
private |
◆ m_storeEnergyRingTTIDs
bool LVL1::jFEXForwardJetsAlgo::m_storeEnergyRingTTIDs = true |
|
private |
◆ m_upperEM_eta
int LVL1::jFEXForwardJetsAlgo::m_upperEM_eta |
|
private |
◆ m_varHandleArraysDeclared
◆ m_vhka
The documentation for this class was generated from the following files:
constexpr static int jFEX_algoSpace_EMB_start_phi
bool getTTowerSat(unsigned int TTID)
static std::string find_calib_file(const std::string &logical_file_name)
constexpr static int jFEX_algoSpace_EMIE_start_phi
bool isLM(unsigned int TTID)
std::unordered_map< unsigned int, std::vector< unsigned int > > m_SearchGMap
Gaudi::Property< std::string > m_1stRingStr
Gaudi::Property< std::string > m_SearchGStr
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
constexpr static int jFEX_algoSpace_C_EMIE_end_eta
int getEt(unsigned int TTID)
float centrephi_toPI() const
constexpr static int jFEX_algoSpace_C_FCAL_end_eta
constexpr static int jFEX_algoSpace_A_FCAL_end_eta
Gaudi::Property< std::string > m_CorrStr
int m_jFEXalgoTowerID[FEXAlgoSpaceDefs::jFEX_algoSpace_height][FEXAlgoSpaceDefs::jFEX_wide_algoSpace_width]
StoreGateSvc_t m_evtStore
Pointer to StoreGate (event store by default)
std::vector< SG::VarHandleKeyArray * > m_vhka
Gaudi::Property< std::string > m_SearchGeStr
constexpr static int jFEX_algoSpace_C_EMB_start_eta
Gaudi::Property< std::string > m_2ndRingStr
constexpr static int jFEX_algoSpace_height
constexpr static int jFEX_algoSpace_EMB_end_phi
constexpr static int jFEX_algoSpace_A_lowerEM_eta
const std::string & key() const
Return the StoreGate ID for the referenced object.
StatusCode ReadfromFile(const std::string &, std::unordered_map< unsigned int, std::vector< unsigned int > > &)
constexpr static int jFEX_algoSpace_C_FCAL_start_eta
constexpr static int jFEX_algoSpace_A_EMB_eta
bool greater(double a, double b)
Compare two FP numbers, working around x87 precision issues.
bool isLMabove(unsigned int TTID)
std::unordered_map< unsigned int, std::vector< unsigned int > > m_SearchGeMap
virtual void setOwner(IDataHandleHolder *o)=0
constexpr static int jFEX_algoSpace_C_lowerEM_eta
constexpr static int jFEX_algoSpace_EMIE_end_phi
constexpr static int jFEX_algoSpace_C_upperEM_eta
constexpr static int jFEX_algoSpace_C_EMIE_start_eta
std::array< float, 2 > globalEtaPhi(int TTID)
unsigned int elementsCorr2(unsigned int TTID)
virtual std::unordered_map< int, jFEXForwardJetsInfo > FcalJetsTowerIDLists(int seedThreshold) override
constexpr static int jFEX_wide_algoSpace_width
std::unordered_map< unsigned int, std::vector< unsigned int > > m_2ndRingMap
Gaudi::Property< std::string > m_SeedRingStr
constexpr static int jFEX_algoSpace_C_EMB_end_eta
Gaudi::Property< std::string > m_Corr2Str
std::unordered_map< unsigned int, std::vector< unsigned int > > m_1stRingMap
StoreGateSvc_t m_detStore
Pointer to StoreGate (detector store by default)
StatusCode initialize(bool used=true)
If this object is used as a property, then this should be called during the initialize phase.
std::unordered_map< int, std::vector< int > > m_map_Etvalues
virtual void renounce()=0
std::conditional< std::is_base_of< SG::VarHandleKeyArray, T >::value, VarHandleKeyArrayType, type2 >::type type
constexpr static int jFEX_algoSpace_FCAL_end_phi
bool condCorr(unsigned int TTID)
constexpr static int jFEX_algoSpace_A_FCAL_start_eta
std::unordered_map< unsigned int, std::vector< unsigned int > > m_SeedRingMap
bool m_storeEnergyRingTTIDs
constexpr static int jFEX_algoSpace_A_EMIE_eta
SG::ReadHandleKey< LVL1::jTowerContainer > m_jFEXForwardJetsAlgo_jTowerContainerKey
int SumEtSeed(unsigned int TTID)
SG::VarHandleKey & vhKey()
Return a non-const reference to the HandleKey.
The jTower class is an interface object for jFEX trigger algorithms The purposes are twofold:
constexpr static int jFEX_algoSpace_A_upperEM_eta
unsigned int elementsCorr(unsigned int TTID)
SG::ReadHandle< jTowerContainer > m_jTowerContainer
std::unordered_map< unsigned int, std::vector< unsigned int > > m_Corr2Map
bool condCorr2(unsigned int TTID)
std::unordered_map< unsigned int, std::vector< unsigned int > > m_CorrMap
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>
constexpr static int jFEX_algoSpace_FCAL_start_phi