11 #include <framework/datastore/RelationsObject.h>
12 #include <framework/gearbox/Const.h>
113 const double* fractions = 0,
148 const double* fractions,
Provides a type-safe way to pass members of the chargedStableSet set.
static const unsigned int c_SetSize
Number of elements (for use in array bounds etc.)
The DetectorSet class for sets of detector IDs in the form of EDetector values.
bool contains(const DetectorSet &set) const
Check whether this set contains another set.
static const size_t c_size
Number of PID detectors, temporary workaround.
A class for sets of detector IDs whose content is limited to restricted set of valid detector IDs.
static DetectorSet set()
Accessor for the set of valid detector IDs.
EDetector
Enum for identifying the detector components (detector and subdetector).
Class to collect log likelihoods from TOP, ARICH, dEdx, ECL and KLM aimed for output to mdst includes...
PIDLikelihood()
Default constructor: log likelihoods and flags set to 0.
bool isAvailable(Const::PIDDetectorSet set) const
Check whether PID information from a given set of detectors is available.
std::string getInfoHTML() const override
Return HTML Info of PID Likelihoods.
float m_logl[Const::PIDDetectors::c_size][Const::ChargedStable::c_SetSize]
log likelihoods
void printArray() const
Prints the content of a private array of log likelihoods.
float getLogL(const Const::ChargedStable &part, Const::PIDDetectorSet set=Const::PIDDetectorSet::set()) const
Return log likelihood for a given detector set and particle.
void setLogLikelihood(Const::EDetector det, const Const::ChargedStable &part, float logl)
Set log likelihood for a given detector and particle.
ClassDefOverride(PIDLikelihood, 3)
Collect log likelihoods from TOP, ARICH, dEdx, ECL and KLM.
void probability(double probabilities[], const double *fractions, Const::PIDDetectorSet detSet) const
Calculate likelihood probabilities.
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...
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...
Const::DetectorSet m_detectors
set of detectors with PID information
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.
Defines interface for accessing relations of objects in StoreArray.
Abstract base class for different kinds of events.