Skip to content

Instantly share code, notes, and snippets.

@sparticlesteve
Created January 14, 2016 22:26
Show Gist options
  • Save sparticlesteve/e115b653cc78427d3f1c to your computer and use it in GitHub Desktop.
Save sparticlesteve/e115b653cc78427d3f1c to your computer and use it in GitHub Desktop.
OR tool init in SUSYTools for RootCore
// /////////////////////////////////////////////////////////////////////////////////////////
// Initialise Overlap Removal Tool
if (m_orTool.empty()) {
std::string suffix = "";
if (m_doTauOR) suffix += "Tau";
if (m_doPhotonOR) suffix += "Gamma";
std::string bJetLabel = "";
if (m_doBjetOR) {
suffix += "Bjet";
bJetLabel = "bjet_loose";
}
auto toolName = "ORTool" + suffix;
if ( asg::ToolStore::contains<ORUtils::OverlapRemovalTool>( toolName ) ) {
m_orTool = asg::ToolStore::get<ORUtils::OverlapRemovalTool>( toolName );
} else {
// arguments: toolbox, name, inputlabel, outputlabel, output value, bjet label, do boosted lepton OR, doTaus, doPhotons
ATH_CHECK( ORUtils::recommendedTools(m_orToolbox, toolName, "baseline", "passOR", bJetLabel,
m_doBoostedLeptonOR, true, m_doTauOR, m_doPhotonOR) );
// Override sliding cone params if they are non-negative
for(auto t : {m_orToolbox.getTool("EleJetORT"), m_orToolbox.getTool("MuJetORT")}) {
if (m_boostedLeptonORC1 > 0)
ATH_CHECK( t->setProperty("SlidingDRC1", m_boostedLeptonORC1) );
if (m_boostedLeptonORC2 > 0)
ATH_CHECK( t->setProperty("SlidingDRC2", m_boostedLeptonORC2) );
if (m_boostedLeptonORMaxConeSize > 0)
ATH_CHECK( t->setProperty("SlidingDRMaxCone", m_boostedLeptonORMaxConeSize) );
}
ATH_CHECK(m_orToolbox.initialize());
m_orTool = m_orToolbox.getMasterHandle();
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment