17#ifndef XAOD_STANDALONE
29 bool doTST,
bool doJVTCut,
33 return StatusCode::FAILURE;
39 return StatusCode::FAILURE;
44 return StatusCode::FAILURE;
49 std::string softTerm =
"SoftClus";
51 softTerm =
"PVSoftTrk";
52 }
else if (doJVTCut) {
53 ATH_MSG_WARNING(
"Requested CST MET and a JVT cut. This is not a recommended configuration - please consider switching to TST." );
72 if (ipart == el) {
veto =
true;
break;}
90 if (ipart == ph) {
veto =
true;
break;}
108 if (ipart == tau) {
veto =
true;
break;}
126 if (ipart == mu) {
veto =
true;
break;}
136 ATH_MSG_WARNING(
"Invalid jet container specified for MET rebuilding!");
137 return StatusCode::SUCCESS;
157 return StatusCode::SUCCESS;
167 return StatusCode::FAILURE;
173 return StatusCode::FAILURE;
178 return StatusCode::FAILURE;
206 ATH_MSG_WARNING(
"Invalid jet container specified for MET rebuilding!");
207 return StatusCode::SUCCESS;
211 std::string softTerm =
"PVSoftTrk";
220 ATH_MSG_WARNING(
"GetMET: Failed to apply MET track (PVSoftTrk) systematics.");
226 ATH_MSG_WARNING(
"GetMET: Failed to apply MET track (RefJet) systematics.");
235 ATH_MSG_VERBOSE(
"Track MET: Missing Et (x,y): (" <<
met[
"Track"]->mpx() <<
"," <<
met[
"Track"]->mpy() <<
")");
237 return StatusCode::SUCCESS;
241 double &metSignificance,
242 bool doTST,
bool doJVTCut) {
244 std::string softTerm =
"SoftClus";
246 softTerm =
"PVSoftTrk";
247 }
else if (doJVTCut) {
248 ATH_MSG_WARNING(
"Requested CST MET and a JVT cut. This is not a recommended configuration - please consider switching to TST." );
257 return StatusCode::SUCCESS;
#define ATH_CHECK
Evaluate an expression and check for errors.
#define ATH_MSG_VERBOSE(x)
#define ATH_MSG_WARNING(x)
ServiceHandle< StoreGateSvc > & evtStore()
@ Ok
The correction was done successfully.
DataVector adapter that acts like it holds const pointers.
value_type push_back(value_type pElem)
Add an element to the end of the collection.
const DV * asDataVector() const
Return a pointer to this object, as a const DataVector.
std::string m_inputMETCore
bool isData() const override final
asg::AnaToolHandle< IMETSignificance > m_metSignif
asg::AnaToolHandle< IMETMaker > m_metMaker
std::string m_inputMETMap
StatusCode GetTrackMET(xAOD::MissingETContainer &met, const xAOD::JetContainer *jet, const xAOD::ElectronContainer *elec=nullptr, const xAOD::MuonContainer *muon=nullptr) override final
asg::AnaToolHandle< IMETSystematicsTool > m_metSystTool
StatusCode GetMET(xAOD::MissingETContainer &met, const xAOD::JetContainer *jet, const xAOD::ElectronContainer *elec=nullptr, const xAOD::MuonContainer *muon=nullptr, const xAOD::PhotonContainer *gamma=nullptr, const xAOD::TauJetContainer *taujet=nullptr, bool doTST=true, bool doJVTCut=true, const xAOD::IParticleContainer *invis=nullptr) override final
StatusCode GetMETSig(xAOD::MissingETContainer &met, double &metSignificance, bool doTST=true, bool doJVTCut=true) override final
float averageInteractionsPerCrossing() const
Average interactions per crossing for all BCIDs - for out-of-time pile-up.
Class providing the definition of the 4-vector interface.
void resetObjSelectionFlags()
std::vector< std::string > veto
these patterns are anded
@ VIEW_ELEMENTS
this data object is a view, it does not own its elmts
static const SG::ConstAccessor< char > acc_baseline("baseline")
StatusCode buildMETSum(const std::string &totalName, xAOD::MissingETContainer *metCont)
@ Photon
The object is a photon.
@ Muon
The object is a muon.
@ Electron
The object is an electron.
@ Tau
The object is a tau (jet)
PhotonContainer_v1 PhotonContainer
Definition of the current "photon container version".
ElectronContainer_v1 ElectronContainer
Definition of the current "electron container version".
EventInfo_v1 EventInfo
Definition of the latest event info version.
TauJet_v3 TauJet
Definition of the current "tau version".
MissingETContainer_v1 MissingETContainer
Muon_v1 Muon
Reference the current persistent version:
Photon_v1 Photon
Definition of the current "egamma version".
JetContainer_v1 JetContainer
Definition of the current "jet container version".
TauJetContainer_v3 TauJetContainer
Definition of the current "taujet container version".
MuonContainer_v1 MuonContainer
Definition of the current "Muon container version".
MissingETAssociationMap_v1 MissingETAssociationMap
Version control by type defintion.
Electron_v1 Electron
Definition of the current "egamma version".
DataVector< IParticle > IParticleContainer
Simple convenience declaration of IParticleContainer.