|
ATLAS Offline Software
|
Go to the documentation of this file.
10 using namespace TopObjectSelectionTools;
14 const double d0SigCut,
const double delta_z0_sintheta,
15 const bool applyTTVACut) :
18 m_delta_z0(delta_z0_sintheta),
19 m_muonSelectionTool(
"MuonSelectionTool"),
20 m_muonSelectionToolLoose(
"MuonSelectionToolLoose"),
21 m_isolation(isolation),
22 m_applyTTVACut(applyTTVACut) {
68 if (!
mu.isAvailable<
float>(
"d0sig")) {
70 <<
"Maybe no primary vertex? Won't accept.");
74 float d0sig =
mu.auxdataConst<
float>(
"d0sig");
75 if (std::abs(d0sig) >= 3)
return false;
77 if (!
mu.isAvailable<
float>(
"delta_z0_sintheta")) {
79 <<
"Maybe no primary vertex? Won't accept.");
83 float delta_z0_sintheta =
mu.auxdataConst<
float>(
"delta_z0_sintheta");
84 if (std::abs(delta_z0_sintheta) >= 0.5)
return false;
91 <<
" * pT > " <<
m_ptcut <<
"\n"
92 <<
" * Everything else from muon tool - fill this in?\n";
TopConfig A simple configuration that is NOT a singleton.
virtual bool passTTVACuts(const xAOD::Muon &mu) const
The track-to-vertex association (TTVA) cuts.
virtual bool passSelectionLoose(const xAOD::Muon &mu) const override
The loose selection needed by some background estimates.
This class provides conversion from CSC RDO data to CSC Digits.
std::unique_ptr< top::IsolationBase > m_isolation
virtual bool passSelection(const xAOD::Muon &mu) const override
Implements the logic to select good muons.
ToolHandle< CP::IMuonSelectionTool > m_muonSelectionTool
void check(bool thingToCheck, const std::string &usefulFailureMessage)
Print an error message and terminate if thingToCheck is false.
ToolHandle< CP::IMuonSelectionTool > m_muonSelectionToolLoose
Muon(const double ptcut, IsolationBase *isolation)
Construct the tool to select good muons.
struct TBPatternUnitContext Muon
A common base for implementing isolation cuts.
#define ATH_MSG_WARNING(x)
virtual void print(std::ostream &os) const override
Because everybody likes to know what object definitions they ran with.