Skip to content
Snippets Groups Projects
Commit cd2a7d78 authored by Adam Bailey's avatar Adam Bailey
Browse files

Migrated TauTrackFilter to data handles, added that and a few previous tools to run scripts

Former-commit-id: 795a22fb
parent 32e16c77
No related branches found
No related tags found
8 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,!28528Revert 63f845ae,!27054Atr20369 210,!26342Monopole: Handle fractionally charged particles
......@@ -712,7 +712,7 @@ def getTauTrackFinder(removeDuplicateTracks=True):
def getTauTrackFilter():
_name = sPrefix + 'TauTrackFilter'
from tauRecTools.tauRecToolsConf import TauTrackFilter
TauTrackFilter = TauTrackFilter(name = _name, TrackContainerName=_DefaultTrackContainer)
TauTrackFilter = TauTrackFilter(name = _name, Key_trackParticleInputContainer = _DefaultTrackContainer)
cached_instances[_name] = TauTrackFilter
return TauTrackFilter
......
......@@ -111,10 +111,10 @@ class TauRecCoreBuilder ( TauRecConfigured ) :
tools.append(taualgs.getTauTrackFinder(removeDuplicateTracks=(not doMVATrackClassification) ))
if doMVATrackClassification : tools.append(taualgs.getTauTrackClassifier())
tools.append(taualgs.getEnergyCalibrationLC(correctEnergy=True, correctAxis=False, postfix='_onlyEnergy'))
#tools.append(taualgs.getCellVariables())
#tools.append(taualgs.getElectronVetoVars())
tools.append(taualgs.getCellVariables())
tools.append(taualgs.getElectronVetoVars())
#
#tools.append(taualgs.getTauTrackFilter())
tools.append(taualgs.getTauTrackFilter())
#tools.append(taualgs.getTauGenericPi0Cone())
#
### already commented out#tools.append(taualgs.getPi0EflowCreateROI())
......
......@@ -67,7 +67,7 @@ TauTrackFilter::~TauTrackFilter() {
StatusCode TauTrackFilter::initialize() {
ATH_MSG_VERBOSE("TauTrackFilter Initialising");
ATH_CHECK( m_trackParticleInputContainer.initialize() );
return StatusCode::SUCCESS;
}
......@@ -91,14 +91,15 @@ StatusCode TauTrackFilter::execute(xAOD::TauJet& pTau) {
StatusCode sc;
const xAOD::TrackParticleContainer *trackContainer;
//TODO: trigger uses getObject
sc = evtStore()->retrieve(trackContainer, m_trackContainerName);
if (sc.isFailure() || !trackContainer) {
ATH_MSG_DEBUG(" No track container found in TDS !!");
return StatusCode::SUCCESS;
// get track particle container
// wait - is this even used?
const xAOD::TrackParticleContainer *trackContainer = NULL;
SG::ReadHandle<xAOD::TrackParticleContainer> trackParticleInHandle( m_trackParticleInputContainer );
if (!trackParticleInHandle.isValid()) {
ATH_MSG_ERROR ("Could not retrieve HiveDataObj with key " << trackParticleInHandle.key());
return StatusCode::FAILURE;
}
trackContainer = trackParticleInHandle.cptr();
TLorentzVector tau;
tau.SetPtEtaPhiE(pTau.pt()/1000, //GeV
......@@ -173,10 +174,18 @@ StatusCode TauTrackFilter::execute(xAOD::TauJet& pTau) {
}
m_nProng = nProng;
m_flag = flag;
// Get track container via link from tau - instead of storegate retrieve
// Check that size > 0
ElementLink< xAOD::TauTrackContainer > link;
xAOD::TauTrackContainer* tauTracks = 0;
if (pTau.allTauTrackLinks().size() > 0) {
link = pTau.allTauTrackLinks().at(0);//we don't care about this specific link, just the container
tauTracks = link.getDataNonConstPtr();
}
// Set values in EDM
xAOD::TauTrackContainer* tauTracks = 0;
ATH_CHECK(evtStore()->retrieve(tauTracks, m_tauTrackConName));
for (unsigned int numTrack=0; numTrack<m_TrkPass.size(); numTrack++) {
xAOD::TauTrack* tauTrk = xAOD::TauHelpers::tauTrackNonConst(&pTau, tauTracks, numTrack); //pTau.trackNonConst(numTrack);
tauTrk->setFlag(xAOD::TauJetParameters::failTrackFilter, !m_TrkPass.at(numTrack));
......
......@@ -45,6 +45,8 @@ private:
int m_nProng;
int m_flag;
SG::ReadHandleKey<xAOD::TrackParticleContainer> m_trackParticleInputContainer{this,"Key_trackParticleInputContainer","InDetTrackParticles","track key"};
};
#endif
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