 |
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef GLOBALSIM_LARCELLPREPARATIONALG_H
6 #define GLOBALSIM_LARCELLPREPARATIONALG_H
17 #include "GaudiKernel/ToolHandle.h"
25 #include <boost/dynamic_bitset.hpp>
32 using AthReentrantAlgorithm::AthReentrantAlgorithm;
62 Gaudi::Property<int>
m_numberOfEnergyBits {
this,
"numberOfEnergyBits", 6,
"Number of bits reserved for the multilinear energy encoding"};
63 Gaudi::Property<int>
m_valueLSB {
this,
"valueLeastSignificantBit", 40,
"Value of the least significant bit in MeV"};
64 Gaudi::Property<int>
m_valueGainFactor {
this,
"valueGainFactor", 4,
"Value of the gain factor of the multilinear energey encoding"};
67 Gaudi::Property<std::string>
m_LArCellMap {
this,
"LArCellMapFile",
"UpgradePerformanceFunctions/LAr_Cell_Map_offlineID_1.csv",
68 "File associating LAr cells with readout FEBs and connection technology"};
std::unique_ptr< GlobalSim::GlobalLArCellContainer > m_gblLArCellContainerTemplate
GlobalLArCellContainer template which is constructed in initialize and used in execute.
Gaudi::Property< int > m_valueGainFactor
std::map< int, GlobalSim::GlobalLArCell > m_gblLArCellMap
LAr cell map where the key is the offline cell ID.
SG::ReadCondHandleKey< CaloNoise > m_totalNoiseKey
Key to the total noise used for each CaloCell.
int m_readoutRanges[5]
array holding the energy edges of the multilinear encoding
Gaudi::Property< int > m_valueLSB
virtual StatusCode initialize() override
initialize function running before first event
int m_stepsPerRange
number of discrete values per multilinear energy encoding range
An algorithm that can be simultaneously executed in multiple threads.
AlgTool to obtain a selection of eFex RoIs read in from the event store.
Gaudi::Property< int > m_numberOfEnergyBits
Parameters defining the multilinear energy encoding scheme.
std::pair< float, boost::dynamic_bitset<> > encodeEnergy(float energy) const
Function to simulate the cell energy as seen by Global.
SG::ReadHandleKey< CaloCellContainer > m_caloCellsKey
Key to the CaloCell container.
::StatusCode StatusCode
StatusCode definition for legacy code.
virtual StatusCode execute(const EventContext &) const override
execute function running for every event
Gaudi::Property< std::string > m_LArCellMap
Path to the LAr cell map in the CVMFS GroupData space.
unsigned m_maxCellsPerFEB
maximum number of cells that can be send to Global for each FEB2
StatusCode removeCellsFromOverloadedFEB(std::vector< GlobalSim::GlobalLArCell > &cells) const
Function to simulate the truncation of overflowing FEB2s.
SG::ReadHandleKey< xAOD::EventInfo > m_eventInfo
Key for the EventInfo object.
SG::WriteHandleKey< GlobalSim::GlobalLArCellContainer > m_LArCellContainerKey
Key to writing the GlobalLArCellContainer to StoreGate.