ATLAS Offline Software
|
#include <L1CPMTools.h>
Public Types | |
typedef DataVector< xAOD::CPMTower > | CPMTCollection |
typedef std::map< int, xAOD::CPMTower * > * | CPMTContainer |
Public Member Functions | |
L1CPMTools (const std::string &, const std::string &, const IInterface *) | |
Constructor. More... | |
virtual StatusCode | initialize () override |
standard Athena-Algorithm method More... | |
virtual StatusCode | finalize () override |
standard Athena-Algorithm method More... | |
virtual void | mapTowers (const DataVector< xAOD::CPMTower > *cpmts, xAOD::CPMTowerMap_t *towers) const override |
Tool-based EM/tau algorithm implementation. More... | |
virtual void | findRoIs (const TrigConf::L1Menu *l1menu, const xAOD::CPMTowerMap_t *towers, DataVector< CPMTobAlgorithm > *tobs, int slice=-1) const override |
Find RoIs in user-supplied map of input towers. More... | |
virtual void | findRoIs (const TrigConf::L1Menu *l1menu, const DataVector< xAOD::CPMTower > *cpmts, DataVector< CPMTobAlgorithm > *tobs, int slice=-1) const override |
Find RoIs in user-supplied DataVector of input towers. More... | |
virtual void | findCPMTobRoIs (const TrigConf::L1Menu *l1menu, const xAOD::CPMTowerMap_t *towers, xAOD::CPMTobRoIContainer *rois, int slice=-1) const override |
Form CPM results for specified crate/module using user-supplied map of input towers This version fills a vector of CPMTobRoI for the whole detector. More... | |
virtual void | findCPMTobRoIs (const TrigConf::L1Menu *l1menu, const DataVector< xAOD::CPMTower > *cpmts, xAOD::CPMTobRoIContainer *rois, int slice=-1) const override |
Form CPM results for specified crate/module using user-supplied vector of input towers This version fills a vector of CPMTobRoI for the whole detector. More... | |
virtual void | findCPMResults (const TrigConf::L1Menu *l1menu, const xAOD::CPMTowerMap_t *towers, int crate, int module, DataVector< CPMTobRoI > *rois, std::vector< unsigned int > &emCMXData, std::vector< unsigned int > &tauCMXData, int slice=-1) const override |
Form CPM results for specified crate/module using user-supplied map of input towers This version adds to DataVector of CPMTobRoI and returns backplane data words. More... | |
virtual CPMTobAlgorithm | findRoI (const TrigConf::L1Menu *l1menu, double RoIeta, double RoIphi, const xAOD::CPMTowerMap_t *towers, int slice=-1) const override |
Return RoI object for a specified location. More... | |
virtual CPMTobAlgorithm | formSums (const TrigConf::L1Menu *l1menu, double RoIeta, double RoIphi, const xAOD::CPMTowerMap_t *towers, int slice=-1) const override |
Form cluster/isolation sums for a given RoI location. More... | |
virtual CPMTobAlgorithm | formSums (const TrigConf::L1Menu *l1menu, uint32_t roiWord, const xAOD::CPMTowerMap_t *towers, int slice=-1) const override |
Form sums for given RoI. More... | |
Private Attributes | |
CPRoIDecoder | m_conv |
Utility for decoding RoI words. More... | |
This is a tool to reconstruct the L1 EM/tau trigger sums for a particula] r RoI location from the stored TriggerTowers. Used for offline monitoring and trigger reconstruction.
Usage: L1CPMTools->mapTowers() // set up event for analysis L1CPMTools->formSums(eta, phi) // for each RoI L1CPMTools->EmClus() // etc. Return values
Definition at line 44 of file L1CPMTools.h.
Definition at line 47 of file L1CPMTools.h.
typedef std::map<int, xAOD::CPMTower*>* LVL1::L1CPMTools::CPMTContainer |
Definition at line 48 of file L1CPMTools.h.
|
overridevirtual |
|
overridevirtual |
Form CPM results for specified crate/module using user-supplied map of input towers This version adds to DataVector of CPMTobRoI and returns backplane data words.
Form results for a specified module.
This tool appends to an existing DataVector of results, so do not clear that. But reset & resize the module results vectors, to be safe
Count RoIs of each type (for correct filling of backplane words)
Process reference towers within this CPM's coverage
Loop over all reference towers in order of TOB readout. As only 1 TOB possible per chip/side, order within these doesn't matter
If want to be clever and test whether worth proceeding before evaluating window, this would be the place to put the test
Form algorithm object for this location
Did it pass as EM TOB? If so: Create TOB RoI object and push back into system results Add bit to presence map Add TOB to backplane data (if not overflowed)
Same for TAU hypothesis
Definition at line 39 of file L1CPMTools.cxx.
|
overridevirtual |
Form CPM results for specified crate/module using user-supplied vector of input towers This version fills a vector of CPMTobRoI for the whole detector.
Find all CPMTobRoIs in the event.
Need a map of CPMTowers as input
Now find the RoIs in this map
Clean up
Definition at line 192 of file L1CPMTools.cxx.
|
overridevirtual |
Form CPM results for specified crate/module using user-supplied map of input towers This version fills a vector of CPMTobRoI for the whole detector.
Find all CPMTobRoIs in the event.
Clear results vector to be safe
Now step through CPMTower map
Each tower could be reference tower of 4 RoIs
But need to ensure we don't double count, so we use
a std::map to keep track of which RoIs already exist
Definition at line 211 of file L1CPMTools.cxx.
|
overridevirtual |
Return RoI object for a specified location.
Return RoI for given coordinates.
Definition at line 348 of file L1CPMTools.cxx.
|
overridevirtual |
Find RoIs in user-supplied DataVector of input towers.
Find list of TOBs from user-supplied vector of CPMTowers.
Need a map of CPMTowers as input
Now find the RoIs in this map
Clean up
Definition at line 258 of file L1CPMTools.cxx.
|
overridevirtual |
Find RoIs in user-supplied map of input towers.
Find list of TOBs from user-supplied map of CPMTowers.
Clear results vector to be safe
Now step through CPMTower map
Each tower could be reference tower of 4 RoIs
But need to ensure we don't double count, so we use
a std::map to keep track of which RoIs already exist
Definition at line 276 of file L1CPMTools.cxx.
|
overridevirtual |
Form cluster/isolation sums for a given RoI location.
Form clusters for given coordinates.
Definition at line 355 of file L1CPMTools.cxx.
|
overridevirtual |
Form sums for given RoI.
Definition at line 362 of file L1CPMTools.cxx.
|
overridevirtual |
|
overridevirtual |
Tool-based EM/tau algorithm implementation.
CPMTower map from user-supplied vector of CPMTowers.
Map CPMTowers from user-supplied DataVector of inputs
Definition at line 312 of file L1CPMTools.cxx.
|
private |
Utility for decoding RoI words.
Definition at line 92 of file L1CPMTools.h.