10 #include <reconstruction/modules/MdstPID/MdstPIDModule.h>
13 #include <framework/gearbox/Const.h>
14 #include <framework/logging/Logger.h>
15 #include <klm/muid/MuidElementNumbers.h>
25 MdstPIDModule::MdstPIDModule() :
Module(),
28 setDescription(
"Create MDST PID format (PIDLikelihood objects) from subdetector PID info.");
70 for (
int itra = 0; itra <
m_tracks.getEntries(); ++itra) {
77 track->addRelationTo(
m_pid);
110 if (logl->
getFlag() != 1)
return;
121 if (logl->
getFlag() != 1)
return;
162 if (abs(muid->getPDGCode()) != abs(
Const::muon.getPDGCode())) {
163 B2WARNING(
"MdstPID, KLMMuidLikelihood: extrapolation with other than muon hypothesis ignored");
167 if (muid->getOutcome() == MuidElementNumbers::c_NotReached)
170 if (muid->getJunkPDFValue())
This is a class to store ARICH likelihoods in the datastore.
int getFlag() const
Get reconstruction flag.
float getLogL(const Const::ChargedStable &part) const
Return log likelihood for a given particle.
Container for likelihoods obtained by the CDC dE/dx PID (CDCDedxPIDModule).
double getLogL(const Const::ChargedStable &type) const
returns unnormalised log-likelihood value for a particle hypothesis using CDC information.
static const ChargedStable muon
muon particle
static const ParticleSet chargedStableSet
set of charged stable particles
Container for likelihoods with ECL PID (ECLChargedPIDModule)
float getLogLikelihood(const Const::ChargedStable &type) const
returns log-likelihood value for a particle hypothesis.
Class to store the likelihoods from KLM with additional informations related to the extrapolation.
StoreArray< KLMMuidLikelihood > m_muid
Optional array for KLMMuidLikelihood.
StoreArray< VXDDedxLikelihood > m_vxdDedxLikelihoods
Optional array for VXDDedxLikelihoods.
virtual void initialize() override
Initialize the module.
virtual void event() override
Called for each event.
StoreArray< TOPLikelihood > m_topLikelihoods
Optional array for TOPLikelihoods.
StoreArray< ECLPidLikelihood > m_eclLikelihoods
Optional array for ECLPidLikelihoods.
virtual ~MdstPIDModule()
Destructor.
virtual void endRun() override
Called when run ended.
virtual void terminate() override
Terminates the module.
PIDLikelihood * m_pid
pointer to the object to be filled
virtual void beginRun() override
Called when a new run is started.
StoreArray< Track > m_tracks
Required array for Tracks.
StoreArray< ARICHLikelihood > m_arichLikelihoods
Optional array for ARICHLikelihoods.
void setLikelihoods(const TOPLikelihood *logl)
Set TOP log likelihoods and corresponding reconstruction flag.
StoreArray< CDCDedxLikelihood > m_cdcDedxLikelihoods
Optional array for CDCDedxLikelihoods.
StoreArray< PIDLikelihood > m_pidLikelihoods
Required array for PIDLikelihoods.
void setDescription(const std::string &description)
Sets the description of the module.
void setPropertyFlags(unsigned int propertyFlags)
Sets the flags for the module properties.
@ c_ParallelProcessingCertified
This module can be run in parallel processing mode safely (All I/O must be done through the data stor...
void setLogLikelihood(Const::EDetector det, const Const::ChargedStable &part, float logl)
Set log likelihood for a given detector and particle.
Class to store TOP log likelihoods (output of TOPReconstructor).
int getFlag() const
Return reconstruction flag.
float getLogL(const Const::ChargedStable &part) const
Return log likelihood for a given particle.
Class that bundles various TrackFitResults.
Container for likelihoods obtained by the VXD dE/dx PID (VXDDedxPIDModule).
double getLogL(const Const::ChargedStable &type) const
returns unnormalised log-likelihood value for a particle hypothesis using SVD (and/or PXD) informatio...
#define REG_MODULE(moduleName)
Register the given module (without 'Module' suffix) with the framework.
Abstract base class for different kinds of events.