 |
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef CALORINGERTOOLS_CALORINGSBUILDER_H
6 #define CALORINGERTOOLS_CALORINGSBUILDER_H
53 const std::string&
name,
74 ,
const std::size_t nReserve = 0)
override;
160 "CaloRingsContainerName",
162 "Name of the CaloRings container"};
168 "RingSetContainerName",
170 "Name of the RingSets container"};
176 "CellsContainerName",
178 "Key to obtain the cell container"};
184 "EtaWidth", {},
"Each RingSet ring eta width."};
189 "PhiWidth", {},
"Each RingSet ring phi width."};
194 "CellMaxDEtaDist", 0,
195 "Maximum cell distance to the seed in eta."};
200 "CellMaxDPhiDist", 0,
201 "Maximum cell distance to the seed in phi."};
205 Gaudi::Property<std::vector<unsigned int>>
m_nRings{
this,
207 "Each RingSet number of rings."};
212 "MinPartEnergy", std::numeric_limits<float>::lowest(),
213 "Minimum particle/cluster energy to build rings (GeV)."};
222 Gaudi::Property<std::vector<
int>>
225 "Concatenated list of layers which will be used "
226 "to build the RingSets"};
230 Gaudi::Property<std::vector<unsigned int>>
m_nLayers{
this,
231 "RingSetNLayers", {},
232 "Each RingSet number of layers from the Layers "
233 "configurable property to use."};
241 "useShowerShapeBarycenter",
false,
242 "Switch to use shower barycenter for each layer, "
243 "instead of the cluster center."};
249 "doTransverseEnergy",
false,
250 "Switch to use raw cell energy, "
251 "instead of cells ET."};
Property holding a SG store/key/clid from which a ReadHandle is made.
SG::ReadCondHandleKey< CaloDetDescrManager > m_caloMgrKey
~CaloRingsBuilder()
Destructor.
virtual StatusCode finalize() override
finalize method
bool useShowerShapeBarycenter() override
Retrieve whether it was set used shower shape barycenter.
constexpr ParticleHypothesis particle[PARTICLEHYPOTHESES]
the array of masses
This class defines the phi convention for Calorimeters.
StatusCode getRingSetSeed(const xAOD::RingSetConf::RawConf &conf, const xAOD::CaloCluster &cluster, AtlasGeoPoint &seed)
Fill RingSet seed for CaloCluster.
virtual StatusCode initialize() override
Tool main methods:
Gaudi::Property< std::vector< float > > m_etaWidth
Width of the ring in eta.
xAOD::CaloRingsContainer * m_crCont
Create and hold CaloRingsContainer for each event.
std::vector< RawConf > RawConfCollection
typedef The raw configuration structure data holder
Gaudi::Property< float > m_cellMaxDPhiDist
Maximum cell distance in phi to seed.
SG::WriteHandleKey< xAOD::RingSetContainer > m_rsContName
Name of RingSetContainer on Event StoreGate.
const xAOD::RingSetConf::RawConfCollection & rawConf() override
Extra methods:
Gaudi::Property< std::vector< float > > m_phiWidth
Width of the ring in phi.
Class holding a set of rings.
SG::ReadHandleKey< CaloCellContainer > m_cellsContName
Name of CaloCellContainer.
Class providing the definition of the 4-vector interface.
virtual StatusCode buildRingSet(const xAOD::RingSetConf::RawConf &rawConf, const AtlasGeoPoint &seed, xAOD::RingSet *rs)
main method where the RingSets are built.
Gaudi::Property< bool > m_doTransverseEnergy
Switch to use raw cell energy instead ET.
Definition of CaloDetDescrManager.
StatusCode executeTemp(const T &input, ElementLink< xAOD::CaloRingsContainer > &crEL)
Tool protected methods:
Description of a calorimeter cluster.
Property holding a SG store/key/clid from which a WriteHandle is made.
Gaudi::Property< std::vector< int > > m_layers
Calorimeter layers in each ringset.
CaloRingsBuilder(const std::string &type, const std::string &name, const IInterface *parent)
Default constructor.
::StatusCode StatusCode
StatusCode definition for legacy code.
Gaudi::Property< std::vector< unsigned int > > m_nLayers
Number of calorimeter layers in each ringset.
Gaudi::Property< float > m_cellMaxDEtaDist
Maximum cell distance in eta to seed.
CaloPhiRange class declaration.
AtlasGeoPoint m_lastValidSeed
last valid RingSet seed
static const CaloPhiRange m_phiHelper
used for phi wrap-around
ElementLink implementation for ROOT usage.
Property holding a SG store/key/clid from which a WriteHandle is made.
const SG::WriteHandleKey< xAOD::CaloRingsContainer > & crContName() const override
Gaudi::Property< float > m_minEnergy
Minimum particle energy to build rings (GeV)
std::size_t nRingSets() const override
Container class for CaloCell.
size_t m_nRingSets
hold the number of RingSets we are building for each CaloRings
xAOD::RingSetContainer * m_rsCont
Tool props (non configurables):
xAOD::RingSetConf::RawConfCollection m_rsRawConfCol
holds each RingSet configuration (filled at initialize)
virtual StatusCode preExecute(xAOD::CaloRingsContainer *crCont, xAOD::RingSetContainer *rsCont, const std::size_t nReserve=0) override
method for working on containers
SG::WriteHandleKey< xAOD::CaloRingsContainer > m_crContName
Fill RingSet seed for IParticle.
virtual StatusCode execute(const xAOD::IParticle &particle, ElementLink< xAOD::CaloRingsContainer > &clRingsLink) override
build CaloRings for IParticle
Gaudi::Property< std::vector< unsigned int > > m_nRings
Number of rings in a ringset.
const SG::WriteHandleKey< xAOD::RingSetContainer > & rsContName() const override
Gaudi::Property< bool > m_useShowShapeBarycenter
Switch to use shower barycenter seed for each RingSets.
Namespace dedicated for Ringer utilities.