11#include <framework/datastore/RelationsObject.h>
13#include <Math/Vector3D.h>
14#include <TMatrixDSym.h>
Double32_t m_absZernike40
Zernike 40.
void setE9oE21(double E9oE21)
Set E9/E21 energy ratio.
void addHypothesis(EHypothesisBit bitmask)
Add bitmask to current hypothesis.
Double32_t m_ClusterHadronIntensity
Cluster Hadron Component Intensity (pulse shape discrimination variable).
unsigned short getMaxECellId() const
Return cellID of maximum energy crystal.
unsigned short m_status
Cluster status.
Double32_t m_r
Radius [cm].
bool isTrack() const
Return true if the cluster matches with track.
bool hasHypothesis(EHypothesisBit bitmask) const
Return if specific hypothesis bit is set.
Double32_t m_absZernike51
Zernike 51.
void setTheta(double theta)
Set Theta of Shower (radian).
Double32_t m_zernikeMVA
Zernike MVA.
void setConnectedRegionId(int crid)
Set connected region id.
Double32_t m_sqrtcovmat_22
Covariance matrix 22, sigma_theta, between 0 and 50 mrad.
double getMinTrkDistanceID() const
Get array index of the nearest track.
EStatusBit
The status information for the ECLCluster.
@ c_TriggerCluster
bit 0: ECLCluster is matched to a ECL trigger cluster
@ c_PulseShapeDiscrimination
bit 2: ECLCluster has pulse shape discrimination variables.
@ c_TriggerClusterMatching
bit 1: ECLCluster to ECLTRGCluster matcher was run
@ c_timeResolutionFailed
bit 4: ECLCluster has time resolution calculation that failed.
@ c_fitTimeFailed
bit 3: ECLCluster has fit time that failed.
void setPhi(double phi)
Set Phi of Shower (radian).
void setUncertaintyEnergy(double energyunc)
Set energy uncertainty.
double getPulseShapeDiscriminationMVA() const
Return MVA classifier that uses pulse shape discrimination to identify electromagnetic vs hadronic sh...
TMatrixDSym getCovarianceMatrix3x3() const
Return TMatrixDsym 3x3 covariance matrix for E, Phi and Theta.
double getPhi() const
Return Corrected Phi of Shower (radian).
Double32_t m_numberOfCrystals
Number of Crystals in a shower (sum of weights).
void setMaxECellId(unsigned short cellid)
Set cellID of maximum energy crystal.
void setdeltaL(double deltaL)
Set deltaL for shower shape.
Double32_t m_sqrtcovmat_11
Covariance matrix 11, sigma_phi, between 0 and 50 mrad.
void setMinTrkDistanceID(unsigned short distanceID)
Set array index of the nearest track.
bool hasFailedTimeResolution() const
Check if ECLCluster has a time resolution calculation that failed.
void setEnergyHighestCrystal(double energyhighestcrystal)
Set energy of highest energetic crystal (GeV).
void setEnergyRaw(double energyraw)
Set Uncorrect Energy deposited (GeV).
double getE1oE9() const
Return E1/E9 (shower shape variable).
bool isTriggerCluster() const
Check if ECLCluster is matched to an ECLTRGCluster.
void setTime(double time)
Set time information.
int getUniqueClusterId() const
Return unique cluster id = 1000 * regionId + clusterId.
void setSecondMoment(double secondmoment)
Set SecondMoment.
double getDeltaL() const
Return deltaL.
void setCovarianceMatrix(double covArray[6])
Set covariance matrix (3x3), i.e.
void setAbsZernike51(double zernike51)
Set Zernike 51.
Double32_t m_theta
Theta [rad].
int getConnectedRegionId() const
Return connected region id.
void setMinTrkDistance(double distance)
Set distance between cluster COG and track extrapolation to ECL.
double getR() const
Return R.
double getEnergyRaw() const
Return Uncorrected Energy deposited (GeV)
Double32_t m_sqrtcovmat_00
Covariance entry 00 sigma_E (1% to 25% between 10 MeV and 8 GeV)
bool hasPulseShapeDiscrimination() const
Check if ECLCluster has any ECLDigits with waveforms that also passed two component fit chi2 threshol...
ECLCluster()
default constructor : all values are set to 0, IDs set to -1, flags to false
double getUncertaintyTheta() const
Return Uncertainty on Theta of Shower.
double getLAT() const
Return LAT (shower shape variable).
Double32_t m_covmat_20
Covariance matrix 20, not used yet.
void setZernikeMVA(double zernikemva)
Set Zernike 20.
int m_connectedRegionId
Connected Region of this cluster.
void addStatus(EStatusBit bitmask)
Add bitmask to current status.
Double32_t m_deltaL
Delta L as defined in arXiv:0711.1593.
Double32_t m_covmat_10
Covariance matrix 10, not used yet.
Double32_t m_logEnergyHighestCrystal
Log.
bool hasStatus(EStatusBit bitmask) const
Return if specific status bit is set.
double getE9oE21() const
Return E9/E21 (shower shape variable).
void setDeltaTime99(double dtime99)
Set 99% time containment range.
Double32_t m_PulseShapeDiscriminationMVA
MVA classifier that uses pulse shape discrimination to identify electromagnetic vs hadronic showers.
void setClusterId(int clusterid)
Set cluster id.
unsigned short m_minTrkDistanceID
Array index of the nearest track.
void setStatus(EStatusBit status)
Set status.
int getDetectorRegion() const
Return detector region: 0: below acceptance, 1: FWD, 2: BRL, 3: BWD, 11: FWDGAP, 13: BWDGAP.
unsigned short getStatus() const
Return status.
void removeStatus(EStatusBit bitmask)
Remove bitmask from current status.
Double32_t m_minTrkDistance
Distance between cluster center and track extrapolation to ECL.
Double32_t m_deltaTime99
Delta Time 99.
Double32_t m_logEnergy
< Log.
Double32_t m_secondMoment
Second Moment.
Double32_t m_E9oE21
E9oE21.
void setLAT(double LAT)
Set Lateral distribution parameter.
Double32_t m_NumberOfHadronDigits
Number of hadron digits in cluster (pulse shape discrimination variable).
Double32_t m_covmat_21
Covariance matrix 21, not used yet.
double getEnergy(EHypothesisBit hypothesis) const
Return Energy (GeV).
void setHypothesis(EHypothesisBit hypothesis)
Set hypotheses.
double getUncertaintyEnergy() const
Return Uncertainty on Energy of Shower.
void setPulseShapeDiscriminationMVA(double PulseShapeDiscriminationMVA)
set Pulse Shape Discrimination MVA
void setNumberOfCrystals(double noc)
Set number of crystals (sum of weights).
void setEnergy(double energy)
Set Corrected Energy (GeV).
void setAbsZernike40(double zernike40)
Set Zernike 40.
double getNumberOfHadronDigits() const
Return number of hadron digits in cluster.
double getMinTrkDistance() const
Get distance between cluster COG and track extrapolation to ECL.
bool hasTriggerClusterMatching() const
Check if ECLTRGCluster to ECLCluster matcher has run.
double getNumberOfCrystals() const
Return number of a crystals in a shower (sum of weights).
double getEnergyHighestCrystal() const
Return energy of highest energetic crystal in cluster (GeV)
double getZernikeMVA() const
Return MVA based hadron/photon value based on Zernike moments (shower shape variable).
ROOT::Math::XYZVector getClusterPosition() const
Return ROOT::Math::XYZVector on cluster position (x,y,z)
int m_clusterId
Cluster id.
void setUncertaintyTheta(double thetaunc)
Set theta uncertainty.
double getUncertaintyPhi() const
Return Uncertainty on Phi of Shower.
double getAbsZernike40() const
Return Zernike moment 40 (shower shape variable).
unsigned short getHypotheses() const
Return hypothesis (expert only, this returns a bti pattern).
void removeHypothesis(EHypothesisBit bitmask)
Remove bitmask from current hypothesis.
Double32_t m_logEnergyRaw
Log.
bool isNeutral() const
Return true if cluster has no match with track.
Double32_t m_phi
Phi [rad].
void setUncertaintyPhi(double phiunc)
Set phi uncertainty.
void setE1oE9(double E1oE9)
Set E1/E9 energy ratio.
unsigned short m_maxECellId
CellID of maximum energy crystal.
void setNumberOfHadronDigits(double NumberOfHadronDigits)
set Number of hadron digits in cluster .
unsigned short m_hypotheses
Hypothesis.
int getClusterId() const
Return cluster id.
double getSecondMoment() const
Return second moment (shower shape variable).
ClassDef(ECLCluster, 15)
Class definition.
bool hasFailedFitTime() const
Check if ECLCluster has a fit time that failed.
double getTheta() const
Return Corrected Theta of Shower (radian).
double getDeltaTime99() const
Return cluster delta time 99.
bool m_isTrack
Is related to track (true) or not (false).
void setIsTrack(bool istrack)
Set m_isTrack true if the cluster matches with a track.
double getTime() const
Return cluster time.
EHypothesisBit
The hypothesis bits for this ECLCluster (Connected region (CR) is split using this hypothesis.
@ c_electronNPhotons
CR is split into an electron and n photons (T3)
@ c_muonNPhotons
CR is split into a muon and n photons (T1)
@ c_mergedPi0
CR is reconstructed as merged pi0 (N3)
@ c_chargedHadron
CR is reconstructed as a charged hadron (T2)
@ c_nPhotons
CR is split into n photons (N1)
@ c_neutralHadron
CR is reconstructed as a neutral hadron (N2)
@ c_none
None as initializer.
void setR(double r)
Set R (in cm).
double getAbsZernike51() const
Return Zernike moment 51 (shower shape variable).
Defines interface for accessing relations of objects in StoreArray.
double sqrt(double a)
sqrt for double
Abstract base class for different kinds of events.