#include <TriggerTowerThinningAlg.h>
|
StringProperty | m_streamName { this, "StreamName", "", "Name of the stream being thinned" } |
|
SG::ThinningHandleKey< xAOD::TriggerTowerContainer > | m_triggerTowerLocation { this, "TriggerTowerLocation", LVL1::TrigT1CaloDefs::xAODTriggerTowerLocation, "" } |
|
SG::ReadDecorHandleKey< xAOD::TriggerTowerContainer > | m_caloCellETByLayerKey { this, "CaloCellETByLayerKey", m_triggerTowerLocation.key()+".CaloCellETByLayer", "" } |
|
double | m_minCaloCellET |
|
int | m_minADC |
|
bool | m_useRandom |
|
double | m_minRandom |
|
std::atomic< unsigned long > | m_nEventsProcessed |
|
std::atomic< unsigned long > | m_nEventsAllTriggerTowersKeptByRandom |
|
std::atomic< unsigned long > | m_nTriggerTowersProcessed |
|
std::atomic< unsigned long > | m_nTriggerTowersKept |
|
std::atomic< unsigned long > | m_nTriggerTowersRejected |
|
ServiceHandle< IAthRNGSvc > | m_rndmSvc { this, "RndmSvc", "AthRNGSvc", "" } |
|
Definition at line 41 of file TriggerTowerThinningAlg.h.
◆ TriggerTowerThinningAlg()
TriggerTowerThinningAlg::TriggerTowerThinningAlg |
( |
const std::string & |
t, |
|
|
const std::string & |
n, |
|
|
const IInterface * |
p |
|
) |
| |
◆ ~TriggerTowerThinningAlg()
TriggerTowerThinningAlg::~TriggerTowerThinningAlg |
( |
| ) |
|
|
virtual |
◆ doThinning()
StatusCode TriggerTowerThinningAlg::doThinning |
( |
| ) |
const |
|
overridevirtual |
Definition at line 67 of file TriggerTowerThinningAlg.cxx.
68 const EventContext& ctx = Gaudi::Hive::currentContext();
71 std::vector<bool>
mask;
74 unsigned long nKeep(0),nReject(0),nTotal(0);
80 mask.assign(tts->size(),
false);
90 bool globalSaveMe(
false);
93 if(globalSaveMe ==
false){
96 CLHEP::HepRandomEngine* engine = wrapper->
getEngine (ctx);
97 if (CLHEP::RandFlat::shoot (engine) <
m_minRandom) {
105 bool isDecorAvailable = caloCellETByLayerHandle.isAvailable();
111 if(globalSaveMe ==
true){saveMe =
true;}
115 if (isDecorAvailable) {
116 const std::vector<float>& caloCellETByLayer = caloCellETByLayerHandle(*
tt);
118 float totalCaloCellET(0.);
119 for (
float c : caloCellETByLayer) {
120 totalCaloCellET +=
c;
130 if (saveMe ==
false) {
131 const std::vector<uint16_t>& ttADC =
tt->adc();
141 mask[nTotal] = saveMe;
155 ATH_MSG_DEBUG(
" L1Calo Trigger Tower Thinning statistics: keeping " << nKeep <<
" cells"
156 <<
" and rejecting " << nReject <<
" cells");
159 return StatusCode::SUCCESS;
◆ finalize()
StatusCode TriggerTowerThinningAlg::finalize |
( |
| ) |
|
|
overridevirtual |
Definition at line 162 of file TriggerTowerThinningAlg.cxx.
165 "==> finalize " <<
name() <<
"...\n"
166 <<
"***************************************************************\n"
167 <<
"Results of " <<
name() <<
" thinning algorithm:\n"
173 " Average percent of Trigger Towers kept = "
178 " Percentage of events where all Trigger Towers were kept (should be approx "<< 100.0*
m_minRandom <<
") = "
183 return StatusCode::SUCCESS;
◆ initialize()
StatusCode TriggerTowerThinningAlg::initialize |
( |
| ) |
|
|
overridevirtual |
◆ m_caloCellETByLayerKey
◆ m_minADC
int DerivationFramework::TriggerTowerThinningAlg::m_minADC |
|
private |
◆ m_minCaloCellET
double DerivationFramework::TriggerTowerThinningAlg::m_minCaloCellET |
|
private |
◆ m_minRandom
double DerivationFramework::TriggerTowerThinningAlg::m_minRandom |
|
private |
◆ m_nEventsAllTriggerTowersKeptByRandom
std::atomic<unsigned long> DerivationFramework::TriggerTowerThinningAlg::m_nEventsAllTriggerTowersKeptByRandom |
|
mutableprivate |
◆ m_nEventsProcessed
std::atomic<unsigned long> DerivationFramework::TriggerTowerThinningAlg::m_nEventsProcessed |
|
mutableprivate |
◆ m_nTriggerTowersKept
std::atomic<unsigned long> DerivationFramework::TriggerTowerThinningAlg::m_nTriggerTowersKept |
|
mutableprivate |
◆ m_nTriggerTowersProcessed
std::atomic<unsigned long> DerivationFramework::TriggerTowerThinningAlg::m_nTriggerTowersProcessed |
|
mutableprivate |
◆ m_nTriggerTowersRejected
std::atomic<unsigned long> DerivationFramework::TriggerTowerThinningAlg::m_nTriggerTowersRejected |
|
mutableprivate |
◆ m_rndmSvc
◆ m_streamName
StringProperty DerivationFramework::TriggerTowerThinningAlg::m_streamName { this, "StreamName", "", "Name of the stream being thinned" } |
|
private |
◆ m_triggerTowerLocation
◆ m_useRandom
bool DerivationFramework::TriggerTowerThinningAlg::m_useRandom |
|
private |
The documentation for this class was generated from the following files: