ATLAS Offline Software
TauObjectCollectionMaker.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3  */
4 
5 // $Id: TauObjectCollectionMaker.h $
6 #ifndef ANALYSISTOP_TOPSYSTEMATICOBJECTMAKER_TAUOBJECTCOLLECTIONMAKER_H
7 #define ANALYSISTOP_TOPSYSTEMATICOBJECTMAKER_TAUOBJECTCOLLECTIONMAKER_H
8 
18 // system include(s):
19 #include <memory>
20 #include <set>
21 #include <list>
22 
23 // Framework include(s):
24 #include "AsgTools/AsgTool.h"
25 #include "AsgTools/ToolHandle.h"
26 
27 // Systematic include(s):
29 
30 // CP Tool include(s):
33 
34 // Forward declaration(s):
35 namespace top {
36  class TopConfig;
37 }
38 
39 namespace top {
40  class TauObjectCollectionMaker final: public asg::AsgTool {
41  public:
42  explicit TauObjectCollectionMaker(const std::string& name);
44 
45  // Delete Standard constructors
49 
51  StatusCode execute(bool);
52 
54 
55  // return specific Systematic
56  inline virtual const std::list<CP::SystematicSet>& specifiedSystematics() const {return m_specifiedSystematics;}
57 
58  // return all recommendedSystematics
59  inline const std::list<CP::SystematicSet>& recommendedSystematics() const {return m_recommendedSystematics;}
60  protected:
61  // specify Systematic
62  virtual void specifiedSystematics(const std::set<std::string>& specifiedSystematics);
63  private:
64  std::shared_ptr<top::TopConfig> m_config;
65 
66  std::list<CP::SystematicSet> m_specifiedSystematics;
67  std::list<CP::SystematicSet> m_recommendedSystematics;
68 
69  ToolHandle<TauAnalysisTools::ITauSmearingTool> m_calibrationTool;
70  ToolHandle<TauAnalysisTools::ITauTruthMatchingTool> m_truthMatchingTool;
71  };
72 } // namespace
73 #endif
top::TauObjectCollectionMaker::TauObjectCollectionMaker
TauObjectCollectionMaker(const std::string &name)
Definition: TauObjectCollectionMaker.cxx:18
asg::AsgTool
Base class for the dual-use tool implementation classes.
Definition: AsgTool.h:47
top
TopConfig A simple configuration that is NOT a singleton.
Definition: AnalysisTrackingHelper.cxx:58
SystematicSet.h
top::TauObjectCollectionMaker::specifiedSystematics
virtual const std::list< CP::SystematicSet > & specifiedSystematics() const
Definition: TauObjectCollectionMaker.h:56
top::TauObjectCollectionMaker
Definition: TauObjectCollectionMaker.h:40
top::TauObjectCollectionMaker::m_calibrationTool
ToolHandle< TauAnalysisTools::ITauSmearingTool > m_calibrationTool
Definition: TauObjectCollectionMaker.h:69
top::TauObjectCollectionMaker::~TauObjectCollectionMaker
virtual ~TauObjectCollectionMaker()
Definition: TauObjectCollectionMaker.h:43
top::TauObjectCollectionMaker::operator=
TauObjectCollectionMaker & operator=(const TauObjectCollectionMaker &rhs)=delete
ITauTruthMatchingTool.h
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
top::TauObjectCollectionMaker::printout
StatusCode printout()
Definition: TauObjectCollectionMaker.cxx:111
top::TauObjectCollectionMaker::execute
StatusCode execute(bool)
Definition: TauObjectCollectionMaker.cxx:63
top::TauObjectCollectionMaker::m_recommendedSystematics
std::list< CP::SystematicSet > m_recommendedSystematics
Definition: TauObjectCollectionMaker.h:67
top::TauObjectCollectionMaker::TauObjectCollectionMaker
TauObjectCollectionMaker(const TauObjectCollectionMaker &rhs)=delete
top::TauObjectCollectionMaker::recommendedSystematics
const std::list< CP::SystematicSet > & recommendedSystematics() const
Definition: TauObjectCollectionMaker.h:59
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:192
top::TauObjectCollectionMaker::m_truthMatchingTool
ToolHandle< TauAnalysisTools::ITauTruthMatchingTool > m_truthMatchingTool
Definition: TauObjectCollectionMaker.h:70
top::TauObjectCollectionMaker::m_config
std::shared_ptr< top::TopConfig > m_config
Definition: TauObjectCollectionMaker.h:64
top::TauObjectCollectionMaker::initialize
StatusCode initialize()
Dummy implementation of the initialisation function.
Definition: TauObjectCollectionMaker.cxx:32
top::TauObjectCollectionMaker::TauObjectCollectionMaker
TauObjectCollectionMaker(TauObjectCollectionMaker &&rhs)=delete
ToolHandle.h
AsgTool.h
top::TauObjectCollectionMaker::m_specifiedSystematics
std::list< CP::SystematicSet > m_specifiedSystematics
Definition: TauObjectCollectionMaker.h:66
ITauSmearingTool.h