5#ifndef IsolationSelection_IsolationCloseByCorrectionTool_H
6#define IsolationSelection_IsolationCloseByCorrectionTool_H
50 using IsoHelperMap = std::map<IsoType, std::unique_ptr<IsoVariableHelper>>;
59 const std::vector<xAOD::Iso::IsolationType>&
types,
65 const EventContext& ctx,
81 float& energy)
const override;
121 float& isoValue)
const;
124 ObjectCache& cache,
float& isoValue)
const;
127 const ObjectCache& cache,
float& isoValue)
const;
134 ObjectCache& cache)
const;
205 this,
"TrackSelectionTool",
"",
"TrackSelectionTool to select tracks which made it actually into the isolation"};
206 ToolHandle<CP::ITrackVertexAssociationTool>
m_ttvaTool{
this,
"TTVASelectionTool",
"",
207 "TTVASelectionTool to correct for the pile-up robust WPs"};
208 ToolHandle<CP::IIsolationSelectionTool>
m_selectorTool{
this,
"IsolationSelectionTool",
"",
209 "Please give me your configured IsolationSelectionTool!"};
214 this,
"SelectionDecorator",
"",
215 "Name of the char auxdata defining whether the particle shall be considered for iso correction"};
216 Gaudi::Property<std::string>
m_passOR_name{
this,
"PassoverlapDecorator",
"",
217 "Does the particle also need to pass the overlap removal?"};
218 Gaudi::Property<std::string>
m_isoSelection_name{
this,
"IsolationSelectionDecorator",
"",
"Name of the final isolation decorator."};
221 this,
"BackupPrefix",
"",
"Prefix in front of the isolation variables, if the original cone values need to be backuped"};
224 this,
"IsoDecSuffix",
"",
"Suffix added to output isolation variable names for close by corrections"};
226 this,
"CaloDecSuffix",
"",
"Suffix added to output cluster variable names for close by corrections"};
233 "This is the size of the core cone for the topoetcone variables."};
237 Gaudi::Property<float>
m_coreConeMu{
this,
"CoreConeMuons", 0.05,
"This is the size of the core cone for the topoetcone variables."};
241 Gaudi::Property<float>
m_ptvarconeRadius{
this,
"PtvarconeRadius", 1.e4,
"This is the kT parameter for the ptvarcone variables."};
249 this,
"MaxClusterFrac", 1.1,
250 "Maximum energy fraction a single cluster can make up to be considered as contributed to the isolation"};
253 this,
"ExtrapolationConeSize", 1.2,
254 "Constant factor to be multiplied on top of the topo-etcone size if the reference particle is not a calorimeter particle in "
255 "order to account for extrapolation effects"};
257 Gaudi::Property<bool>
m_declareCaloDecors{
this,
"declareCaloDecors",
false,
"If set to true, the data dependency on the calo/pflow decors will be declared"};
263 this,
"EleContainers", {},
"Pipe the list of electron containers given later to the tool"};
265 this,
"MuoContainers", {},
"Pipe the list of muon containers given later to the tool"};
267 this,
"PhoContainers", {},
"Pipe the list of photon containers given later to the tool"};
269 this,
"IsoVarKeys", {},
"The list is filled during the initialization"};
271 this,
"IsoWriteDecVarKeys", {},
"The list is filled during the initialization"};
274 ToolHandle<Trk::IParticleCaloExtensionTool>
m_caloExtTool {
this,
"ParticleCaloExtensionTool",
"Trk::ParticleCaloExtensionTool/ParticleCaloExtensionTool"};
281 "Name of the primary vertex container"};
283 "Name of the primary calo cluster container"};
285 "Name of the neutral pflow elements"};
Scalar eta() const
pseudorapidity method
Define macros for attributes used to control the static checker.
Return value from object correction CP tools.
Property holding a SG store/key/clid from which a ReadHandle is made.
Class providing the definition of the 4-vector interface.
Select isolated Photons, Electrons and Muons.
std::vector< IsoType > IsoVector
std::unordered_set< const xAOD::CaloCluster * > UnorderedClusterSet
xAOD::Iso::IsolationType IsoType
std::set< FlowElementPtr > PflowSet
std::unique_ptr< CharAccessor > SelectionAccessor
std::set< TrackPtr > TrackSet
std::set< CaloClusterPtr > ClusterSet
std::unique_ptr< CharDecorator > SelectionDecorator
DecorHandleKeyArray< ReadDecorHandle< T, S >, ReadDecorHandleKey< T >, Gaudi::DataHandle::Reader > ReadDecorHandleKeyArray
DecorHandleKeyArray< WriteDecorHandle< T, S >, WriteDecorHandleKey< T >, Gaudi::DataHandle::Writer > WriteDecorHandleKeyArray
ObjectType
Type of objects that have a representation in the xAOD EDM.
Namespace holding the IsolationType enumeration.
IsolationType
Overall enumeration for isolation types in xAOD files.
PhotonContainer_v1 PhotonContainer
Definition of the current "photon container version".
ElectronContainer_v1 ElectronContainer
Definition of the current "electron container version".
CaloCluster_v1 CaloCluster
Define the latest version of the calorimeter cluster class.
TrackParticle_v1 TrackParticle
Reference the current persistent version:
Vertex_v1 Vertex
Define the latest version of the vertex class.
static const EventInfo_v1::Accessor< std::vector< std::string > > types("streamTagTypes")
MuonContainer_v1 MuonContainer
Definition of the current "Muon container version".
DataVector< IParticle > IParticleContainer
Simple convenience declaration of IParticleContainer.