![]() |
ATLAS Offline Software
|
Class describing a jet. More...
#include <Jet_v1.h>
Public Types | |
| typedef JetAttribute::AttributeID | AttributeID |
| typedef JetAttribute::AssoParticlesID | AssoParticlesID |
Public Member Functions | |
| Jet_v1 () | |
| Default constructor. | |
| Jet_v1 (const Jet_v1 &) | |
| Constructor with the 4-momentum properties of the jet. | |
| ~Jet_v1 () | |
Access signal state | |
access the various signal states of the jets For now provide the minimum by returning only FourMomentum. Access by the enum to the historical states | |
| JetFourMom_t | jetP4 (JetScale s) const |
| Access by the enum to the historical states. | |
| JetFourMom_t | genvecP4 (JetScale s) const |
| JetFourMom_t | jetP4 (const std::string &statename) const |
| Generic access to states. | |
| JetFourMom_t | genvecP4 (const std::string &statename) const |
| void | setJetP4 (const JetFourMom_t &p4) |
| void | setJetP4 (JetScale s, const JetFourMom_t &p4) |
| Access by the enum to the historical states. | |
| void | setJetP4 (const std::string &sname, const JetFourMom_t &p4) |
Access to auxiliary data | |
Functions to retrieve attributes added to jet objects. They concern any attributes (float, vector<float>, 4-momentum,...) except IParticles (for the later see associatedParticles() function below). Access is done by an enum identifier or by string. They internally translate calls using double or vector<double> (ex: getAttribute<double>() ) in calls using float.
| |
| template<class T> | |
| bool | getAttribute (AttributeID type, T &value) const |
| Retrieve attribute moment by enum. | |
| template<class T> | |
| bool | getAttribute (const std::string &name, T &value) const |
| Retrieve attribute by string. | |
| template<class T> | |
| T | getAttribute (const std::string &name) const |
| short form : more convenient and compact. Throws an exception if the moment is missing. | |
| template<class T> | |
| T | getAttribute (AttributeID type) const |
| template<class T> | |
| void | setAttribute (const std::string &name, const T &v) |
| template<class T> | |
| void | setAttribute (AttributeID type, const T &value) |
| Set number by enum. | |
Access object or list of associated objects | |
Special functions to store list of objects are provided. The reason is we want to internally store every object as link (ElementLink). The setter and getter functions thus perform the conversion automatically from the internal format from/to const Object* or vector<const Object*> | |
| template<typename T> | |
| 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 existing If internal links are invalid (ex: because of thinning) they replaced by a null pointer | |
| template<typename T> | |
| std::vector< const T * > | getAssociatedObjects (AssoParticlesID type) const |
| template<typename T> | |
| 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 links are invalid (ex: because of thinning) they replaced by a null pointer AND the function returns false | |
| template<typename T> | |
| bool | getAssociatedObjects (AssoParticlesID type, std::vector< const T * > &vec) const |
| template<typename T> | |
| void | setAssociatedObjects (const std::string &name, const std::vector< const T * > &vec) |
| set associated objects from a vector of arbitrary object. | |
| template<typename T> | |
| void | setAssociatedObjects (AssoParticlesID type, const std::vector< const T * > &vec) |
| template<typename T> | |
| 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 | |
| template<typename T> | |
| const T * | getAssociatedObject (AssoParticlesID type) const |
| template<typename T> | |
| bool | getAssociatedObject (const std::string &name, const T *&vec) const |
| get a single associated object returns false if the object is not existing | |
| template<typename T> | |
| bool | getAssociatedObject (AssoParticlesID type, const T *&vec) const |
| template<typename T> | |
| void | setAssociatedObject (const std::string &name, const T *vec) |
| set a single associated object T must inherit AuxElement (if T inherits IParticle, objects are stored as IParticle but can still be retrieved as their exact type) returns false if the association failed | |
| template<typename T> | |
| void | setAssociatedObject (AssoParticlesID type, const T *vec) |
Metadata like information | |
| float | getSizeParameter () const |
| JetAlgorithmType::ID | getAlgorithmType () const |
| JetInput::Type | getInputType () const |
| void | setSizeParameter (float p) |
| void | setAlgorithmType (JetAlgorithmType::ID a) |
| void | setInputType (JetInput::Type t) |
Access to internal fastjet object. Reserved to expert usage. | |
Access to the internal fastjet object. CAN RETURN NULL, see the description of m_pseudoJet | |
| const fastjet::PseudoJet * | getPseudoJet () const |
| template<class PSEUDOJET> | |
| void | setPseudoJet (const PSEUDOJET *fj) |
| Set the fast jet pointer. | |
| void | reset () |
| Function making sure that the object is ready for persistification. | |
Functions for getting and setting user properties | |
| template<class T> | |
| XAOD_AUXDATA_DEPRECATED T & | auxdata (const std::string &name, const std::string &clsname="") |
| Fetch an aux data variable, as a non-const reference. | |
| template<class T> | |
| XAOD_AUXDATA_DEPRECATED const T & | auxdata (const std::string &name, const std::string &clsname="") const |
| Fetch an aux data variable, as a const reference. | |
| template<class T> | |
| XAOD_AUXDATA_DEPRECATED bool | isAvailable (const std::string &name, const std::string &clsname="") const |
| Check if a user property is available for reading or not. | |
| template<class T> | |
| XAOD_AUXDATA_DEPRECATED bool | isAvailableWritable (const std::string &name, const std::string &clsname="") const |
| Check if a user property is available for writing or not. | |
Protected Attributes | |
| FastJetLinkBase * | m_fastJetLink |
| Pointer to the fastjet object this jet is build from. | |
xAOD::IParticle functions | |
| typedef IParticle::FourMom_t | FourMom_t |
| Definition of the 4-momentum type. | |
| Jet_v1 & | operator= (const Jet_v1 &other) |
| virtual double | pt () const |
| The transverse momentum ( \(p_T\)) of the particle. | |
| virtual double | eta () const |
| The pseudorapidity ( \(\eta\)) of the particle. | |
| virtual double | phi () const |
| The azimuthal angle ( \(\phi\)) of the particle. | |
| virtual double | m () const |
| The invariant mass of the particle. | |
| virtual double | e () const |
| The total energy of the particle. | |
| virtual double | rapidity () const |
| The true rapidity (y) of the particle. | |
| virtual FourMom_t | p4 () const |
| The full 4-momentum of the particle. | |
| virtual Type::ObjectType | type () const |
| The type of the object as a simple enumeration. | |
Additionnal kinematics for jets. | |
| typedef JetFourMom_t | GenVecFourMom_t |
| define enum ot follow naming conventions | |
| JetFourMom_t | jetP4 () const |
| The full 4-momentum of the particle : internal jet type. | |
| JetFourMom_t | genvecP4 () const |
| The full 4-momentum of the particle : internal jet type (same). | |
| float | px () const |
| The x-component of the jet's momentum. | |
| float | py () const |
| The y-component of the jet's momentum. | |
| float | pz () const |
| The z-component of the jet's momentum. | |
Jet constituents access | |
Access to the jet constituents. Constiuents are stored internally as IParticle. getConstituents() returns a special object : JetConstituentVector. The default 4-vectors of the constituents (ex: clusters) possibly differ from the 4-vector used in the jet finding procedure (ex: when find jets with non calibrated "EM scale" clusters). The JetConstituentVector behaves almost exactly as a simple vector<const IParticle*> AND guarantees that the 4-vectors it contains correpond to the 4-vector used at jet finding time. See the JetConstituentVector.h header for more details A direct access method rawConstituent() is provided for experts usage only. jet finding. | |
| void | addConstituent (const ElementLink< IParticleContainer > &link, float weight=1.0) |
| Add a constituent directly in the ElementLink format. | |
| void | addConstituent (const IParticle *p, float weight=1.0) |
| Add an IParticle as as constituent. | |
| JetConstitScale | getConstituentsSignalState () const |
| The state at which constituents were when this jet was found. | |
| void | setConstituentsSignalState (JetConstitScale t) |
| Set the state at which constituents were when this jet was found. This function is called by jet builders. | |
| JetConstituentVector | getConstituents () const |
| Return a vector of consituents. The object behaves like vector<const IParticle*>. See JetConstituentVector.h header for more details. | |
| size_t | numConstituents () const |
| Number of constituents in this jets (this is valid even when reading a file where the constituents have been removed). | |
| const IParticle * | rawConstituent (size_t i) const |
| Direct access to constituents. WARNING expert use only. | |
| const std::vector< ElementLink< IParticleContainer > > & | constituentLinks () const |
| Direct access to constituents. WARNING expert use only. | |
| void | setNumConstituents (size_t n) |
Class describing a jet.
Jet is a generic class used to represent any "types" of hadronic jet within the Atlas Software. The various "types" of jets include for example jets build from calorimeter cluster or from reconstructed tracks or from truth particle, etc... The Jet class provides 4 main features :
| xAOD::Jet_v1::Jet_v1 | ( | ) |
Default constructor.
Definition at line 14 of file Jet_v1.cxx.
| xAOD::Jet_v1::Jet_v1 | ( | const Jet_v1 & | o | ) |
Constructor with the 4-momentum properties of the jet.
Copy constructor
Definition at line 23 of file Jet_v1.cxx.
| xAOD::Jet_v1::~Jet_v1 | ( | ) |
Definition at line 39 of file Jet_v1.cxx.
| void xAOD::Jet_v1::addConstituent | ( | const ElementLink< IParticleContainer > & | link, |
| float | weight = 1.0 ) |
Add a constituent directly in the ElementLink format.
Definition at line 113 of file Jet_v1.cxx.
Add an IParticle as as constituent.
Warning ! A link to the original container of this particle p will be used internally. Thus one can not persistify correctly constituents from a container in VIEW mode.
Definition at line 121 of file Jet_v1.cxx.
|
inlineinherited |
Fetch an aux data variable, as a non-const reference.
This function provides an easy way for users to decorate objects with auxiliary data.
Take note that this function is slow. Should not be used inside time-critical code.
Definition at line 98 of file Event/xAOD/xAODBase/xAODBase/IParticle.h.
|
inlineinherited |
Fetch an aux data variable, as a const reference.
This function provides an easy way for users to retrieve auxiliary decorations from an object.
Take note that this function is slow. Should not be used inside time-critical code.
Definition at line 118 of file Event/xAOD/xAODBase/xAODBase/IParticle.h.
| const std::vector< ElementLink< IParticleContainer > > & xAOD::Jet_v1::constituentLinks | ( | ) | const |
Direct access to constituents. WARNING expert use only.
Definition at line 173 of file Jet_v1.cxx.
|
virtual |
The total energy of the particle.
Implements xAOD::IParticle.
Definition at line 63 of file Jet_v1.cxx.
|
virtual |
The pseudorapidity ( \(\eta\)) of the particle.
Implements xAOD::IParticle.
Definition at line 49 of file Jet_v1.cxx.
| JetFourMom_t xAOD::Jet_v1::genvecP4 | ( | ) | const |
The full 4-momentum of the particle : internal jet type (same).
Definition at line 81 of file Jet_v1.cxx.
| JetFourMom_t xAOD::Jet_v1::genvecP4 | ( | const std::string & | statename | ) | const |
Definition at line 232 of file Jet_v1.cxx.
| JetFourMom_t xAOD::Jet_v1::genvecP4 | ( | JetScale | s | ) | const |
Definition at line 204 of file Jet_v1.cxx.
| JetAlgorithmType::ID xAOD::Jet_v1::getAlgorithmType | ( | ) | const |
Definition at line 260 of file Jet_v1.cxx.
| const T * xAOD::Jet_v1::getAssociatedObject | ( | AssoParticlesID | type | ) | const |
| bool xAOD::Jet_v1::getAssociatedObject | ( | AssoParticlesID | type, |
| const T *& | vec ) const |
get a single associated object this compact form throws an exception if the object is not existing
| bool xAOD::Jet_v1::getAssociatedObject | ( | const std::string & | name, |
| const T *& | vec ) const |
get a single associated object returns false if the object is not existing
| std::vector< const T * > xAOD::Jet_v1::getAssociatedObjects | ( | AssoParticlesID | type | ) | const |
| bool xAOD::Jet_v1::getAssociatedObjects | ( | AssoParticlesID | type, |
| std::vector< const T * > & | vec ) const |
| std::vector< const T * > xAOD::Jet_v1::getAssociatedObjects | ( | const std::string & | name | ) | const |
get associated objects as a vector<object> this compact form throws an exception if the object is not existing If internal links are invalid (ex: because of thinning) they replaced by a null pointer
| bool xAOD::Jet_v1::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 links are invalid (ex: because of thinning) they replaced by a null pointer AND the function returns false
| T xAOD::Jet_v1::getAttribute | ( | AttributeID | type | ) | const |
| bool xAOD::Jet_v1::getAttribute | ( | AttributeID | type, |
| T & | value ) const |
Retrieve attribute moment by enum.
| T xAOD::Jet_v1::getAttribute | ( | const std::string & | name | ) | const |
short form : more convenient and compact. Throws an exception if the moment is missing.
Retrieve attribute by string.
| JetConstituentVector xAOD::Jet_v1::getConstituents | ( | ) | const |
Return a vector of consituents. The object behaves like vector<const IParticle*>. See JetConstituentVector.h header for more details.
Definition at line 149 of file Jet_v1.cxx.
| JetConstitScale xAOD::Jet_v1::getConstituentsSignalState | ( | ) | const |
The state at which constituents were when this jet was found.
Definition at line 138 of file Jet_v1.cxx.
| JetInput::Type xAOD::Jet_v1::getInputType | ( | ) | const |
Definition at line 264 of file Jet_v1.cxx.
| const fastjet::PseudoJet * xAOD::Jet_v1::getPseudoJet | ( | ) | const |
Definition at line 247 of file Jet_v1.cxx.
| float xAOD::Jet_v1::getSizeParameter | ( | ) | const |
Definition at line 256 of file Jet_v1.cxx.
|
inlineinherited |
Check if a user property is available for reading or not.
This function should be used to check if a user property which may or may not exist, is set on the object.
Definition at line 135 of file Event/xAOD/xAODBase/xAODBase/IParticle.h.
|
inlineinherited |
Check if a user property is available for writing or not.
This function can be used to check whether it will be possible to set a user property on the object.
Definition at line 152 of file Event/xAOD/xAODBase/xAODBase/IParticle.h.
| JetFourMom_t xAOD::Jet_v1::jetP4 | ( | ) | const |
The full 4-momentum of the particle : internal jet type.
Definition at line 76 of file Jet_v1.cxx.
| JetFourMom_t xAOD::Jet_v1::jetP4 | ( | const std::string & | statename | ) | const |
Generic access to states.
Definition at line 227 of file Jet_v1.cxx.
| JetFourMom_t xAOD::Jet_v1::jetP4 | ( | JetScale | s | ) | const |
Access by the enum to the historical states.
Definition at line 192 of file Jet_v1.cxx.
|
virtual |
The invariant mass of the particle.
Implements xAOD::IParticle.
Definition at line 59 of file Jet_v1.cxx.
| size_t xAOD::Jet_v1::numConstituents | ( | ) | const |
Number of constituents in this jets (this is valid even when reading a file where the constituents have been removed).
Definition at line 155 of file Jet_v1.cxx.
Definition at line 30 of file Jet_v1.cxx.
|
virtual |
The full 4-momentum of the particle.
Implements xAOD::IParticle.
Definition at line 71 of file Jet_v1.cxx.
|
virtual |
The azimuthal angle ( \(\phi\)) of the particle.
Implements xAOD::IParticle.
Definition at line 54 of file Jet_v1.cxx.
|
virtual |
The transverse momentum ( \(p_T\)) of the particle.
Implements xAOD::IParticle.
Definition at line 44 of file Jet_v1.cxx.
| float xAOD::Jet_v1::px | ( | ) | const |
The x-component of the jet's momentum.
Assuming that when one of px py pz is called the other will be too. So provoke the build of FourMom_t.
Definition at line 90 of file Jet_v1.cxx.
| float xAOD::Jet_v1::py | ( | ) | const |
The y-component of the jet's momentum.
Definition at line 94 of file Jet_v1.cxx.
| float xAOD::Jet_v1::pz | ( | ) | const |
The z-component of the jet's momentum.
Definition at line 99 of file Jet_v1.cxx.
|
virtual |
The true rapidity (y) of the particle.
Implements xAOD::IParticle.
Definition at line 67 of file Jet_v1.cxx.
Direct access to constituents. WARNING expert use only.
Definition at line 169 of file Jet_v1.cxx.
| void xAOD::Jet_v1::reset | ( | ) |
Function making sure that the object is ready for persistification.
workaround some I/O limitations
Definition at line 242 of file Jet_v1.cxx.
| void xAOD::Jet_v1::setAlgorithmType | ( | JetAlgorithmType::ID | a | ) |
Definition at line 269 of file Jet_v1.cxx.
| void xAOD::Jet_v1::setAssociatedObject | ( | AssoParticlesID | type, |
| const T * | vec ) |
| void xAOD::Jet_v1::setAssociatedObjects | ( | AssoParticlesID | type, |
| const std::vector< const T * > & | vec ) |
| void xAOD::Jet_v1::setAttribute | ( | AttributeID | type, |
| const T & | value ) |
Set number by enum.
| void xAOD::Jet_v1::setConstituentsSignalState | ( | JetConstitScale | t | ) |
Set the state at which constituents were when this jet was found. This function is called by jet builders.
Definition at line 143 of file Jet_v1.cxx.
| void xAOD::Jet_v1::setInputType | ( | JetInput::Type | t | ) |
Definition at line 270 of file Jet_v1.cxx.
| void xAOD::Jet_v1::setJetP4 | ( | const JetFourMom_t & | p4 | ) |
Definition at line 182 of file Jet_v1.cxx.
| void xAOD::Jet_v1::setJetP4 | ( | const std::string & | sname, |
| const JetFourMom_t & | p4 ) |
Definition at line 236 of file Jet_v1.cxx.
| void xAOD::Jet_v1::setJetP4 | ( | JetScale | s, |
| const JetFourMom_t & | p4 ) |
Access by the enum to the historical states.
Definition at line 209 of file Jet_v1.cxx.
|
protected |
| void xAOD::Jet_v1::setPseudoJet | ( | const PSEUDOJET * | fj | ) |
Set the fast jet pointer.
Expert usage only. This function is templated in order to avoid a dependency of xAODJet on fastjet.
| void xAOD::Jet_v1::setSizeParameter | ( | float | p | ) |
Definition at line 268 of file Jet_v1.cxx.
|
virtual |
The type of the object as a simple enumeration.
Implements xAOD::IParticle.
Definition at line 85 of file Jet_v1.cxx.
|
protected |