ATLAS Offline Software
Loading...
Searching...
No Matches
HIClusterMaker.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3*/
4
5// HIClusterMaker.h
6
7#ifndef __HIJETREC_HICLUSTERMAKER_H__
8#define __HIJETREC_HICLUSTERMAKER_H__
9
23
24
26//Ideally use forward class decl. for CaloClusterContainer
27//Cannot because this class is defined via typedef
30
34
36
38{
39
40public:
41
42 HIClusterMaker(const std::string& name, ISvcLocator* pSvcLocator);
44
45 virtual StatusCode initialize();
46 virtual StatusCode execute(const EventContext &ctx) const;
47 virtual StatusCode finalize();
48
49 //Simple helper to dump clusters for debugging
50 StatusCode dumpClusters(xAOD::CaloClusterContainer* clusColl);
51private:
53 SG::ReadHandleKey<INavigable4MomentumCollection> m_towerContainerKey { this, "InputTowerKey" , "CombinedTower" , "InputTowerKey"};
55 SG::ReadHandleKey<CaloCellContainer> m_cellContainerKey { this, "CaloCellContainerKey" , "AllCalo" , "InputCellKey" };
57 SG::WriteHandleKey<xAOD::CaloClusterContainer> m_outputKey { this, "OutputContainerKey" , "PseudoJet" , "Read version of output Container Key"};
59 Gaudi::Property< float > m_EminMoment { this, "MinimumEnergyForMoments", 50., "> E, cluster given tower coordinates" };
60
61 const CaloCell_ID * m_calo_id {nullptr};
62 std::unique_ptr<const CaloCell> getMirroredCell(const CaloCell* pCell, const CaloCellContainer* ccc) const;
63
64
65};
66#endif
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid from which a WriteHandle is made.
An algorithm that can be simultaneously executed in multiple threads.
Container class for CaloCell.
Helper class for offline cell identifiers.
Definition CaloCell_ID.h:34
Data object for each calorimeter readout cell.
Definition CaloCell.h:57
std::unique_ptr< const CaloCell > getMirroredCell(const CaloCell *pCell, const CaloCellContainer *ccc) const
SG::ReadHandleKey< INavigable4MomentumCollection > m_towerContainerKey
Name of input CaloTowerContainer, e.g CmbTower.
SG::ReadHandleKey< CaloCellContainer > m_cellContainerKey
Name of input CaloCellContainer, e.g. AllCalo.
virtual StatusCode initialize()
virtual StatusCode finalize()
SG::WriteHandleKey< xAOD::CaloClusterContainer > m_outputKey
Name of output CaloClusterContainer, e.g. HIClusters.
StatusCode dumpClusters(xAOD::CaloClusterContainer *clusColl)
Gaudi::Property< float > m_EminMoment
For clusters w/ E less than this, set their eta/phi to tower eta/phi.
HIClusterMaker(const std::string &name, ISvcLocator *pSvcLocator)
const CaloCell_ID * m_calo_id
virtual StatusCode execute(const EventContext &ctx) const
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid from which a WriteHandle is made.
CaloClusterContainer_v1 CaloClusterContainer
Define the latest version of the calorimeter cluster container.