7#ifndef XAODJET_VERSIONS_JET_V1_H
8#define XAODJET_VERSIONS_JET_V1_H
14#include "AthLinks/ElementLink.h"
79 virtual double pt()
const;
81 virtual double eta()
const;
83 virtual double phi()
const;
85 virtual double m()
const;
87 virtual double e()
const;
99 virtual Type::ObjectType
type()
const;
193 const std::vector< ElementLink< IParticleContainer > >&
constituentLinks()
const ;
331 template<
class PSEUDOJET>
std::vector< size_t > vec
#define DATAVECTOR_BASE_FIN(T, B)
Used to finish up a forward declaration.
Defines enum to access jet attribute and associated particles/objects.
This file defines helper classes to deal with jet constituents.
Class providing the definition of the 4-vector interface.
TLorentzVector FourMom_t
Definition of the 4-momentum type.
A vector of jet constituents at the scale used during jet finding.
void reset()
Function making sure that the object is ready for persistification.
FastJetLinkBase * m_fastJetLink
Pointer to the fastjet object this jet is build from.
virtual double phi() const
The azimuthal angle ( ) of the particle.
bool getAttribute(const std::string &name, T &value) const
Retrieve attribute by string.
void setAlgorithmType(JetAlgorithmType::ID a)
void setAttribute(const std::string &name, const T &v)
JetAlgorithmType::ID getAlgorithmType() const
void addConstituent(const ElementLink< IParticleContainer > &link, float weight=1.0)
Add a constituent directly in the ElementLink format.
size_t numConstituents() const
Number of constituents in this jets (this is valid even when reading a file where the constituents ha...
virtual FourMom_t p4() const
The full 4-momentum of the particle.
JetFourMom_t genvecP4() const
The full 4-momentum of the particle : internal jet type (same).
const std::vector< ElementLink< IParticleContainer > > & constituentLinks() const
Direct access to constituents. WARNING expert use only.
void setJetP4(const JetFourMom_t &p4)
JetConstitScale getConstituentsSignalState() const
The state at which constituents were when this jet was found.
bool getAssociatedObjects(AssoParticlesID type, std::vector< const T * > &vec) const
void setConstituentsSignalState(JetConstitScale t)
Set the state at which constituents were when this jet was found. This function is called by jet buil...
bool getAssociatedObject(const std::string &name, const T *&vec) const
get a single associated object returns false if the object is not existing
float py() const
The y-component of the jet's momentum.
JetConstituentVector getConstituents() const
Return a vector of consituents. The object behaves like vector<const IParticle*>. See JetConstituentV...
JetAttribute::AssoParticlesID AssoParticlesID
virtual double pt() const
The transverse momentum ( ) of the particle.
bool getAssociatedObjects(const std::string &name, std::vector< const T * > &vec) const
get associated objects as a vector<object> returns false if the object is not existing If internal li...
virtual double rapidity() const
The true rapidity (y) of the particle.
float px() const
The x-component of the jet's momentum.
float getSizeParameter() const
void setAssociatedObjects(const std::string &name, const std::vector< const T * > &vec)
set associated objects from a vector of arbitrary object.
IParticle::FourMom_t FourMom_t
Definition of the 4-momentum type.
const fastjet::PseudoJet * getPseudoJet() const
float pz() const
The z-component of the jet's momentum.
void setAttribute(AttributeID type, const T &value)
Set number by enum.
std::vector< const T * > getAssociatedObjects(const std::string &name) const
get associated objects as a vector<object> this compact form throws an exception if the object is not...
const IParticle * rawConstituent(size_t i) const
Direct access to constituents. WARNING expert use only.
void setPseudoJet(const PSEUDOJET *fj)
Set the fast jet pointer.
void setSizeParameter(float p)
const T * getAssociatedObject(AssoParticlesID type) const
JetAttribute::AttributeID AttributeID
T getAttribute(AttributeID type) const
virtual double m() const
The invariant mass of the particle.
bool getAttribute(AttributeID type, T &value) const
Retrieve attribute moment by enum.
void setInputType(JetInput::Type t)
JetInput::Type getInputType() const
bool getAssociatedObject(AssoParticlesID type, const T *&vec) const
std::vector< const T * > getAssociatedObjects(AssoParticlesID type) const
JetFourMom_t GenVecFourMom_t
define enum ot follow naming conventions
Jet_v1()
Default constructor.
T getAttribute(const std::string &name) const
short form : more convenient and compact. Throws an exception if the moment is missing.
Jet_v1 & operator=(const Jet_v1 &other)
void setAssociatedObject(const std::string &name, const T *vec)
set a single associated object T must inherit AuxElement (if T inherits IParticle,...
void setAssociatedObjects(AssoParticlesID type, const std::vector< const T * > &vec)
void setAssociatedObject(AssoParticlesID type, const T *vec)
virtual double eta() const
The pseudorapidity ( ) of the particle.
virtual double e() const
The total energy of the particle.
JetFourMom_t jetP4() const
The full 4-momentum of the particle : internal jet type.
virtual Type::ObjectType type() const
The type of the object as a simple enumeration.
const T * getAssociatedObject(const std::string &name) const
get a single associated object this compact form throws an exception if the object is not existing
void setNumConstituents(size_t n)
ID
//////////////////////////////////////// JetAlgorithmType::ID defines most common physics jet finding...
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
ROOT::Math::LorentzVector< ROOT::Math::PtEtaPhiM4D< double > > JetFourMom_t
Base 4 Momentum type for Jet.