diff --git a/Control/CxxUtils/share/OptionalContainer_test.ref b/Control/CxxUtils/share/OptionalContainer_test.ref old mode 100755 new mode 100644 diff --git a/PhysicsAnalysis/TopPhys/xAOD/TopAnalysis/util/top-xaod.cxx b/PhysicsAnalysis/TopPhys/xAOD/TopAnalysis/util/top-xaod.cxx index 95aad4ecb79c4607eba1bbebba5b12bb0a91db18..c5d53cccf598657400103d1415b764eaa853b929 100644 --- a/PhysicsAnalysis/TopPhys/xAOD/TopAnalysis/util/top-xaod.cxx +++ b/PhysicsAnalysis/TopPhys/xAOD/TopAnalysis/util/top-xaod.cxx @@ -690,22 +690,24 @@ int main(int argc, char** argv) { pileupWeight = topScaleFactors->pileupWeight(); } - // perform any operation common to both reco and truth level - // currently we load the MC generator weights inside, if requested - eventSaver->execute(); - - ///-- Truth events --/// if (topConfig->isMC()) { - // Save, if requested, MC truth block, PDFInfo, TopPartons - // This will be saved for every event - + // if requested, pre-calculate TopPartons and PDF info // Run topPartonHistory if (topConfig->doTopPartonHistory()) top::check(topPartonHistory->execute(), "Failed to execute topPartonHistory"); // calculate PDF weights if (topConfig->doLHAPDF()) top::check(PDF_SF->execute(), "Failed to execute PDF SF"); + } + // perform any operation common to both reco and truth level + // currently we load the MC generator weights and PDFs if requested + eventSaver->execute(); + + ///-- Truth events --/// + if (topConfig->isMC()) { + + // Save, if requested, MC truth block, PDFInfo, TopPartons eventSaver->saveTruthEvent(); if(topConfig->doTopPartonLevel()) ++eventSavedTruth;