ATLAS Offline Software
|
A safe iterator on jet constituents. More...
#include <JetConstituentIterator.h>
Public Types | |
typedef Jet::const_iterator | base_it |
enum | Kind { P4EETAPHIM, P4IPTCOTTHPHIM, P4PTETAPHIM, P4PXPYPZE, UNKNOWN } |
Public Member Functions | |
JetConstituentIterator (base_it b) | |
JetConstituentIterator (base_it b, P4SignalState::State s) | |
JetConstituentIterator & | operator++ () |
JetConstituentIterator & | operator-- () |
void | inc () |
void | dec () |
const JetConstituentIterator * | operator* () const |
bool | operator== (const JetConstituentIterator &other) const |
bool | operator!= (const JetConstituentIterator &other) const |
const Jet::constituent_t * | get_real_constit () |
access to the real constituent pointer More... | |
P4SignalState::State | getSignalState () |
get current signal state of the iterator More... | |
void | setSignalState (P4SignalState::State s) |
set current signal state of the iterator More... | |
virtual double | px () const |
get px data member More... | |
virtual double | py () const |
get py data member More... | |
virtual double | pz () const |
get pz data member More... | |
virtual double | e () const |
get energy data member More... | |
virtual void | setPx (double thePx) |
set Px data member More... | |
virtual void | setPy (double thePy) |
set Py data member More... | |
virtual void | setPz (double thePz) |
set Pz data member More... | |
virtual void | setE (double theE) |
set energy data member More... | |
virtual void | set4Mom (const I4Momentum &theI4Mom) |
set all 4-mom from another I4Momentum reference More... | |
virtual void | set4Mom (const I4Momentum *const theI4Mom) |
set all 4-mom from another I4Momentum pointer More... | |
virtual void | set4Mom (const CLHEP::HepLorentzVector &theHlv) |
set all 4-mom from CLHEP HepLorentzVector More... | |
virtual const I4MomentumError * | errors () const |
Access to errors, if available; returns 0 if no errors. More... | |
double | pxi () const |
Experimental : inlined function to get px without going through virtual inheritance. More... | |
double | pyi () const |
Experimental : inlined function to get py without going through virtual inheritance. More... | |
double | pzi () const |
Experimental : inlined function to get pz without going through virtual inheritance. More... | |
double | ei () const |
Experimental : inlined function to get e without going through virtual inheritance. More... | |
double | pti () const |
Experimental : inlined function to get pt without going through virtual inheritance. More... | |
virtual double | m () const |
mass More... | |
virtual double | m2 () const |
mass squared More... | |
virtual double | eta () const |
pseudo rapidity More... | |
virtual double | phi () const |
phi in [-pi,pi[ More... | |
virtual double | p () const |
momentum magnitude More... | |
virtual double | p2 () const |
square of momentum magnitude More... | |
virtual double | pt () const |
transverse momentum More... | |
virtual double | et () const |
transverse energy defined to be e*sin(theta) More... | |
virtual double | iPt () const |
inverse of transverse momentum More... | |
virtual double | rapidity () const |
rapidity More... | |
virtual double | cosPhi () const |
cosinus phi More... | |
virtual double | sinPhi () const |
sinus phi More... | |
virtual double | tanTh () const |
tan theta More... | |
virtual double | cotTh () const |
cottan theta More... | |
virtual double | cosTh () const |
cosinus theta More... | |
virtual double | sinTh () const |
sinus theta More... | |
virtual CLHEP::HepLorentzVector | hlv () const |
CLHEP HepLorentzVector. More... | |
virtual I4Momentum::Kind | kind () const |
tells what kind of P4XYZT this is More... | |
virtual std::ostream & | dump (std::ostream &out) const |
Print I4Momentum content. More... | |
Static Public Member Functions | |
static JetConstituentIterator | first (const Jet *jet) |
get a default iterator More... | |
static JetConstituentIterator | first (const Jet *jet, P4SignalState::State s) |
get an iterator on constituent with Sig State More... | |
static JetConstituentIterator | last (const Jet *jet) |
get the end iterator More... | |
static P4SignalState::State | getSignalState (const Jet::constituent_t *constit) |
Helper to retrieve a signal state from any constituent type. More... | |
Protected Member Functions | |
void | update_hlv () |
Protected Attributes | |
base_it | m_actual |
base_it | m_end |
Jet::hlv_t | m_hlv |
bool | m_use_signal_state |
P4SignalState::State | m_defState |
P4SignalState::State | m_curState |
double | m_px |
double | m_py |
double | m_pz |
double | m_e |
A safe iterator on jet constituents.
Modifying the signal states of jet constituents may be dangerous as it can accidentally leave the state undefined for subsequent algorithm. This implementation is safe. This iterator is a simple copy of the iterator 4mom with the desired state. It should be enough for most use case. If access to the real constituent is necessary, this is still possible throug JetConstituentIterator::get_real_constit()
Definition at line 31 of file JetConstituentIterator.h.
Definition at line 34 of file JetConstituentIterator.h.
|
inherited |
Enumerator | |
---|---|
P4EETAPHIM | |
P4IPTCOTTHPHIM | |
P4PTETAPHIM | |
P4PXPYPZE | |
UNKNOWN |
Definition at line 33 of file I4Momentum.h.
|
inline |
Definition at line 36 of file JetConstituentIterator.h.
|
inline |
Definition at line 42 of file JetConstituentIterator.h.
|
virtualinherited |
cosinus phi
Implements I4Momentum.
Reimplemented in Nav4MomWrapper< Navigable_t, P4Momentum_t >.
Definition at line 77 of file P4PxPyPzEBase.cxx.
|
virtualinherited |
cosinus theta
Implements I4Momentum.
Reimplemented in Nav4MomWrapper< Navigable_t, P4Momentum_t >.
Definition at line 98 of file P4PxPyPzEBase.cxx.
|
virtualinherited |
cottan theta
Implements I4Momentum.
Reimplemented in Nav4MomWrapper< Navigable_t, P4Momentum_t >.
Definition at line 92 of file P4PxPyPzEBase.cxx.
|
inline |
Definition at line 60 of file JetConstituentIterator.h.
|
virtualinherited |
Print I4Momentum
content.
Implements I4Momentum.
Reimplemented in Nav4MomWrapper< Navigable_t, P4Momentum_t >, and Rec::TrackParticle.
Definition at line 152 of file P4PxPyPzEBase.cxx.
|
inlinevirtualinherited |
get energy data member
Implements I4Momentum.
Reimplemented in Nav4MomWrapper< Navigable_t, P4Momentum_t >.
Definition at line 132 of file P4PxPyPzE.h.
|
inlineinherited |
Experimental : inlined function to get e without going through virtual inheritance.
Definition at line 179 of file P4PxPyPzE.h.
|
virtualinherited |
Access to errors, if available; returns 0 if no errors.
Reimplemented from P4PxPyPzEBase.
Reimplemented in Nav4MomWrapper< Navigable_t, P4Momentum_t >.
Definition at line 7 of file P4PxPyPzE.cxx.
|
virtualinherited |
transverse energy defined to be e*sin(theta)
Implements I4Momentum.
Reimplemented in Nav4MomWrapper< Navigable_t, P4Momentum_t >.
Definition at line 125 of file P4PxPyPzEBase.cxx.
|
virtualinherited |
pseudo rapidity
Implements I4Momentum.
Reimplemented in Nav4MomWrapper< Navigable_t, P4Momentum_t >.
Definition at line 32 of file P4PxPyPzEBase.cxx.
|
inlinestatic |
get a default iterator
Definition at line 81 of file JetConstituentIterator.h.
|
inlinestatic |
get an iterator on constituent with Sig State
s |
Definition at line 92 of file JetConstituentIterator.h.
|
inline |
P4SignalState::State JetConstituentIterator::getSignalState | ( | ) |
get current signal state of the iterator
Definition at line 43 of file JetConstituentIterator.cxx.
|
static |
Helper to retrieve a signal state from any constituent type.
Definition at line 8 of file JetConstituentIterator.cxx.
|
virtualinherited |
CLHEP HepLorentzVector.
Implements I4Momentum.
Reimplemented in Nav4MomWrapper< Navigable_t, P4Momentum_t >.
Definition at line 147 of file P4PxPyPzEBase.cxx.
|
inline |
Definition at line 59 of file JetConstituentIterator.h.
|
virtualinherited |
inverse of transverse momentum
Implements I4Momentum.
Reimplemented in Nav4MomWrapper< Navigable_t, P4Momentum_t >.
Definition at line 131 of file P4PxPyPzEBase.cxx.
|
inlinevirtualinherited |
tells what kind of P4XYZT this is
Implements I4Momentum.
Reimplemented in Nav4MomWrapper< Navigable_t, P4Momentum_t >.
Definition at line 59 of file P4PxPyPzEBase.h.
|
inlinestatic |
get the end iterator
Definition at line 96 of file JetConstituentIterator.h.
|
virtualinherited |
mass
Implements I4Momentum.
Reimplemented in Nav4MomWrapper< Navigable_t, P4Momentum_t >.
Definition at line 25 of file P4PxPyPzEBase.cxx.
|
virtualinherited |
mass squared
Implements I4Momentum.
Reimplemented in Nav4MomWrapper< Navigable_t, P4Momentum_t >.
Definition at line 14 of file P4PxPyPzEBase.cxx.
|
inline |
Definition at line 66 of file JetConstituentIterator.h.
|
inline |
Definition at line 62 of file JetConstituentIterator.h.
|
inline |
Definition at line 46 of file JetConstituentIterator.h.
|
inline |
Definition at line 52 of file JetConstituentIterator.h.
|
inline |
Definition at line 64 of file JetConstituentIterator.h.
|
virtualinherited |
momentum magnitude
Implements I4Momentum.
Reimplemented in Nav4MomWrapper< Navigable_t, P4Momentum_t >.
Definition at line 68 of file P4PxPyPzEBase.cxx.
|
virtualinherited |
square of momentum magnitude
Implements I4Momentum.
Reimplemented in Nav4MomWrapper< Navigable_t, P4Momentum_t >.
Definition at line 59 of file P4PxPyPzEBase.cxx.
|
virtualinherited |
phi in [-pi,pi[
Implements I4Momentum.
Reimplemented in Nav4MomWrapper< Navigable_t, P4Momentum_t >.
Definition at line 50 of file P4PxPyPzEBase.cxx.
|
virtualinherited |
transverse momentum
Implements I4Momentum.
Reimplemented in Nav4MomWrapper< Navigable_t, P4Momentum_t >.
Definition at line 114 of file P4PxPyPzEBase.cxx.
|
inlineinherited |
Experimental : inlined function to get pt without going through virtual inheritance.
Definition at line 182 of file P4PxPyPzE.h.
|
inlinevirtualinherited |
get px data member
Implements I4Momentum.
Reimplemented in Nav4MomWrapper< Navigable_t, P4Momentum_t >.
Definition at line 122 of file P4PxPyPzE.h.
|
inlineinherited |
Experimental : inlined function to get px without going through virtual inheritance.
Definition at line 170 of file P4PxPyPzE.h.
|
inlinevirtualinherited |
get py data member
Implements I4Momentum.
Reimplemented in Nav4MomWrapper< Navigable_t, P4Momentum_t >.
Definition at line 126 of file P4PxPyPzE.h.
|
inlineinherited |
Experimental : inlined function to get py without going through virtual inheritance.
Definition at line 173 of file P4PxPyPzE.h.
|
inlinevirtualinherited |
get pz data member
Implements I4Momentum.
Reimplemented in Nav4MomWrapper< Navigable_t, P4Momentum_t >.
Definition at line 129 of file P4PxPyPzE.h.
|
inlineinherited |
Experimental : inlined function to get pz without going through virtual inheritance.
Definition at line 176 of file P4PxPyPzE.h.
|
virtualinherited |
rapidity
Implements I4Momentum.
Reimplemented in Nav4MomWrapper< Navigable_t, P4Momentum_t >.
Definition at line 136 of file P4PxPyPzEBase.cxx.
|
inlinevirtualinherited |
set all 4-mom from CLHEP HepLorentzVector
Reimplemented from P4PxPyPzEBase.
Reimplemented in Nav4MomWrapper< Navigable_t, P4Momentum_t >, and Rec::TrackParticle.
Definition at line 161 of file P4PxPyPzE.h.
|
inlinevirtualinherited |
set all 4-mom from another I4Momentum reference
Reimplemented from P4PxPyPzEBase.
Reimplemented in Nav4MomWrapper< Navigable_t, P4Momentum_t >, and Rec::TrackParticle.
Definition at line 147 of file P4PxPyPzE.h.
|
inlinevirtualinherited |
set all 4-mom from another I4Momentum pointer
Reimplemented from P4PxPyPzEBase.
Reimplemented in Nav4MomWrapper< Navigable_t, P4Momentum_t >, and Rec::TrackParticle.
Definition at line 155 of file P4PxPyPzE.h.
|
inlinevirtualinherited |
|
inlinevirtualinherited |
|
inlinevirtualinherited |
|
inlinevirtualinherited |
void JetConstituentIterator::setSignalState | ( | P4SignalState::State | s | ) |
|
virtualinherited |
sinus phi
Implements I4Momentum.
Reimplemented in Nav4MomWrapper< Navigable_t, P4Momentum_t >.
Definition at line 82 of file P4PxPyPzEBase.cxx.
|
virtualinherited |
sinus theta
Implements I4Momentum.
Reimplemented in Nav4MomWrapper< Navigable_t, P4Momentum_t >.
Definition at line 106 of file P4PxPyPzEBase.cxx.
|
virtualinherited |
tan theta
Implements I4Momentum.
Reimplemented in Nav4MomWrapper< Navigable_t, P4Momentum_t >.
Definition at line 87 of file P4PxPyPzEBase.cxx.
|
protected |
Definition at line 14 of file JetConstituentIterator.cxx.
|
protected |
Definition at line 105 of file JetConstituentIterator.h.
|
protected |
Definition at line 110 of file JetConstituentIterator.h.
|
protected |
Definition at line 109 of file JetConstituentIterator.h.
|
protectedinherited |
Definition at line 92 of file P4PxPyPzE.h.
|
protected |
Definition at line 106 of file JetConstituentIterator.h.
|
protected |
Definition at line 107 of file JetConstituentIterator.h.
|
protectedinherited |
Definition at line 89 of file P4PxPyPzE.h.
|
protectedinherited |
Definition at line 90 of file P4PxPyPzE.h.
|
protectedinherited |
Definition at line 91 of file P4PxPyPzE.h.
|
protected |
Definition at line 108 of file JetConstituentIterator.h.