ATLAS Offline Software
JetCleaningSelector.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3  */
4 
5 #ifndef JETCLEANINGSELECTOR_H_
6 #define JETCLEANINGSELECTOR_H_
7 
9 
10 #include "AsgTools/AsgTool.h"
11 #include "AsgTools/ToolHandle.h"
14 
15 namespace top {
16  class TopConfig;
17 
29  public:
38  explicit JetCleaningSelector(const std::string& level, std::shared_ptr<top::TopConfig> config);
39 
45  bool apply(const top::Event& event) const override;
46 
53  std::string name() const override;
54  private:
61  bool checkBadBatman(const top::Event& event) const;
62 
64  ToolHandle<IJetSelector> m_jetCleaningToolLooseBad;
65  ToolHandle<IJetSelector> m_jetCleaningToolTightBad;
66 
68  ToolHandle<ECUtils::IEventCleaningTool> m_jetEventCleaningToolLooseBad;
69  ToolHandle<ECUtils::IEventCleaningTool> m_jetEventCleaningToolTightBad;
70 
72  std::string m_level;
75 
76  std::shared_ptr<top::TopConfig> m_config;
77  };
78 }
79 
80 #endif
top
TopConfig A simple configuration that is NOT a singleton.
Definition: AnalysisTrackingHelper.cxx:58
IEventCleaningTool.h
top::JetCleaningSelector::name
std::string name() const override
Print the name of the tool and level.
Definition: JetCleaningSelector.cxx:106
top::JetCleaningSelector::m_config
std::shared_ptr< top::TopConfig > m_config
Definition: JetCleaningSelector.h:76
IJetSelector.h
top::JetCleaningSelector::JetCleaningSelector
JetCleaningSelector(const std::string &level, std::shared_ptr< top::TopConfig > config)
Setup the jet group's cleaning tool.
Definition: JetCleaningSelector.cxx:13
config
Definition: PhysicsAnalysis/AnalysisCommon/AssociationUtils/python/config.py:1
python.iconfTool.models.loaders.level
level
Definition: loaders.py:20
top::JetCleaningSelector::m_jetCleaningToolLooseBad
ToolHandle< IJetSelector > m_jetCleaningToolLooseBad
The jet cleaning tools.
Definition: JetCleaningSelector.h:64
event
POOL::TEvent event(POOL::TEvent::kClassAccess)
top::JetCleaningSelector::m_useEventLevelJetCleaningTool
bool m_useEventLevelJetCleaningTool
Definition: JetCleaningSelector.h:74
top::JetCleaningSelector::m_jetEventCleaningToolLooseBad
ToolHandle< ECUtils::IEventCleaningTool > m_jetEventCleaningToolLooseBad
The jet event cleaning tools.
Definition: JetCleaningSelector.h:68
top::JetCleaningSelector::m_jetEventCleaningToolTightBad
ToolHandle< ECUtils::IEventCleaningTool > m_jetEventCleaningToolTightBad
Definition: JetCleaningSelector.h:69
top::JetCleaningSelector::m_jetCleaningToolTightBad
ToolHandle< IJetSelector > m_jetCleaningToolTightBad
Definition: JetCleaningSelector.h:65
top::EventSelectorBase
This should apply event-level cuts and perform simple plotting on top::Event objects.
Definition: EventSelectorBase.h:20
EventSelectorBase.h
top::JetCleaningSelector::checkBadBatman
bool checkBadBatman(const top::Event &event) const
A helper function to check if the event passes BadBatman cleaning in a specified range (from config) ...
Definition: JetCleaningSelector.cxx:110
top::JetCleaningSelector::m_useLooseBad
bool m_useLooseBad
Definition: JetCleaningSelector.h:73
top::Event
Very simple class to hold event data after reading from a file.
Definition: Event.h:49
ToolHandle.h
AsgTool.h
top::JetCleaningSelector
Event selection using the official jet cleaning tool.
Definition: JetCleaningSelector.h:28
top::JetCleaningSelector::apply
bool apply(const top::Event &event) const override
Only accept the event if the tool says all the jets are okay.
Definition: JetCleaningSelector.cxx:57
top::JetCleaningSelector::m_level
std::string m_level
The level to configure to, so we can print it in the name.
Definition: JetCleaningSelector.h:72