ATLAS Offline Software
PhysicsAnalysis/JetTagging/JetTagPerformanceCalibration/xAODBTaggingEfficiency/src/ToolTester.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 // $Id$
6 
7 #include "xAODJet/JetContainer.h"
8 //#include "CalibrationDataInterface/CalibrationDataInterfaceROOT.h"
9 
10 #include "ToolTester.h"
11 
12 BTagToolTester::BTagToolTester( const std::string & name, ISvcLocator * svcLoc)
13  : AthAlgorithm( name, svcLoc ),
14  m_effTool( "BTaggingEfficiencyTool/BTaggingEfficiencyTool", this )
15 {
16  declareProperty( "SGKey", m_sgKey = "AntiKt4LCTopoJets" );
17  declareProperty( "BTaggingEfficiencyTool", m_effTool);
18 }
19 
21  ATH_MSG_INFO( "Initialising" );
22  ATH_MSG_DEBUG( "SGKey = " << m_sgKey);
23  ATH_MSG_DEBUG( "BTaggingEfficiencyTool = " << m_effTool );
24 
25  ATH_CHECK( m_effTool.retrieve() );
26 
27  return StatusCode::SUCCESS;
28 }
29 
31  const xAOD::JetContainer * jets = 0;
33  ATH_MSG_INFO( "Number of jets: " << jets->size());
34 
35  for( xAOD::JetContainer::const_iterator itr = jets->begin();
36  itr != jets->end(); ++itr) {
37  const xAOD::Jet * jet = *itr;
38  ATH_MSG_INFO( " Jet : eta = " << jet->eta() << ", phi = " << jet->phi() << ", pt = " << jet->pt() );
39 
40  float eff = 0.;
41  float sf = 0.;
42 
43 
44  if( ! m_effTool->getEfficiency(*jet,eff)){
45  ATH_MSG_WARNING( "Failed to get b-jet efficiency");
46  return StatusCode::FAILURE;
47  }
48  if( ! m_effTool->getScaleFactor(*jet,sf)) {
49  ATH_MSG_WARNING( "Failed to get b-jet scale factor");
50  return StatusCode::FAILURE;
51  }
52  ATH_MSG_INFO( "eff = " << eff << " sf = " << sf );
53  }
54 
55  return StatusCode::SUCCESS;
56 }
python.PyKernel.retrieve
def retrieve(aClass, aKey=None)
Definition: PyKernel.py:110
DataModel_detail::const_iterator
Const iterator class for DataVector/DataList.
Definition: DVLIterator.h:82
ATH_MSG_INFO
#define ATH_MSG_INFO(x)
Definition: AthMsgStreamMacros.h:31
AthCommonDataStore< AthCommonMsg< Algorithm > >::declareProperty
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
Definition: AthCommonDataStore.h:145
BTagToolTester::BTagToolTester
BTagToolTester(const std::string &name, ISvcLocator *svcLoc)
Definition: PhysicsAnalysis/JetTagging/JetTagPerformanceCalibration/xAODBTaggingEfficiency/src/ToolTester.cxx:12
BTagToolTester::m_sgKey
std::string m_sgKey
Definition: PhysicsAnalysis/JetTagging/JetTagPerformanceCalibration/xAODBTaggingEfficiency/src/ToolTester.h:20
AthCommonDataStore< AthCommonMsg< Algorithm > >::evtStore
ServiceHandle< StoreGateSvc > & evtStore()
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
Definition: AthCommonDataStore.h:85
jet
Definition: JetCalibTools_PlotJESFactors.cxx:23
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ATH_MSG_DEBUG
#define ATH_MSG_DEBUG(x)
Definition: AthMsgStreamMacros.h:29
ATH_CHECK
#define ATH_CHECK
Definition: AthCheckMacros.h:40
DataVector
Derived DataVector<T>.
Definition: DataVector.h:581
AthAlgorithm
Definition: AthAlgorithm.h:47
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
ToolTester.h
xAOD::Jet_v1
Class describing a jet.
Definition: Jet_v1.h:57
JetContainer.h
mapkey::sf
@ sf
Definition: TElectronEfficiencyCorrectionTool.cxx:38
ATH_MSG_WARNING
#define ATH_MSG_WARNING(x)
Definition: AthMsgStreamMacros.h:32
BTagToolTester::m_effTool
ToolHandle< IBTaggingEfficiencyTool > m_effTool
Definition: PhysicsAnalysis/JetTagging/JetTagPerformanceCalibration/xAODBTaggingEfficiency/src/ToolTester.h:22
BTagToolTester::initialize
StatusCode initialize()
Definition: PhysicsAnalysis/JetTagging/JetTagPerformanceCalibration/xAODBTaggingEfficiency/src/ToolTester.cxx:20
BTagToolTester::execute
StatusCode execute()
Definition: PhysicsAnalysis/JetTagging/JetTagPerformanceCalibration/xAODBTaggingEfficiency/src/ToolTester.cxx:30
defineDB.jets
list jets
Definition: JetTagCalibration/share/defineDB.py:24
dqt_zlumi_alleff_HIST.eff
int eff
Definition: dqt_zlumi_alleff_HIST.py:113