ATLAS Offline Software
BTagScaleFactorCalculator.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3  */
4 
5 // $Id: BTagScaleFactorCalculator.h 807496 2017-06-28 14:52:29Z iconnell $
6 #ifndef ANALYSISTOP_TOPCORRECTIONS_BTAGSCALEFACTORCALCULATOR_H
7 #define ANALYSISTOP_TOPCORRECTIONS_BTAGSCALEFACTORCALCULATOR_H
8 
20 // system include(s):
21 #include <memory>
22 #include <set>
23 
24 // Framework include(s):
25 #include "AsgTools/AsgTool.h"
26 
27 // Systematic include(s):
29 
32 
33 // Forward declaration(s):
34 namespace top {
35  class TopConfig;
36 }
37 
38 namespace top {
40  public:
41  explicit BTagScaleFactorCalculator(const std::string& name);
43 
44  // Delete Standard constructors
48 
51  StatusCode apply(const std::shared_ptr<std::unordered_map<std::size_t, std::string> >& jet_syst_collections,
52  bool use_trackjets = false);
53 
54  // Function to print out information about internal tools
55  StatusCode debug();
56  private:
57  std::shared_ptr<top::TopConfig> m_config;
58 
60  std::unordered_map<std::string, CP::SystematicSet> m_systs;
61  std::unordered_map<std::string, CP::SystematicSet> m_trkjet_systs;
62 
64  std::unordered_map<std::string, ToolHandle<IBTaggingEfficiencyTool> > m_btagEffTools;
65  std::unordered_map<std::string, ToolHandle<IBTaggingEfficiencyTool> > m_trkjet_btagEffTools;
67  std::unordered_map<std::string, ToolHandle<IBTaggingSelectionTool> > m_btagSelTools;
68  std::unordered_map<std::string, ToolHandle<IBTaggingSelectionTool> > m_trkjet_btagSelTools;
69  };
70 } // namespace
71 #endif
asg::AsgTool
Base class for the dual-use tool implementation classes.
Definition: AsgTool.h:47
top::BTagScaleFactorCalculator::m_systs
std::unordered_map< std::string, CP::SystematicSet > m_systs
Definition: BTagScaleFactorCalculator.h:60
top::BTagScaleFactorCalculator::operator=
BTagScaleFactorCalculator & operator=(const BTagScaleFactorCalculator &rhs)=delete
top
TopConfig A simple configuration that is NOT a singleton.
Definition: AnalysisTrackingHelper.cxx:58
top::BTagScaleFactorCalculator::m_trkjet_btagSelTools
std::unordered_map< std::string, ToolHandle< IBTaggingSelectionTool > > m_trkjet_btagSelTools
Definition: BTagScaleFactorCalculator.h:68
top::BTagScaleFactorCalculator::apply
StatusCode apply(const std::shared_ptr< std::unordered_map< std::size_t, std::string > > &jet_syst_collections, bool use_trackjets=false)
Definition: BTagScaleFactorCalculator.cxx:69
SystematicSet.h
CP::SystematicSet
Class to wrap a set of SystematicVariations.
Definition: SystematicSet.h:31
top::BTagScaleFactorCalculator::BTagScaleFactorCalculator
BTagScaleFactorCalculator(const BTagScaleFactorCalculator &rhs)=delete
top::BTagScaleFactorCalculator::m_trkjet_btagEffTools
std::unordered_map< std::string, ToolHandle< IBTaggingEfficiencyTool > > m_trkjet_btagEffTools
Definition: BTagScaleFactorCalculator.h:65
IBTaggingEfficiencyTool.h
IBTaggingSelectionTool.h
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
top::BTagScaleFactorCalculator::~BTagScaleFactorCalculator
virtual ~BTagScaleFactorCalculator()
Definition: BTagScaleFactorCalculator.h:42
top::BTagScaleFactorCalculator::BTagScaleFactorCalculator
BTagScaleFactorCalculator(BTagScaleFactorCalculator &&rhs)=delete
top::BTagScaleFactorCalculator
Definition: BTagScaleFactorCalculator.h:39
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:192
top::BTagScaleFactorCalculator::debug
StatusCode debug()
Definition: BTagScaleFactorCalculator.cxx:172
top::BTagScaleFactorCalculator::initialize
StatusCode initialize()
Dummy implementation of the initialisation function.
Definition: BTagScaleFactorCalculator.cxx:31
top::BTagScaleFactorCalculator::m_trkjet_systs
std::unordered_map< std::string, CP::SystematicSet > m_trkjet_systs
Definition: BTagScaleFactorCalculator.h:61
top::BTagScaleFactorCalculator::BTagScaleFactorCalculator
BTagScaleFactorCalculator(const std::string &name)
Definition: BTagScaleFactorCalculator.cxx:24
top::BTagScaleFactorCalculator::execute
StatusCode execute()
Definition: BTagScaleFactorCalculator.cxx:60
top::BTagScaleFactorCalculator::m_btagEffTools
std::unordered_map< std::string, ToolHandle< IBTaggingEfficiencyTool > > m_btagEffTools
B-tagging efficiency tools.
Definition: BTagScaleFactorCalculator.h:64
top::BTagScaleFactorCalculator::m_btagSelTools
std::unordered_map< std::string, ToolHandle< IBTaggingSelectionTool > > m_btagSelTools
B-tagging selection tools.
Definition: BTagScaleFactorCalculator.h:67
top::BTagScaleFactorCalculator::m_config
std::shared_ptr< top::TopConfig > m_config
Definition: BTagScaleFactorCalculator.h:57
AsgTool.h
top::BTagScaleFactorCalculator::m_nominal
CP::SystematicSet m_nominal
Definition: BTagScaleFactorCalculator.h:59