ATLAS Offline Software
DL2Tool.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
7 
8 namespace FlavorTagDiscriminants {
9 
10  DL2Tool::DL2Tool(const std::string& name):
11  asg::AsgTool(name),
12  m_props(),
13  m_dl2(nullptr)
14  {
15  declareProperty("nnFile", m_props.nnFile);
16  declareProperty("flipTagConfig", m_props.flipTagConfig);
17  declareProperty("variableRemapping", m_props.variableRemapping);
18  declareProperty("defaultOutputValue", m_props.default_output_value);
19  }
21 
23  ATH_MSG_INFO("Initialize DL2 from: " + m_props.nnFile);
25  if (m_props.flipTagConfig.size() > 0) {
27  }
28  m_dl2.reset(
29  new DL2HighLevel(
31  flipConfig,
33  )
34  );
35  return StatusCode::SUCCESS;
36  }
37 
38  void DL2Tool::decorate(const xAOD::IParticle& i_jet) const {
39  ATH_MSG_DEBUG("Decorating i_jet from: " + m_props.nnFile);
40  m_dl2->decorate(i_jet);
41  ATH_MSG_VERBOSE("Decorated i_jet");
42  }
44  ATH_MSG_DEBUG("Decorating i_jet with defaults from: " + m_props.nnFile);
45  m_dl2->decorateWithDefaults(i_jet);
46  ATH_MSG_VERBOSE("Decorated i_jet with defaults");
47  }
48 
49  std::set<std::string> DL2Tool::getDecoratorKeys() const {
50  return m_dl2->getDataDependencyNames().bTagOutputs;
51  }
52  std::set<std::string> DL2Tool::getAuxInputKeys() const {
53  return m_dl2->getDataDependencyNames().bTagInputs;
54  }
55  std::set<std::string> DL2Tool::getConstituentAuxInputKeys() const {
56  return m_dl2->getDataDependencyNames().trackInputs;
57  }
58 
59 }
FlavorTagDiscriminants::DL2Tool::m_dl2
std::unique_ptr< DL2HighLevel > m_dl2
Definition: DL2Tool.h:43
ATH_MSG_INFO
#define ATH_MSG_INFO(x)
Definition: AthMsgStreamMacros.h:31
FlavorTagDiscriminants
Definition: DL2.h:18
FlavorTagDiscriminants::DL2Tool::initialize
StatusCode initialize() override
Dummy implementation of the initialisation function.
Definition: DL2Tool.cxx:22
asg
Definition: DataHandleTestTool.h:28
FlavorTagDiscriminants::DL2HighLevel
Definition: DL2HighLevel.h:29
FlavorTagDiscriminants::DL2Properties::default_output_value
float default_output_value
Definition: DL2Tool.h:21
FlavorTagDiscriminants::DL2Tool::~DL2Tool
~DL2Tool()
Definition: DL2Tool.cxx:20
ATH_MSG_VERBOSE
#define ATH_MSG_VERBOSE(x)
Definition: AthMsgStreamMacros.h:28
xAOD::IParticle
Class providing the definition of the 4-vector interface.
Definition: Event/xAOD/xAODBase/xAODBase/IParticle.h:41
FlavorTagDiscriminants::DL2Tool::DL2Tool
DL2Tool(const std::string &name)
Definition: DL2Tool.cxx:10
FlavorTagDiscriminants::DL2Tool::decorate
virtual void decorate(const xAOD::IParticle &i_jet) const override
Method to decorate a jet.
Definition: DL2Tool.cxx:38
FlavorTagInference::FlipTagConfig
FlipTagConfig
Definition: FlipTagEnums.h:14
FlavorTagDiscriminants::DL2Properties::nnFile
std::string nnFile
Definition: DL2Tool.h:17
FlavorTagDiscriminants::DL2Tool::m_props
DL2Properties m_props
Definition: DL2Tool.h:42
FlavorTagDiscriminants::DL2Tool::getAuxInputKeys
virtual std::set< std::string > getAuxInputKeys() const override
Definition: DL2Tool.cxx:52
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
AthCommonDataStore< AthCommonMsg< AlgTool > >::declareProperty
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T, V, H > &t)
Definition: AthCommonDataStore.h:145
FlavorTagDiscriminants::DL2Tool::decorateWithDefaults
virtual void decorateWithDefaults(const xAOD::IParticle &i_jet) const override
Method to decorate a jet with defaults.
Definition: DL2Tool.cxx:43
FlavorTagDiscriminants::DL2Properties::variableRemapping
std::map< std::string, std::string > variableRemapping
Definition: DL2Tool.h:19
FlavorTagInference::flipTagConfigFromString
FlipTagConfig flipTagConfigFromString(const std::string &)
Definition: FlipTagEnums.cxx:15
FlavorTagDiscriminants::DL2Properties::flipTagConfig
std::string flipTagConfig
Definition: DL2Tool.h:18
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:240
FlavorTagDiscriminants::DL2Tool::getDecoratorKeys
virtual std::set< std::string > getDecoratorKeys() const override
Definition: DL2Tool.cxx:49
DL2HighLevel.h
DL2Tool.h
FlavorTagInference::FlipTagConfig::STANDARD
@ STANDARD
FlavorTagDiscriminants::DL2Tool::getConstituentAuxInputKeys
virtual std::set< std::string > getConstituentAuxInputKeys() const override
Definition: DL2Tool.cxx:55