ATLAS Offline Software
Loading...
Searching...
No Matches
LundVariablesTool.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3*/
4#ifndef JETSUBSTRUCTUREMOMENTTOOLS_LUNDVARIABLESTOOL_H
5#define JETSUBSTRUCTUREMOMENTTOOLS_LUNDVARIABLESTOOL_H
6
7
9#include "AsgTools/AsgTool.h"
10
11#include "fastjet/PseudoJet.hh"
12
13#include <string>
14#include <vector>
15
16class LundVariablesTool : public asg::AsgTool, virtual public IJetDecorator {
18
19 public:
20 LundVariablesTool(const std::string& name);
21 StatusCode decorate(const xAOD::JetContainer& jets) const override;
22 struct Declustering {
23 fastjet::PseudoJet jj{}, j1{}, j2{};
24 double pt = -999, m = -999;
25 double pt1 = -999, pt2 = -999, delta_R = -999, z = -999, kt = -999, varphi = -999, eta = -999, E = -999;
26 bool exclude = false;
27 int idp1 = -1, idp2 = -1;
28 };
29
30 static std::vector<Declustering> getLundVar(std::vector<fastjet::PseudoJet> v_jcs, bool do_primaryLund = false);
31
32 private:
33 std::string m_prefix;
34
35 };
36
37#endif
#define ASG_TOOL_CLASS(CLASSNAME, INT1)
Interface for adding a decoration to a jet container.
StatusCode decorate(const xAOD::JetContainer &jets) const override
Decorate a jet collection without otherwise modifying it.
static std::vector< Declustering > getLundVar(std::vector< fastjet::PseudoJet > v_jcs, bool do_primaryLund=false)
LundVariablesTool(const std::string &name)
Base class for the dual-use tool implementation classes.
Definition AsgTool.h:47
JetContainer_v1 JetContainer
Definition of the current "jet container version".