 |
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 that to test whether expected the TIP values generated by data supplied by eEmMultTestBench c...
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.