34 return StatusCode::SUCCESS;
43 return StatusCode::FAILURE;
50 std::vector<SelDecorator> selDecors;
52 selDecors.emplace_back(key, ctx);
62 if (!selDecors.empty() && std::find_if(selDecors.begin(), selDecors.end(), [trk](
const SelDecorator& dec){
64 }) == selDecors.end())
continue;
69 return StatusCode::FAILURE;
71 topocone40_dec(*trk) = resultCalo.
etcones[0];
72 topocone30_dec(*trk) = resultCalo.
etcones[1];
73 topocone20_dec(*trk) = resultCalo.
etcones[2];
76 return StatusCode::SUCCESS;
#define ATH_CHECK
Evaluate an expression and check for errors.
Handle class for reading from StoreGate.
Handle class for adding a decoration to an object.
An algorithm that can be simultaneously executed in multiple threads.
Gaudi::Property< std::vector< std::string > > m_trkSel_Decors
Optional list of decorators to select only the good tracks for the isolation decoration.
Gaudi::Property< float > m_pt_min
pt threshold to apply
SG::ReadHandleKey< xAOD::TrackParticleContainer > m_trk_key
track collection to decorate
SG::WriteDecorHandleKey< xAOD::TrackParticleContainer > m_topocone20_key
SG::WriteDecorHandleKey< xAOD::TrackParticleContainer > m_corr_key
CaloIsolationDecorAlg(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters:
xAOD::CaloCorrection m_calo_corr
SG::WriteDecorHandleKey< xAOD::TrackParticleContainer > m_topocone30_key
Gaudi::Property< std::string > m_customName
SG::ReadDecorHandleKeyArray< xAOD::TrackParticleContainer > m_trkSel_keys
StatusCode initialize() override
Athena algorithm's Hooks.
std::vector< xAOD::Iso::IsolationType > m_calo_isos
ToolHandle< xAOD::ICaloTopoClusterIsolationTool > m_isoTool
Athena configured tools.
StatusCode execute(const EventContext &ctx) const override
SG::WriteDecorHandleKey< xAOD::TrackParticleContainer > m_topocone40_key
Property holding a SG store/key/clid/attr name from which a ReadDecorHandle is made.
Handle class for reading a decoration on an object.
virtual bool isValid() override final
Can the handle be successfully dereferenced?
Handle class for adding a decoration to an object.
SG::WriteDecorHandle< ContType, dType > makeHandle(const EventContext &ctx, const SG::WriteDecorHandleKey< ContType > &key, const dType &defValue=dType{})
@ coreEnergy
energy stored for this correction
@ pileupCorrection
fully corrected
@ coreCone
core energy (in dR<0.1).
TrackParticle_v1 TrackParticle
Reference the current persistent version:
std::vector< float > etcones
std::map< Iso::IsolationCaloCorrection, std::map< Iso::IsolationCorrectionParameter, float > > coreCorrections