 |
Belle II Software
release-05-02-19
|
11 #ifndef PIDLIKELIHOOD_H
12 #define PIDLIKELIHOOD_H
14 #include <framework/datastore/RelationsObject.h>
15 #include <framework/gearbox/Const.h>
102 const Const::ChargedStable& p2,
116 const double* fractions = 0,
126 Const::ChargedStable
getMostLikely(
const double* fractions = 0,
151 const double* fractions,
Const::DetectorSet m_detectors
set of detectors with PID information
static const unsigned int c_SetSize
Number of elements (for use in array bounds etc.)
static DetectorSet set()
Accessor for the set of valid detector IDs.
Const::ChargedStable getMostLikely(const double *fractions=0, Const::PIDDetectorSet set=Const::PIDDetectorSet::set()) const
Return most likely particle among chargedStableSet; if prior fractions not given equal prior probabil...
void setLogLikelihood(Const::EDetector det, const Const::ChargedStable &part, float logl)
Set log likelihood for a given detector and particle.
Class to collect log likelihoods from TOP, ARICH, dEdx, ECL and KLM aimed for output to mdst includes...
void printArray() const
Prints the content of a private array of log likelihoods.
bool isAvailable(Const::PIDDetectorSet set) const
Check whether PID information from a given set of detectors is available.
EDetector
Enum for identifying the detector components (detector and subdetector).
RestrictedDetectorSet< PIDDetectors > PIDDetectorSet
Typedef for set of PID detectors.
float getLogL(const Const::ChargedStable &part, Const::PIDDetectorSet set=Const::PIDDetectorSet::set()) const
Return log likelihood for a given detector set and particle.
A class for sets of detector IDs whose content is limited to restricted set of valid detector IDs.
Abstract base class for different kinds of events.
float getDeltaLogL(const Const::ChargedStable &p1, const Const::ChargedStable &p2, Const::PIDDetectorSet set=Const::PIDDetectorSet::set()) const
Return log likelihood difference for a given detector set and particles.
std::string getInfoHTML() const
Return HTML Info of PID Likelihoods.
float m_logl[Const::PIDDetectors::c_size][Const::ChargedStable::c_SetSize]
log likelihoods
ClassDef(PIDLikelihood, 3)
Collect log likelihoods from TOP, ARICH, dEdx, ECL and KLM.
RelationsInterface< TObject > RelationsObject
Provides interface for getting/adding relations to objects in StoreArrays.
Provides a type-safe way to pass members of the chargedStableSet set.
static const size_t c_size
Number of PID detectors, temporary workaround.
PIDLikelihood()
Default constructor: log likelihoods and flags set to 0.
bool contains(const DetectorSet &set) const
Check whether this set contains another set.
void probability(double probabilities[], const double *fractions, Const::PIDDetectorSet detSet) const
Calculate likelihood probabilities.
double getProbability(const Const::ChargedStable &p1, const Const::ChargedStable &p2, Const::PIDDetectorSet set=Const::PIDDetectorSet::set()) const
Return combined likelihood probability for a particle being p1 and not p2, assuming equal prior proba...