#include <EGTransverseMassTool.h>
Definition at line 27 of file EGTransverseMassTool.h.
◆ addBranches()
| StatusCode DerivationFramework::EGTransverseMassTool::addBranches |
( |
const EventContext & |
ctx | ) |
const |
|
finaloverridevirtual |
◆ getTransverseMasses()
| StatusCode DerivationFramework::EGTransverseMassTool::getTransverseMasses |
( |
const EventContext & |
ctx, |
|
|
std::vector< float > & |
masses |
|
) |
| const |
|
private |
Definition at line 85 of file EGTransverseMassTool.cxx.
89 const std::vector<float>* pt1 =
nullptr;
92 pt1 = readHandle.ptr();
94 const std::vector<float>* pt2 =
nullptr;
97 pt2 = readHandle.ptr();
100 const std::vector<float>* phi1 =
nullptr;
103 phi1 = readHandle.ptr();
105 const std::vector<float>* phi2 =
nullptr;
108 phi2 = readHandle.ptr();
120 if (particles2->
empty()) {
123 return StatusCode::SUCCESS;
127 return StatusCode::SUCCESS;
131 float MET = pt2 ? (*pt2)[0] : particles2->
at(0)->met();
132 float MET_phi = phi2 ? (*phi2)[0] : particles2->
at(0)->phi();
136 return StatusCode::SUCCESS;
139 std::vector<int> entries1 = m_parser->evaluateAsVector();
140 unsigned int nEntries1 = entries1.size();
145 return StatusCode::SUCCESS;
148 if (particles1->
size() != nEntries1) {
150 return StatusCode::FAILURE;
152 if ((pt1 && pt1->size() != nEntries1) ||
153 (phi1 && phi1->size() != nEntries1)) {
155 return StatusCode::FAILURE;
161 if (entries1[
iter] != 1)
163 float apt1 = pt1 ? (*pt1)[
iter] : ((*particles1)[
iter])->p4().Pt();
164 float aphi1 = phi1 ? (*phi1)[
iter] : ((*particles1)[
iter])->p4().Phi();
166 TLorentzVector v1,
v2;
168 v2.SetPtEtaPhiM(
MET, 0., MET_phi, 0.);
169 float mass = (v1 +
v2).M();
172 return StatusCode::SUCCESS;
◆ initialize()
| StatusCode DerivationFramework::EGTransverseMassTool::initialize |
( |
| ) |
|
|
finaloverridevirtual |
Definition at line 36 of file EGTransverseMassTool.cxx.
40 "No SG name provided for the output of the transverse mass tool!");
41 return StatusCode::FAILURE;
66 return StatusCode::SUCCESS;
◆ m_container1Name
Initial value:{
this,
"ObjectContainerName",
"",
"SG key of first container"
}
Definition at line 48 of file EGTransverseMassTool.h.
◆ m_container2Name
Initial value:{
this,
"METContainerName",
"MET_LocHadTopo",
"SG key of second container"
}
Definition at line 54 of file EGTransverseMassTool.h.
◆ m_expression1
| Gaudi::Property<std::string> DerivationFramework::EGTransverseMassTool::m_expression1 {this, "ObjectRequirements", "true"} |
|
private |
◆ m_mass1Hypothesis
| Gaudi::Property<float> DerivationFramework::EGTransverseMassTool::m_mass1Hypothesis {this, "ObjectMassHypothesis", 0.f} |
|
private |
◆ m_METmin
| Gaudi::Property<float> DerivationFramework::EGTransverseMassTool::m_METmin {this, "METmin", -999.f} |
|
private |
◆ m_phi1BranchName
| SG::ReadHandleKey<std::vector<float> > DerivationFramework::EGTransverseMassTool::m_phi1BranchName |
|
private |
Initial value:{
this,
"ObjectPhiBranchName",
"",
"Phi1 if different than default"
}
Definition at line 68 of file EGTransverseMassTool.h.
◆ m_phi2BranchName
| SG::ReadHandleKey<std::vector<float> > DerivationFramework::EGTransverseMassTool::m_phi2BranchName |
|
private |
Initial value:{
this,
"METPhiBranchName",
"",
"Phi2 if different than default"
}
Definition at line 82 of file EGTransverseMassTool.h.
◆ m_pt1BranchName
| SG::ReadHandleKey<std::vector<float> > DerivationFramework::EGTransverseMassTool::m_pt1BranchName |
|
private |
Initial value:{
this,
"ObjectPtBranchName",
"",
"Pt1 if different than default"
}
Definition at line 61 of file EGTransverseMassTool.h.
◆ m_pt2BranchName
| SG::ReadHandleKey<std::vector<float> > DerivationFramework::EGTransverseMassTool::m_pt2BranchName |
|
private |
Initial value:{
this,
"METPtBranchName",
"",
"Pt2 if different than default"
}
Definition at line 75 of file EGTransverseMassTool.h.
◆ m_sgName
| SG::WriteHandleKey<std::vector<float> > DerivationFramework::EGTransverseMassTool::m_sgName |
|
private |
Initial value:{ this,
"StoreGateEntryName",
"",
"SG key of output object" }
Definition at line 43 of file EGTransverseMassTool.h.
The documentation for this class was generated from the following files: