Belle II Software  release-08-01-10
ECLShower Class Reference

Class to store ECL Showers. More...

#include <ECLShower.h>

Inheritance diagram for ECLShower:
Collaboration diagram for ECLShower:

Public Types

enum  Hypothesis : unsigned int {
  c_muonNPhotons = 1 ,
  c_chargedHadron = 2 ,
  c_electronNPhotons = 3 ,
  c_nPhotons = 5 ,
  c_neutralHadron = 6 ,
  c_mergedPi0 = 7
}
 The hypothesis ID for ECLShowers. More...
 
enum  StatusBit : unsigned int {
  c_hasDeadCrystal = 1 << 0 ,
  c_hasHotCrystal = 1 << 1 ,
  c_hasProblematicCrystal = c_hasDeadCrystal | c_hasHotCrystal ,
  c_hasPulseShapeDiscrimination = 1 << 2
}
 The status information for the ECLShowers. More...
 

Public Member Functions

 ECLShower ()
 Default constructor for ROOT. More...
 
void setIsTrack (bool val)
 Set Match with Track.
 
void setStatus (int Status)
 Set Status.
 
void setShowerId (int ShowerId)
 Set Shower ID.
 
void setConnectedRegionId (int connectedRegionId)
 Set Connected region ID.
 
void setHypothesisId (int hypothesisId)
 Set Hypothesis identifier.
 
void setCentralCellId (int centralCellId)
 Set central cell id.
 
void setEnergy (double Energy)
 Set Energy.
 
void setEnergyRaw (double EnergySum)
 Set Raw Energy Sum.
 
void setTheta (double Theta)
 Set Theta (rad)
 
void setPhi (double Phi)
 Set Phi (rad)
 
void setR (double R)
 Set R.
 
void setCovarianceMatrix (double covArray[6])
 Set symmetric Error Array(3x3) for [0]->Error on Energy [2]->Error on Phi [5]->Error on Theta.
 
void setTime (double Time)
 Set Time.
 
void setDeltaTime99 (double TimeReso)
 Set Time Resolution.
 
void setEnergyHighestCrystal (double HighestEnergy)
 Set Highest Energy.
 
void setLateralEnergy (double lateralEnergy)
 Set Lateral Energy.
 
void setMinTrkDistance (double dist)
 Set Distance to closest track.
 
void setTrkDepth (double trkDepth)
 Set path on track extrapolation line to POCA to average cluster direction.
 
void setShowerDepth (double showerDepth)
 Set path on the average cluster direction.
 
void setNumberOfCrystals (double nofCrystals)
 Set sum of weights of crystals.
 
void setAbsZernikeMoment (unsigned int n, unsigned int m, double absZernikeMoment)
 Set absolute value of Zernike Moment nm, for nm between 10 and 55.
 
void setZernikeMVA (double zernikeMVA)
 SetZernike MVA value.
 
void setSecondMoment (double secondMoment)
 Set second moment.
 
void setE1oE9 (double E1oE9)
 Set energy ration E1 over E9.
 
void setE9oE21 (double E9oE21)
 Set energy ration E9 over E21.
 
void setShowerHadronIntensity (double hadronIntensity)
 Set shower hadron intensity.
 
void setPulseShapeDiscriminationMVA (double mvaVal)
 Set shower hadron intensity.
 
void setNumberOfHadronDigits (double NumberOfHadronDigits)
 Set numver of hadron digits.
 
void setNumberOfCrystalsForEnergy (double numberOfCrystalsForEnergy)
 Set number of crystals used for energy calculation.
 
void setNominalNumberOfCrystalsForEnergy (double nominalNumberOfCrystalsForEnergy)
 Set nominal number of crystals used for energy calculation.
 
void setNOptimalGroupIndex (int nOptimalGroupIndex)
 Set group number used to find nominalNumberOfCrystalsForEnergy.
 
void setNOptimalEnergyBin (int nOptimalEnergyBin)
 Set energy bin number used to find nominalNumberOfCrystalsForEnergy.
 
void setNOptimalEnergy (double nOptimalEnergy)
 Set energy used to find nOptimalEnergyBin.
 
void setListOfCrystalsForEnergy (const std::vector< unsigned int > &listofcrystals)
 Set list of cell ids used for energy calculation.
 
void setListOfCrystalEnergyRankAndQuality (std::vector< std::pair< unsigned int, bool >> listOfCrystalEnergyRankAndQuality)
 Set list of indexes of related ECLCalDigit objects sorted by calibrated energy with flag for PSD useability for charged PID.
 
bool getIsTrack () const
 Get if matched with a Track. More...
 
int getStatus () const
 Get Status. More...
 
int getShowerId () const
 Get Shower Id. More...
 
int getConnectedRegionId () const
 Get Connected region Id. More...
 
int getHypothesisId () const
 Get Hypothesis Id. More...
 
int getCentralCellId () const
 Get central cell Id. More...
 
double getEnergy () const
 Get Energy. More...
 
double getEnergyRaw () const
 Get Energy Sum. More...
 
double getTheta () const
 Get Theta. More...
 
double getPhi () const
 Get Phi. More...
 
double getR () const
 Get R. More...
 
void getCovarianceMatrixAsArray (double covArray[6]) const
 Get Error Array for Energy->[0], Phi->[2], Theta->[5]. More...
 
double getUncertaintyEnergy () const
 Get Error of Energy. More...
 
double getUncertaintyTheta () const
 Get Error of theta. More...
 
double getUncertaintyPhi () const
 Get Error of phi. More...
 
double getTime () const
 Get Time. More...
 
double getDeltaTime99 () const
 Get Time Resolution. More...
 
double getEnergyHighestCrystal () const
 Get Highest Energy in Shower. More...
 
double getLateralEnergy () const
 Get Lateral Energy in Shower. More...
 
double getMinTrkDistance () const
 Get distance to closest Track. More...
 
double getTrkDepth () const
 path on track extrapolation to POCA to average cluster direction More...
 
double getShowerDepth () const
 path on track extrapolation to POCA to average cluster direction More...
 
double getNumberOfCrystals () const
 Get NofCrystals. More...
 
double getAbsZernikeMoment (unsigned int n, unsigned int m) const
 Get absolute value of Zernike Moment nm. More...
 
double getZernikeMVA () const
 Get Zernike MVA. More...
 
double getSecondMoment () const
 Get second moment. More...
 
double getE1oE9 () const
 Get energy ratio E1oE9. More...
 
double getE9oE21 () const
 Get energy ratio E9oE21. More...
 
double getShowerHadronIntensity () const
 Get shower hadron intensity. More...
 
double getPulseShapeDiscriminationMVA () const
 Get shower hadron intensity. More...
 
double getNumberOfHadronDigits () const
 Get number of hadron digits. More...
 
double getNumberOfCrystalsForEnergy () const
 Get number of crystals used for energy calculation. More...
 
double getNominalNumberOfCrystalsForEnergy () const
 Get nominal number of crystals used for energy calculation. More...
 
int getNOptimalGroupIndex () const
 Get index of group of crystals used to find nominalNumberOfCrystalsForEnergy. More...
 
int getNOptimalEnergyBin () const
 Get energy bin used to find nominalNumberOfCrystalsForEnergy. More...
 
double getNOptimalEnergy () const
 Get energy used to find nOptimalEnergyBin. More...
 
std::vector< unsigned int > & getListOfCrystalsForEnergy ()
 Get list of cellids used for energy calculation. More...
 
std::vector< std::pair< unsigned int, bool > > getListOfCrystalEnergyRankAndQuality ()
 Get list of indexes of related ECLCalDigit objects sorted by calibrated energy with flag for PSD useability for charged PID. More...
 
ROOT::Math::XYZVector getMomentum () const
 The method to get return ROOT::Math::XYZVector Momentum.
 
TMatrixDSym getCovarianceMatrix3x3 () const
 Return TMatrixDsym 3x3 covariance matrix for E, Phi and Theta.
 
int getDetectorRegion () const
 Return detector region: 0: below acceptance, 1: FWD, 2: BRL, 3: BWD, 11: FWDGAP, 13: BWDGAP.
 
bool hasStatus (unsigned short int bitmask) const
 Return if specific status bit is set. More...
 
void addStatus (unsigned short int bitmask)
 Add bitmask to current status. More...
 
bool hasHotCrystal () const
 Check if shower contains a hot crystal.
 
bool hasDeadCrystal () const
 Check if shower contains a dead crystal.
 
bool hasProblematicCrystal () const
 Check if shower contains a problematic crystal.
 
bool hasPulseShapeDiscrimination () const
 Check if shower contains pulse shape discrimination information.
 
int getUniqueId () const
 Return unique identifier.
 
void addRelationTo (const RelationsInterface< BASE > *object, float weight=1.0, const std::string &namedRelation="") const
 Add a relation from this object to another object (with caching). More...
 
void addRelationTo (const TObject *object, float weight=1.0, const std::string &namedRelation="") const
 Add a relation from this object to another object (no caching, can be quite slow). More...
 
void copyRelations (const RelationsInterface< BASE > *sourceObj)
 Copies all relations of sourceObj (pointing from or to sourceObj) to this object (including weights). More...
 
template<class TO >
RelationVector< TO > getRelationsTo (const std::string &name="", const std::string &namedRelation="") const
 Get the relations that point from this object to another store array. More...
 
template<class FROM >
RelationVector< FROM > getRelationsFrom (const std::string &name="", const std::string &namedRelation="") const
 Get the relations that point from another store array to this object. More...
 
template<class T >
RelationVector< T > getRelationsWith (const std::string &name="", const std::string &namedRelation="") const
 Get the relations between this object and another store array. More...
 
template<class TO >
TO * getRelatedTo (const std::string &name="", const std::string &namedRelation="") const
 Get the object to which this object has a relation. More...
 
template<class FROM >
FROM * getRelatedFrom (const std::string &name="", const std::string &namedRelation="") const
 Get the object from which this object has a relation. More...
 
template<class T >
T * getRelated (const std::string &name="", const std::string &namedRelation="") const
 Get the object to or from which this object has a relation. More...
 
template<class TO >
std::pair< TO *, float > getRelatedToWithWeight (const std::string &name="", const std::string &namedRelation="") const
 Get first related object & weight of relation pointing to an array. More...
 
template<class FROM >
std::pair< FROM *, float > getRelatedFromWithWeight (const std::string &name="", const std::string &namedRelation="") const
 Get first related object & weight of relation pointing from an array. More...
 
template<class T >
std::pair< T *, float > getRelatedWithWeight (const std::string &name="", const std::string &namedRelation="") const
 Get first related object & weight of relation pointing from/to an array. More...
 
virtual std::string getName () const
 Return a short name that describes this object, e.g. More...
 
virtual std::string getInfoHTML () const
 Return a short summary of this object's contents in HTML format. More...
 
std::string getInfo () const
 Return a short summary of this object's contents in raw text format. More...
 
std::string getArrayName () const
 Get name of array this object is stored in, or "" if not found.
 
int getArrayIndex () const
 Returns this object's array index (in StoreArray), or -1 if not found.
 

Protected Member Functions

TClonesArray * getArrayPointer () const
 Returns the pointer to the raw DataStore array holding this object (protected since these arrays are easy to misuse).
 

Private Member Functions

 ClassDef (ECLShower, 17)
 ClassDef.
 

Private Attributes

bool m_isTrk
 Match with track (GDN)
 
int m_status
 Status.
 
int m_showerId
 Shower ID.
 
int m_connectedRegionId
 Connected Region ID (TF)
 
int m_hypothesisId
 Hypothesis ID (TF)
 
int m_centralCellId
 Central cell ID (TF)
 
Double32_t m_energy
 Energy (GeV)
 
Double32_t m_energyRaw
 Raw Energy Sum(GeV)
 
Double32_t m_theta
 Theta (rad)
 
Double32_t m_phi
 Phi (rad)
 
Double32_t m_r
 R (cm)
 
Double32_t m_Error [6]
 Error of Energy, Theta and Phi.
 
Double32_t m_time
 Time.
 
Double32_t m_deltaTime99
 Time that contains 99% of signal crystals.
 
Double32_t m_energyHighestCrystal
 Highest Energy in Shower (GeV) (TF)
 
Double32_t m_lateralEnergy
 Lateral Energy in Shower (GDN)
 
Double32_t m_minTrkDistance
 Distance between shower and closest track (GDN)
 
Double32_t m_trkDepth
 Path on track ext. More...
 
Double32_t m_showerDepth
 Same as above, but on the cluster average direction (GDN)
 
Double32_t m_numberOfCrystals
 Sum of weights of crystals (~number of crystals) (TF)
 
Double32_t m_absZernikeMoments [20]
 Shower shape variables, absolute values of Zernike Moments (MH)
 
Double32_t m_zernikeMVA
 Shower shape variable, zernike MVA output.
 
Double32_t m_secondMoment
 Shower shape variable, second moment (for merged pi0) (TF)
 
Double32_t m_E1oE9
 Shower shape variable, E1oE9 (TF)
 
Double32_t m_E9oE21
 Shower shape variable, E9oE25.
 
Double32_t m_ShowerHadronIntensity
 Shower Hadron Component Intensity (pulse shape discrimination variable). More...
 
Double32_t m_PulseShapeDiscriminationMVA
 MVA classifier that uses pulse shape discrimination to identify electromagnetic vs hadronic showers.
 
Double32_t m_NumberOfHadronDigits
 Number of hadron digits in shower (pulse shape discrimination variable). More...
 
Double32_t m_numberOfCrystalsForEnergy
 number of crystals used for energy calculation (TF)
 
Double32_t m_nominalNumberOfCrystalsForEnergy
 number of crystals used for energy calculation (TF)
 
int m_nOptimalGroupIndex
 group (of crystals) number used to find nominalNumberOfCrystalsForEnergy (CH)
 
int m_nOptimalEnergyBin
 energy bin used to find nominalNumberOfCrystalsForEnergy (CH)
 
Double32_t m_nOptimalEnergy
 energy used in ECLSplitterN1 to find nOptimalEnergyBin (CH)
 
std::vector< unsigned int > m_listOfCrystalsForEnergy
 list of cell ids used for energy calculation (TF)
 
std::vector< std::pair< unsigned int, bool > > m_listOfCrystalEnergyRankAndQuality
 list of indices of related ECLCalDigits by energy. More...
 
DataStore::StoreEntrym_cacheDataStoreEntry
 Cache of the data store entry to which this object belongs.
 
int m_cacheArrayIndex
 Cache of the index in the TClonesArray to which this object belongs.
 

Detailed Description

Class to store ECL Showers.

Definition at line 30 of file ECLShower.h.

Member Enumeration Documentation

◆ Hypothesis

enum Hypothesis : unsigned int

The hypothesis ID for ECLShowers.

Unlike ECLClusters, ECLShowers have one and only one hypothesis ID.

Enumerator
c_muonNPhotons 

CR is split into a muon and n photons (T1)

c_chargedHadron 

CR is reconstructed as a charged hadron (T2)

c_electronNPhotons 

CR is split into an electron and n photons (T3)

c_nPhotons 

CR is split into n photons (N1)

c_neutralHadron 

CR is reconstructed as a neutral hadron (N2)

c_mergedPi0 

CR is reconstructed as merged pi0 (N3)

Definition at line 34 of file ECLShower.h.

34  : unsigned int {
36  c_muonNPhotons = 1,
38  c_chargedHadron = 2,
42  c_nPhotons = 5,
44  c_neutralHadron = 6,
46  c_mergedPi0 = 7
47  };
@ c_mergedPi0
CR is reconstructed as merged pi0 (N3)
Definition: ECLShower.h:46
@ c_neutralHadron
CR is reconstructed as a neutral hadron (N2)
Definition: ECLShower.h:44
@ c_chargedHadron
CR is reconstructed as a charged hadron (T2)
Definition: ECLShower.h:38
@ c_muonNPhotons
CR is split into a muon and n photons (T1)
Definition: ECLShower.h:36
@ c_electronNPhotons
CR is split into an electron and n photons (T3)
Definition: ECLShower.h:40
@ c_nPhotons
CR is split into n photons (N1)
Definition: ECLShower.h:42

◆ StatusBit

enum StatusBit : unsigned int

The status information for the ECLShowers.

Enumerator
c_hasDeadCrystal 

bit 0: Dead crystal within nominal shower neighbour region.


c_hasHotCrystal 

bit 1: Hot crystal within nominal shower neighbour region.


c_hasProblematicCrystal 

combined flag to test whether the shower is 'problematic'

c_hasPulseShapeDiscrimination 

bit 2: Shower has pulse shape discrimination variables.


Definition at line 50 of file ECLShower.h.

Constructor & Destructor Documentation

◆ ECLShower()

ECLShower ( )
inline

Default constructor for ROOT.

< Match with track < Status (e.g. shower contains one hot crystal) < Shower ID < Connected Region ID < Hypothesis ID < Central Cell ID < Energy (GeV) < Raw Energy Sum (GeV) < Theta (rad) < Phi (rad) < R (cm) < Error Array for Energy->[0], Phi->[2], Theta->[5] < Time < Time that contains 99% of true signals < Highest energy in Shower < Lateral Energy
< Distance between shower and closest track
< Path on track extrapolation to POCA to average cluster direction
< Same as above, but on the cluster average direction < Sum of weights of crystals (~number of crystals) < Shower shape variables, absolute values of Zernike Moments 10 to 55 < Shower shape variable, Zernike MVA output < Shower shape variable, second moment (needed for merged pi0) < Shower shape variable, E1oE9 < Shower shape variable, E9oE21 < Shower Hadron Intensity. Will be removed in release-04. < Digit level MVA classifier that uses pulse shape discrimination. < Shower Number of hadron digits < number of crystals used for energy calculation < nominal number of crystals used for energy calculation < index of group of crystals used to find m_nominalNumberOfCrystalsForEnergy < energy bin used to find m_nominalNumberOfCrystalsForEnergy < energy used to find nOptimalEnergyBin in ECLSplitterN1 < list of cell ids used for energy calculation < list of ECLCalDigit indices sorted by online energy

Definition at line 66 of file ECLShower.h.

Member Function Documentation

◆ addRelationTo() [1/2]

void addRelationTo ( const RelationsInterface< BASE > *  object,
float  weight = 1.0,
const std::string &  namedRelation = "" 
) const
inlineinherited

Add a relation from this object to another object (with caching).

Parameters
objectThe object to which the relation should point.
weightThe weight of the relation.
namedRelationAdditional name for the relation, or "" for the default naming

Definition at line 142 of file RelationsObject.h.

◆ addRelationTo() [2/2]

void addRelationTo ( const TObject *  object,
float  weight = 1.0,
const std::string &  namedRelation = "" 
) const
inlineinherited

Add a relation from this object to another object (no caching, can be quite slow).

Parameters
objectThe object to which the relation should point.
weightThe weight of the relation.
namedRelationAdditional name for the relation, or "" for the default naming

Definition at line 155 of file RelationsObject.h.

◆ addStatus()

void addStatus ( unsigned short int  bitmask)
inline

Add bitmask to current status.

Parameters
bitmaskThe status code which should be added.

Definition at line 504 of file ECLShower.h.

◆ copyRelations()

void copyRelations ( const RelationsInterface< BASE > *  sourceObj)
inlineinherited

Copies all relations of sourceObj (pointing from or to sourceObj) to this object (including weights).

Useful if you want to make a complete copy of a StoreArray object to make modifications to it, but retain all information on linked objects.

Note: this only works if sourceObj inherits from the same base (e.g. RelationsObject), and only for related objects that also inherit from the same base.

Definition at line 170 of file RelationsObject.h.

◆ getAbsZernikeMoment()

double getAbsZernikeMoment ( unsigned int  n,
unsigned int  m 
) const
inline

Get absolute value of Zernike Moment nm.

Returns
Absolute Value of Zernike Moment nm, for nm between 10 and 55

Definition at line 377 of file ECLShower.h.

◆ getCentralCellId()

int getCentralCellId ( ) const
inline

Get central cell Id.

Returns
central cell Id

Definition at line 282 of file ECLShower.h.

◆ getConnectedRegionId()

int getConnectedRegionId ( ) const
inline

Get Connected region Id.

Returns
Connected region Id

Definition at line 272 of file ECLShower.h.

◆ getCovarianceMatrixAsArray()

void getCovarianceMatrixAsArray ( double  covArray[6]) const
inline

Get Error Array for Energy->[0], Phi->[2], Theta->[5].

Returns
Error Array for Energy->[0], Phi->[2], Theta->[5]

Definition at line 312 of file ECLShower.h.

◆ getDeltaTime99()

double getDeltaTime99 ( ) const
inline

Get Time Resolution.

Returns
deltat99

Definition at line 342 of file ECLShower.h.

◆ getE1oE9()

double getE1oE9 ( ) const
inline

Get energy ratio E1oE9.

Returns
E1oE9

Definition at line 392 of file ECLShower.h.

◆ getE9oE21()

double getE9oE21 ( ) const
inline

Get energy ratio E9oE21.

Returns
E9oE21

Definition at line 397 of file ECLShower.h.

◆ getEnergy()

double getEnergy ( ) const
inline

Get Energy.

Returns
Energy

Definition at line 287 of file ECLShower.h.

◆ getEnergyHighestCrystal()

double getEnergyHighestCrystal ( ) const
inline

Get Highest Energy in Shower.

Returns
Highest Energy

Definition at line 347 of file ECLShower.h.

◆ getEnergyRaw()

double getEnergyRaw ( ) const
inline

Get Energy Sum.

Returns
Energy Sum

Definition at line 292 of file ECLShower.h.

◆ getHypothesisId()

int getHypothesisId ( ) const
inline

Get Hypothesis Id.

Returns
Hypothesis Id

Definition at line 277 of file ECLShower.h.

◆ getInfo()

std::string getInfo ( ) const
inlineinherited

Return a short summary of this object's contents in raw text format.

Returns the contents of getInfoHTML() while translating line-breaks etc.

Note
: You don't need to implement this function (it's not virtual), getInfoHTML() is enough.

Definition at line 370 of file RelationsObject.h.

◆ getInfoHTML()

virtual std::string getInfoHTML ( ) const
inlinevirtualinherited

Return a short summary of this object's contents in HTML format.

Reimplement this in your own class to provide useful output for display or debugging purposes. For example, you might do something like:

std::stringstream out;
out << "<b>PDG</b>: " << m_pdg << "<br>";
out << "<b>Covariance Matrix</b>: " << HTML::getString(getCovariance5()) << "<br>";
return out.str();
std::string getString(const TMatrixFBase &matrix, int precision=2, bool color=true)
get HTML table representing a matrix.
Definition: HTML.cc:24
See also
Particle::getInfoHTML() for a more complex example.
HTML for some utility functions.
Use getInfo() to get a raw text version of this output.

Reimplemented in RecoTrack, TRGSummary, TrackFitResult, Track, SoftwareTriggerResult, PIDLikelihood, MCParticle, Cluster, and Particle.

Definition at line 362 of file RelationsObject.h.

◆ getIsTrack()

bool getIsTrack ( ) const
inline

Get if matched with a Track.

Returns
flag for track Matching

Definition at line 257 of file ECLShower.h.

◆ getLateralEnergy()

double getLateralEnergy ( ) const
inline

Get Lateral Energy in Shower.

Returns
Lateral Energy

Definition at line 352 of file ECLShower.h.

◆ getListOfCrystalEnergyRankAndQuality()

std::vector<std::pair<unsigned int, bool> > getListOfCrystalEnergyRankAndQuality ( )
inline

Get list of indexes of related ECLCalDigit objects sorted by calibrated energy with flag for PSD useability for charged PID.

Returns
m_listOfCrystalEnergyRankAndQuality

Definition at line 447 of file ECLShower.h.

◆ getListOfCrystalsForEnergy()

std::vector<unsigned int>& getListOfCrystalsForEnergy ( )
inline

Get list of cellids used for energy calculation.

Returns
m_listOfCrystalsForEnergy

Definition at line 442 of file ECLShower.h.

◆ getMinTrkDistance()

double getMinTrkDistance ( ) const
inline

Get distance to closest Track.

Returns
distance to closest Track

Definition at line 357 of file ECLShower.h.

◆ getName()

virtual std::string getName ( ) const
inlinevirtualinherited

Return a short name that describes this object, e.g.

pi+ for an MCParticle.

Reimplemented in SpacePoint, MCParticle, and Particle.

Definition at line 344 of file RelationsObject.h.

◆ getNominalNumberOfCrystalsForEnergy()

double getNominalNumberOfCrystalsForEnergy ( ) const
inline

Get nominal number of crystals used for energy calculation.

Returns
m_nominalNumberOfCrystalsForEnergy

Definition at line 422 of file ECLShower.h.

◆ getNOptimalEnergy()

double getNOptimalEnergy ( ) const
inline

Get energy used to find nOptimalEnergyBin.

Returns
m_nOptimalEnergy

Definition at line 437 of file ECLShower.h.

◆ getNOptimalEnergyBin()

int getNOptimalEnergyBin ( ) const
inline

Get energy bin used to find nominalNumberOfCrystalsForEnergy.

Returns
m_nOptimalEnergyBin

Definition at line 432 of file ECLShower.h.

◆ getNOptimalGroupIndex()

int getNOptimalGroupIndex ( ) const
inline

Get index of group of crystals used to find nominalNumberOfCrystalsForEnergy.

Returns
m_nOptimalGroupIndex

Definition at line 427 of file ECLShower.h.

◆ getNumberOfCrystals()

double getNumberOfCrystals ( ) const
inline

Get NofCrystals.

Returns
NofCrystals

Definition at line 372 of file ECLShower.h.

◆ getNumberOfCrystalsForEnergy()

double getNumberOfCrystalsForEnergy ( ) const
inline

Get number of crystals used for energy calculation.

Returns
m_numberOfCrystalsForEnergy

Definition at line 417 of file ECLShower.h.

◆ getNumberOfHadronDigits()

double getNumberOfHadronDigits ( ) const
inline

Get number of hadron digits.

Returns
m_NumberOfHadronDigits

Definition at line 412 of file ECLShower.h.

◆ getPhi()

double getPhi ( ) const
inline

Get Phi.

Returns
Phi

Definition at line 302 of file ECLShower.h.

◆ getPulseShapeDiscriminationMVA()

double getPulseShapeDiscriminationMVA ( ) const
inline

Get shower hadron intensity.

Returns
m_PulseShapeDiscriminationMVA

Definition at line 407 of file ECLShower.h.

◆ getR()

double getR ( ) const
inline

Get R.

Returns
R

Definition at line 307 of file ECLShower.h.

◆ getRelated()

T* getRelated ( const std::string &  name = "",
const std::string &  namedRelation = "" 
) const
inlineinherited

Get the object to or from which this object has a relation.

Template Parameters
TThe class of objects to or from which the relation points.
Parameters
nameThe name of the store array to or from which the relation points. If empty the default store array name for class T will be used. If the special name "ALL" is given all store arrays containing objects of type T are considered.
namedRelationAdditional name for the relation, or "" for the default naming
Returns
The first related object or a null pointer.

Definition at line 278 of file RelationsObject.h.

◆ getRelatedFrom()

FROM* getRelatedFrom ( const std::string &  name = "",
const std::string &  namedRelation = "" 
) const
inlineinherited

Get the object from which this object has a relation.

Template Parameters
FROMThe class of objects from which the relation points.
Parameters
nameThe name of the store array from which the relation points. If empty the default store array name for class FROM will be used. If the special name "ALL" is given all store arrays containing objects of type FROM are considered.
namedRelationAdditional name for the relation, or "" for the default naming
Returns
The first related object or a null pointer.

Definition at line 263 of file RelationsObject.h.

◆ getRelatedFromWithWeight()

std::pair<FROM*, float> getRelatedFromWithWeight ( const std::string &  name = "",
const std::string &  namedRelation = "" 
) const
inlineinherited

Get first related object & weight of relation pointing from an array.

Template Parameters
FROMThe class of objects from which the relation points.
Parameters
nameThe name of the store array from which the relation points. If empty the default store array name for class FROM will be used. If the special name "ALL" is given all store arrays containing objects of type FROM are considered.
namedRelationAdditional name for the relation, or "" for the default naming
Returns
Pair of first related object and the relation weight, or (NULL, 1.0) if none found.

Definition at line 314 of file RelationsObject.h.

◆ getRelatedTo()

TO* getRelatedTo ( const std::string &  name = "",
const std::string &  namedRelation = "" 
) const
inlineinherited

Get the object to which this object has a relation.

Template Parameters
TOThe class of objects to which the relation points.
Parameters
nameThe name of the store array to which the relation points. If empty the default store array name for class TO will be used. If the special name "ALL" is given all store arrays containing objects of type TO are considered.
namedRelationAdditional name for the relation, or "" for the default naming
Returns
The first related object or a null pointer.

Definition at line 248 of file RelationsObject.h.

◆ getRelatedToWithWeight()

std::pair<TO*, float> getRelatedToWithWeight ( const std::string &  name = "",
const std::string &  namedRelation = "" 
) const
inlineinherited

Get first related object & weight of relation pointing to an array.

Template Parameters
TOThe class of objects to which the relation points.
Parameters
nameThe name of the store array to which the relation points. If empty the default store array name for class TO will be used. If the special name "ALL" is given all store arrays containing objects of type TO are considered.
namedRelationAdditional name for the relation, or "" for the default naming
Returns
Pair of first related object and the relation weight, or (NULL, 1.0) if none found.

Definition at line 297 of file RelationsObject.h.

◆ getRelatedWithWeight()

std::pair<T*, float> getRelatedWithWeight ( const std::string &  name = "",
const std::string &  namedRelation = "" 
) const
inlineinherited

Get first related object & weight of relation pointing from/to an array.

Template Parameters
TThe class of objects to or from which the relation points.
Parameters
nameThe name of the store array to or from which the relation points. If empty the default store array name for class T will be used. If the special name "ALL" is given all store arrays containing objects of type T are considered.
namedRelationAdditional name for the relation, or "" for the default naming
Returns
Pair of first related object and the relation weight, or (NULL, 1.0) if none found.

Definition at line 331 of file RelationsObject.h.

◆ getRelationsFrom()

RelationVector<FROM> getRelationsFrom ( const std::string &  name = "",
const std::string &  namedRelation = "" 
) const
inlineinherited

Get the relations that point from another store array to this object.

Template Parameters
FROMThe class of objects from which the relations point.
Parameters
nameThe name of the store array from which the relations point. If empty the default store array name for class FROM will be used. If the special name "ALL" is given all store arrays containing objects of type FROM are considered.
namedRelationAdditional name for the relation, or "" for the default naming
Returns
A vector of relations.

Definition at line 212 of file RelationsObject.h.

◆ getRelationsTo()

RelationVector<TO> getRelationsTo ( const std::string &  name = "",
const std::string &  namedRelation = "" 
) const
inlineinherited

Get the relations that point from this object to another store array.

Template Parameters
TOThe class of objects to which the relations point.
Parameters
nameThe name of the store array to which the relations point. If empty the default store array name for class TO will be used. If the special name "ALL" is given all store arrays containing objects of type TO are considered.
namedRelationAdditional name for the relation, or "" for the default naming
Returns
A vector of relations.

Definition at line 197 of file RelationsObject.h.

◆ getRelationsWith()

RelationVector<T> getRelationsWith ( const std::string &  name = "",
const std::string &  namedRelation = "" 
) const
inlineinherited

Get the relations between this object and another store array.

Relations in both directions are returned.

Template Parameters
TThe class of objects to or from which the relations point.
Parameters
nameThe name of the store array to or from which the relations point. If empty the default store array name for class T will be used. If the special name "ALL" is given all store arrays containing objects of type T are considered.
namedRelationAdditional name for the relation, or "" for the default naming
Returns
A vector of relations.

Definition at line 230 of file RelationsObject.h.

◆ getSecondMoment()

double getSecondMoment ( ) const
inline

Get second moment.

Returns
second moment

Definition at line 387 of file ECLShower.h.

◆ getShowerDepth()

double getShowerDepth ( ) const
inline

path on track extrapolation to POCA to average cluster direction

Returns
path lenght in cm starting from cluster center

Definition at line 367 of file ECLShower.h.

◆ getShowerHadronIntensity()

double getShowerHadronIntensity ( ) const
inline

Get shower hadron intensity.

Returns
m_ShowerHadronIntensity

Definition at line 402 of file ECLShower.h.

◆ getShowerId()

int getShowerId ( ) const
inline

Get Shower Id.

Returns
Shower Id

Definition at line 267 of file ECLShower.h.

◆ getStatus()

int getStatus ( void  ) const
inline

Get Status.

Returns
Status

Definition at line 262 of file ECLShower.h.

◆ getTheta()

double getTheta ( ) const
inline

Get Theta.

Returns
Theta

Definition at line 297 of file ECLShower.h.

◆ getTime()

double getTime ( ) const
inline

Get Time.

Returns
Time

Definition at line 337 of file ECLShower.h.

◆ getTrkDepth()

double getTrkDepth ( ) const
inline

path on track extrapolation to POCA to average cluster direction

Returns
path lenght in cm

Definition at line 362 of file ECLShower.h.

◆ getUncertaintyEnergy()

double getUncertaintyEnergy ( ) const
inline

Get Error of Energy.

Returns
Error of Energy

Definition at line 322 of file ECLShower.h.

◆ getUncertaintyPhi()

double getUncertaintyPhi ( ) const
inline

Get Error of phi.

Returns
Error of phi

Definition at line 332 of file ECLShower.h.

◆ getUncertaintyTheta()

double getUncertaintyTheta ( ) const
inline

Get Error of theta.

Returns
Error of theta

Definition at line 327 of file ECLShower.h.

◆ getZernikeMVA()

double getZernikeMVA ( ) const
inline

Get Zernike MVA.

Returns
Zernike MVA

Definition at line 382 of file ECLShower.h.

◆ hasStatus()

bool hasStatus ( unsigned short int  bitmask) const
inline

Return if specific status bit is set.

Parameters
bitmaskThe bitmask which is compared to the status of the shower.
Returns
Returns true if the bitmask matches the status code of the shower.

Definition at line 498 of file ECLShower.h.

Member Data Documentation

◆ m_listOfCrystalEnergyRankAndQuality

std::vector<std::pair<unsigned int, bool> > m_listOfCrystalEnergyRankAndQuality
private

list of indices of related ECLCalDigits by energy.

Also stores a quality flag for each digit denoting whether the PSD information can be used for charged particle ID. Cached here to avoid resorting the ECLCalDigit vector 90 times per track.

Definition at line 570 of file ECLShower.h.

◆ m_NumberOfHadronDigits

Double32_t m_NumberOfHadronDigits
private

Number of hadron digits in shower (pulse shape discrimination variable).

Weighted sum of digits in shower with significant scintillation emission (> 3 MeV) in the hadronic scintillation component. (SL)

Definition at line 562 of file ECLShower.h.

◆ m_ShowerHadronIntensity

Double32_t m_ShowerHadronIntensity
private

Shower Hadron Component Intensity (pulse shape discrimination variable).

Sum of the CsI(Tl) hadron scintillation component emission normalized to the sum of CsI(Tl) total scintillation emission. Computed only using showers digits with energy greater than 50 MeV and good offline waveform fit chi2. (SL)

Definition at line 558 of file ECLShower.h.

◆ m_trkDepth

Double32_t m_trkDepth
private

Path on track ext.

to POCA to avg. cluster dir. (GDN)

Definition at line 549 of file ECLShower.h.


The documentation for this class was generated from the following file: