ATLAS Offline Software
Loading...
Searching...
No Matches
JetSubStructureMomentToolsBase.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef jetsubstructuremomenttools_jetsubstructurebase_header
6#define jetsubstructuremomenttools_jetsubstructurebase_header
7
8#include "xAODJet/Jet.h"
10
12
13namespace fastjet {
14 class PseudoJet;
15}
16
18 public JetModifierBase {
19
20 public:
21
22 // Constructor and destructor
23 JetSubStructureMomentToolsBase(const std::string& name);
24
25 StatusCode initialize();
26
27 protected:
28
29 std::string m_inputContainer;
30 std::string m_prefix;
31
32 bool SetupDecoration(fastjet::PseudoJet& pseudojet,const xAOD::Jet& jet, bool requireJetStructure=false) const;
33 bool checkForConstituents(const xAOD::Jet &jet) const {
34 if(jet.numConstituents() == 0) {
35 ATH_MSG_WARNING("Attempting to use a substructure tool on a jet that has no constituent");
36 return false;
37 } else {
38 return true;
39 }
40 }
41 fastjet::PseudoJet buildPseudoJet(const xAOD::Jet & jet, bool requireJetStructure=false) const;
42 fastjet::PseudoJet buildPseudoJet(const std::vector<const xAOD::IParticle*>& iparticles) const;
43
44 // Print all configurable parameters
45 virtual void print() const;
46
47 };
48
49#endif
#define ATH_MSG_WARNING(x)
JetModifierBase(const std::string &myname)
Ctor.
fastjet::PseudoJet buildPseudoJet(const xAOD::Jet &jet, bool requireJetStructure=false) const
JetSubStructureMomentToolsBase(const std::string &name)
bool SetupDecoration(fastjet::PseudoJet &pseudojet, const xAOD::Jet &jet, bool requireJetStructure=false) const
virtual void print() const
Print the state of the tool.
bool checkForConstituents(const xAOD::Jet &jet) const
StatusCode initialize()
Dummy implementation of the initialisation function.
Jet_v1 Jet
Definition of the current "jet version".