6#ifndef CALOTOPOCLUSTERMAKER_H
7#define CALOTOPOCLUSTERMAKER_H
52 const IInterface* parent);
55 virtual StatusCode
execute(
const EventContext& ctx,
362 Gaudi::Property<bool>
m_useGPUCriteria {
this,
"UseGPUCriteria",
false,
"Adopt a set of criteria that is consistent with the GPU implementation."};
Base class for cluster processing tools called from CaloClusterMaker.
Handle class for reading from StoreGate.
Container class for CaloCell.
Helper class for offline cell identifiers.
Data object for each calorimeter readout cell.
virtual StatusCode execute(const EventContext &ctx, xAOD::CaloClusterContainer *collection) const =0
Execute on an entire collection of clusters.
This class groups all DetDescr information related to a CaloCell.
Gaudi::Property< bool > m_useGPUCriteria
float m_xtalkDeltaT
additional max.
float m_seedThresholdOnEorAbsEinSigma
cells with start a cluster
bool m_xtalkEM2D
if set to true, the time window is softened in the EMB2 and EME2_OW due to xtalk from all 2D neighors
bool m_subcaloUsed[CaloCell_ID::NSUBCALO]
Flag which subdetectors are to be used.
float m_xtalkEtaEratio
cut on Eneighbor/E to revover out of time layer 2 cell close in eta to energetic neighor cell
SG::ReadCondHandleKey< CaloNoise > m_noiseCDOKey
Key of the CaloNoise Conditions data object.
bool m_twogaussiannoise
if set to true use 2-gaussian noise description for TileCal
bool m_xtalkEM3
if set to true we extend the time window for direct layer 3 neighbors of high energy layer 2 cells
bool m_treatL1PredictedCellsAsGood
if set to true treat cells with a dead OTX which can be predicted by L1 trigger info as good instead ...
bool m_cellCutsInAbsE
if set to true cell cuts are on and .
float m_neighborThresholdOnEorAbsEinSigma
cells with extend the cluster
std::string m_neighborOption
type of neighbor relations to use.
bool m_clusterCutsInAbsE
if set to true final cluster cuts are on .
bool passCellTimeCut(const CaloCell *, const CaloCellContainer *) const
bool m_xtalkEMEta
if set to true, the time window is softened in the EMB2 and EME2_OW due to xtalk from direct neighbou...
float m_xtalk2Eratio2
cut on Eneighbor/E to revover out of time cell close to energetic second phi neighbor cell
SG::ReadHandleKey< CaloCellContainer > m_cellsKey
vector of names of the cell containers to use as input.
bool m_useTimeCutUpperLimit
if set to true, the time cut is not applied on cell of large significance
int m_maxSampling
largest valid seed sampling found
CaloTopoClusterMaker(const std::string &type, const std::string &name, const IInterface *parent)
const CaloCell_ID * m_calo_id
float m_cellThresholdOnEorAbsEinSigma
all cells have to satisfy
bool m_neighborCutsInAbsE
if set to true neighbor cuts are on and .
float m_timeCutUpperLimit
upper limit on the energy significance, for applying the cell time cut
float m_seedThresholdOnTAbs
threshold used for timing cut on seed cells.
float m_clusterEtorAbsEtCut
cut on the final cluster.
std::vector< std::string > m_caloNames
vector of names of the calorimeters to consider.
float m_xtalk2Eratio1
cut on Eneighbor/E to revover out of time cell close to energetic first phi neighbor cell
bool m_xtalkEM2
if set to true, the time window is softened in the EMB2 and EME2_OW due to xtalk from direct neighbou...
virtual StatusCode execute(const EventContext &ctx, xAOD::CaloClusterContainer *theClusters) const override
Execute on an entire collection of clusters.
virtual StatusCode initialize() override
std::set< int > m_validSamplings
actual set of samplings to be used for seeds
LArNeighbours::neighbourOption m_nOption
std::vector< std::string > m_samplingNames
vector of names of the calorimeter samplings to consider for seeds.
bool m_restrictPSNeighbors
if set to true limit the neighbors in presampler Barrel and Endcap.
bool m_xtalkEM2n
if set to true (together with m_xtalkEM2) we also extend the time window for 2nd phi neighbors
std::vector< bool > m_useSampling
flag for all samplings - true for used ones, false for excluded ones
int m_minSampling
smallest valid seed sampling found
bool m_seedCutsInT
if set to true, time cut is applied to seed cells, no cut otherwise
bool m_seedCutsInAbsE
if set to true seed cuts are on and .
float m_xtalk3Eratio
cut on Eneighbor/E to revover out of time layer 3cell close to energetic previous sampling neighbor
float m_xtalk2DEratio
cut on Eneighbor/E to remove out of time layer layer2 all 2D neighbors
bool m_restrictHECIWandFCalNeighbors
if set to true limit the neighbors in HEC IW and FCal2&3.
bool m_cutOOTseed
if set to true, seed cells failing the time cut are also excluded from cluster at all
xAOD::CaloCluster::ClusterSize m_clusterSize
Cluster size enum. Set based on energy cut jobO.
This is a "hash" representation of an Identifier.
Property holding a SG store/key/clid from which a ReadHandle is made.
ClusterSize
Enumeration to identify different cluster sizes.
CaloClusterContainer_v1 CaloClusterContainer
Define the latest version of the calorimeter cluster container.