Skip to content
Snippets Groups Projects
Commit ab3a1413 authored by Adam Edward Barton's avatar Adam Edward Barton
Browse files

Merge branch 'eflowRec_fixTauLinks' into 'master'

Fixes for cluster links used by taus

See merge request !32082
parents 74dfe2ff af8dd482
6 merge requests!58791DataQualityConfigurations: Modify L1Calo config for web display,!46784MuonCondInterface: Enable thread-safety checking.,!46776Updated LArMonitoring config file for WD to match new files produced using MT,!45405updated ART test cron job,!42417Draft: DIRE and VINCIA Base Fragments for Pythia 8.3,!32082Fixes for cluster links used by taus
......@@ -121,6 +121,13 @@ class usePFEGammaPFOAssoc(JobProperty):
allowedTypes = ['bool']
StoredValue = False
class provideShowerSubtractedClusters(JobProperty):
""" Flag to toggle provision of ElementLink to charged shower subtracted calorimeter clusters. Such links are added to
neutral PFO and we write out the relevant CaloClusterContainer to AOD such that the links remain valid """
statusOn = True
allowedTypes = ['bool']
StoredValue = False
# Defines the container for the eflowRec flags
class eflowRecFlags(JobPropertyContainer):
......@@ -131,7 +138,7 @@ class eflowRecFlags(JobPropertyContainer):
# add the flags container to the top container
jobproperties.add_Container(eflowRecFlags)
eflowJobProperties = [eflowAlgType,CalType,useLocalHadWeightsOOCC,useOverLapShowerCells,useSplitShowers,useEEtaFirstInt,recoverIsolatedTracks,UseElectronHadronID,runTauMode, useLeptons,storeLeptonCells, useLCInput, useUpdated2015ChargedShowerSubtraction,useAODReductionClusterMomentList,useCalibHitTruth,usePFEGammaPFOAssoc]
eflowJobProperties = [eflowAlgType,CalType,useLocalHadWeightsOOCC,useOverLapShowerCells,useSplitShowers,useEEtaFirstInt,recoverIsolatedTracks,UseElectronHadronID,runTauMode, useLeptons,storeLeptonCells, useLCInput, useUpdated2015ChargedShowerSubtraction,useAODReductionClusterMomentList,useCalibHitTruth,usePFEGammaPFOAssoc,provideShowerSubtractedClusters]
for i in eflowJobProperties :
jobproperties.eflowRecFlags.add_JobProperty(i)
......
......@@ -246,6 +246,9 @@ if jobproperties.eflowRecFlags.eflowAlgType == "EOverP":
PFONeutralCreatorAlgorithm.PFOOutputName="EOverPNeutralParticleFlowObjects"
PFONeutralCreatorAlgorithm.EOverPMode=True
if True == jobproperties.eflowRecFlags.provideShowerSubtractedClusters:
PFONeutralCreatorAlgorithm.AddShowerSubtractedClusters = True
topSequence += PFONeutralCreatorAlgorithm
if jobproperties.eflowRecFlags.usePFEGammaPFOAssoc:
......
......@@ -17,5 +17,7 @@ else:
eflowRecAODList += [ "xAOD::PFOAuxContainer#JetETMissChargedParticleFlowObjectsAux."]
eflowRecAODList += [ "xAOD::PFOAuxContainer#JetETMissNeutralParticleFlowObjectsAux."+excludeList]
if True == jobproperties.eflowRecFlags.provideShowerSubtractedClusters:
eflowRecAODList += [ "xAOD::CaloClusterContainer#PFCaloCluster"]
eflowRecAODList += [ "xAOD::CaloClusterAuxContainer#PFCaloClusterAux."]
......@@ -17,3 +17,7 @@ else:
eflowRecESDList += [ "xAOD::PFOAuxContainer#JetETMissChargedParticleFlowObjectsAux."]
eflowRecESDList += [ "xAOD::PFOAuxContainer#JetETMissNeutralParticleFlowObjectsAux."+excludeList]
if True == jobproperties.eflowRecFlags.provideShowerSubtractedClusters:
eflowRecESDList += [ "xAOD::CaloClusterContainer#PFCaloCluster"]
eflowRecESDList += [ "xAOD::CaloClusterAuxContainer#PFCaloClusterAux."]
......@@ -19,6 +19,7 @@ eflowRecCluster::eflowRecCluster(const ElementLink<xAOD::CaloClusterContainer>&
const xAOD::CaloCluster* originalCluster = *clusElementLink;
m_cluster = new xAOD::CaloCluster();
newClusContainer.push_back(m_cluster);
m_clusElementLink = ElementLink<xAOD::CaloClusterContainer>(newClusContainer,newClusContainer.size()-1);
const CaloClusterCellLink* theOldCellLinks = originalCluster->getCellLinks();
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment