Belle II Software  release-05-02-19
ECLTrackClusterMatchingPerformanceModule Class Reference

This module takes the MCParticle collection as input and checks if the related reconstructed track is matched to an ECLCluster. More...

#include <ECLTrackClusterMatchingPerformanceModule.h>

Inheritance diagram for ECLTrackClusterMatchingPerformanceModule:
Collaboration diagram for ECLTrackClusterMatchingPerformanceModule:

Public Types

enum  EModulePropFlags {
  c_Input = 1,
  c_Output = 2,
  c_ParallelProcessingCertified = 4,
  c_HistogramManager = 8,
  c_InternalSerializer = 16,
  c_TerminateInAllProcesses = 32,
  c_DontCollectStatistics = 64
}
 Each module can be tagged with property flags, which indicate certain features of the module. More...
 
typedef ModuleCondition::EAfterConditionPath EAfterConditionPath
 Forward the EAfterConditionPath definition from the ModuleCondition.
 

Public Member Functions

void initialize () override
 Register the needed StoreArrays and open th output TFile.
 
void event () override
 Fill the tree with the event data. More...
 
void terminate () override
 Write the tree into the opened root file.
 
virtual std::vector< std::string > getFileNames (__attribute__((unused)) bool outputFiles)
 Return a list of output filenames for this modules. More...
 
virtual void beginRun ()
 Called when entering a new run. More...
 
virtual void endRun ()
 This method is called if the current run ends. More...
 
const std::string & getName () const
 Returns the name of the module. More...
 
const std::string & getType () const
 Returns the type of the module (i.e. More...
 
const std::string & getPackage () const
 Returns the package this module is in.
 
const std::string & getDescription () const
 Returns the description of the module.
 
void setName (const std::string &name)
 Set the name of the module. More...
 
void setPropertyFlags (unsigned int propertyFlags)
 Sets the flags for the module properties. More...
 
LogConfiggetLogConfig ()
 Returns the log system configuration.
 
void setLogConfig (const LogConfig &logConfig)
 Set the log system configuration.
 
void setLogLevel (int logLevel)
 Configure the log level.
 
void setDebugLevel (int debugLevel)
 Configure the debug messaging level.
 
void setAbortLevel (int abortLevel)
 Configure the abort log level.
 
void setLogInfo (int logLevel, unsigned int logInfo)
 Configure the printed log information for the given level. More...
 
void if_value (const std::string &expression, const std::shared_ptr< Path > &path, EAfterConditionPath afterConditionPath=EAfterConditionPath::c_End)
 Add a condition to the module. More...
 
void if_false (const std::shared_ptr< Path > &path, EAfterConditionPath afterConditionPath=EAfterConditionPath::c_End)
 A simplified version to add a condition to the module. More...
 
void if_true (const std::shared_ptr< Path > &path, EAfterConditionPath afterConditionPath=EAfterConditionPath::c_End)
 A simplified version to set the condition of the module. More...
 
bool hasCondition () const
 Returns true if at least one condition was set for the module.
 
const ModuleConditiongetCondition () const
 Return a pointer to the first condition (or nullptr, if none was set)
 
const std::vector< ModuleCondition > & getAllConditions () const
 Return all set conditions for this module.
 
bool evalCondition () const
 If at least one condition was set, it is evaluated and true returned if at least one condition returns true. More...
 
std::shared_ptr< PathgetConditionPath () const
 Returns the path of the last true condition (if there is at least one, else reaturn a null pointer). More...
 
Module::EAfterConditionPath getAfterConditionPath () const
 What to do after the conditional path is finished. More...
 
std::vector< std::shared_ptr< Path > > getAllConditionPaths () const
 Return all condition paths currently set (no matter if the condition is true or not).
 
bool hasProperties (unsigned int propertyFlags) const
 Returns true if all specified property flags are available in this module. More...
 
bool hasUnsetForcedParams () const
 Returns true and prints error message if the module has unset parameters which the user has to set in the steering file.
 
const ModuleParamListgetParamList () const
 Return module param list.
 
template<typename T >
ModuleParam< T > & getParam (const std::string &name) const
 Returns a reference to a parameter. More...
 
bool hasReturnValue () const
 Return true if this module has a valid return value set.
 
int getReturnValue () const
 Return the return value set by this module. More...
 
std::shared_ptr< PathElementclone () const override
 Create an independent copy of this module. More...
 
std::shared_ptr< boost::python::list > getParamInfoListPython () const
 Returns a python list of all parameters. More...
 

Static Public Member Functions

static void exposePythonAPI ()
 Exposes methods of the Module class to Python.
 

Protected Member Functions

virtual void def_initialize ()
 Wrappers to make the methods without "def_" prefix callable from Python. More...
 
virtual void def_beginRun ()
 Wrapper method for the virtual function beginRun() that has the implementation to be used in a call from Python.
 
virtual void def_event ()
 Wrapper method for the virtual function event() that has the implementation to be used in a call from Python.
 
virtual void def_endRun ()
 This method can receive that the current run ends as a call from the Python side. More...
 
virtual void def_terminate ()
 Wrapper method for the virtual function terminate() that has the implementation to be used in a call from Python.
 
void setDescription (const std::string &description)
 Sets the description of the module. More...
 
void setType (const std::string &type)
 Set the module type. More...
 
template<typename T >
void addParam (const std::string &name, T &paramVariable, const std::string &description, const T &defaultValue)
 Adds a new parameter to the module. More...
 
template<typename T >
void addParam (const std::string &name, T &paramVariable, const std::string &description)
 Adds a new enforced parameter to the module. More...
 
void setReturnValue (int value)
 Sets the return value for this module as integer. More...
 
void setReturnValue (bool value)
 Sets the return value for this module as bool. More...
 
void setParamList (const ModuleParamList &params)
 Replace existing parameter list.
 

Private Member Functions

void setVariablesToDefaultValue ()
 Sets all variables to the default value, here -999.
 
void setClusterVariablesToDefaultValue ()
 sets cluster related variables to default values
 
void setupTree ()
 add branches to data tree
 
void writeData ()
 write root tree to output file and close the file
 
void addVariableToTree (const std::string &varName, double &varReference, TTree *tree)
 add a variable with double format
 
void addVariableToTree (const std::string &varName, int &varReference, TTree *tree)
 add a variable with int format
 
bool isPrimaryMcParticle (const MCParticle &mcParticle)
 Tests if MCParticle is a primary one. More...
 
bool isChargedStable (const MCParticle &mcParticle)
 Tests if MCParticle is a charged stable particle. More...
 
std::list< ModulePtrgetModules () const override
 no submodules, return empty list
 
std::string getPathString () const override
 return the module name.
 
void setParamPython (const std::string &name, const boost::python::object &pyObj)
 Implements a method for setting boost::python objects. More...
 
void setParamPythonDict (const boost::python::dict &dictionary)
 Implements a method for reading the parameter values from a boost::python dictionary. More...
 

Private Attributes

std::string m_outputFileName
 name of output root file
 
double m_minClusterEnergy
 minimal cluster energy in units of particle's true energy
 
double m_minWeight
 fraction of cluster energy
 
std::string m_trackClusterRelationName
 name of relation array between tracks and ECL clusters
 
StoreArray< ECLClusterm_eclClusters
 Required input array of ECLClusters.
 
StoreArray< MCParticlem_mcParticles
 Required input array of MCParticles.
 
StoreArray< Trackm_tracks
 Required input array of Tracks.
 
StoreArray< TrackFitResultm_trackFitResults
 Required input array of TrackFitResults.
 
TFile * m_outputFile {nullptr}
 output root file
 
TTree * m_tracksTree {nullptr}
 MCParticle based root tree with all output data. More...
 
TTree * m_clusterTree {nullptr}
 root tree containing information on all truth-matched photon clusters. More...
 
ParticleProperties m_trackProperties
 properties of a reconstructed track
 
int m_iExperiment = 0
 Experiment number.
 
int m_iRun = 0
 Run number.
 
int m_iEvent = 0
 Event number.
 
double m_pValue = 0.0
 pValue of track fit
 
int m_charge = 0
 charge
 
double m_d0 = 0.0
 signed distance of the track to the IP in the r-phi plane
 
double m_z0 = 0.0
 distance of the track to the IP along the beam axis
 
int m_lastCDCLayer = 0
 number of last CDC layer used for track fit
 
int m_matchedPhotonHypothesisClusterDetectorRegion = 0
 detector region of cluster with photon hypothesis matched to track
 
double m_matchedPhotonHypothesisClusterTheta = 0.0
 theta of cluster with photon hypothesis matched to track
 
double m_matchedPhotonHypothesisClusterPhi = 0.0
 phi of cluster with photon hypothesis matched to track
 
double m_matchedPhotonHypothesisClusterMinTrkDistance = 0.0
 minimal distance between cluster with photon hypothesis and track (not necessarily the matched one)
 
double m_matchedPhotonHypothesisClusterDeltaL = 0.0
 delta l of cluster with photon hypothesis
 
int m_matchedHadronHypothesisClusterDetectorRegion = 0
 detector region of cluster with hadron hypothesis matched to track
 
double m_matchedHadronHypothesisClusterTheta = 0.0
 theta of cluster with hadron hypothesis matched to track
 
double m_matchedHadronHypothesisClusterPhi = 0.0
 phi of cluster with hadron hypothesis matched to track
 
double m_matchedHadronHypothesisClusterMinTrkDistance = 0.0
 minimal distance between cluster with hadron hypothesis and track (not necessarily the matched one)
 
double m_matchedHadronHypothesisClusterDeltaL = 0.0
 delta l of cluster with hadron hypothesis
 
int m_mcparticle_cluster_detectorregion = 0
 detector region of cluster matched to MCParticle
 
double m_mcparticle_cluster_theta = 0.0
 theta of cluster matched to MCParticle
 
double m_mcparticle_cluster_phi = 0.0
 phi of cluster matched to MCParticle
 
double m_mcparticle_cluster_energy = 0.0
 amount of particle energy contained in cluster matched to MCParticle
 
int m_mcparticle_cluster_match = 0
 boolean for match between MCParticle and ECL cluster
 
int m_matchedToPhotonHypothesisECLCluster = 0
 boolean for match between track and ECL cluster with photon hypothesis
 
int m_matchedToHadronHypothesisECLCluster = 0
 boolean for match between track and ECL cluster with hadron hypothesis
 
int m_sameclusters = 0
 boolean whether matched to ECL cluster with highest weight
 
double m_clusterPhi = 0.0
 azimuthal angle of cluster
 
double m_clusterTheta = 0.0
 polar angle of cluster
 
int m_clusterHypothesis = 0
 hypothesis ID of cluster
 
int m_clusterIsTrack = 0
 cluster is matched to track
 
int m_clusterIsPhoton = 0
 cluster fulfills requirements for being product of a photon
 
int m_clusterIsChargedStable = 0
 cluster has related MCParticle which is charged and stable
 
double m_clusterEnergy = 0.0
 cluster energy
 
double m_photonEnergy = 0.0
 photon energy
 
double m_clusterE1E9 = 0.0
 energy sum of central crystal over 3x3 array around central crystal
 
int m_clusterDetectorRegion = 0
 cluster detection region
 
double m_clusterErrorTiming = 0.0
 cluster's timing uncertainty containing 99% of true photons
 
double m_clusterMinTrkDistance = 0.0
 distance to closest track
 
double m_clusterDeltaL = 0.0
 delta l
 
std::string m_name
 The name of the module, saved as a string (user-modifiable)
 
std::string m_type
 The type of the module, saved as a string.
 
std::string m_package
 Package this module is found in (may be empty).
 
std::string m_description
 The description of the module.
 
unsigned int m_propertyFlags
 The properties of the module as bitwise or (with |) of EModulePropFlags.
 
LogConfig m_logConfig
 The log system configuration of the module.
 
ModuleParamList m_moduleParamList
 List storing and managing all parameter of the module.
 
bool m_hasReturnValue
 True, if the return value is set.
 
int m_returnValue
 The return value.
 
std::vector< ModuleConditionm_conditions
 Module condition, only non-null if set.
 

Detailed Description

This module takes the MCParticle collection as input and checks if the related reconstructed track is matched to an ECLCluster.

This information as well as some track properties are written out to a root file.

Definition at line 35 of file ECLTrackClusterMatchingPerformanceModule.h.

Member Enumeration Documentation

◆ EModulePropFlags

enum EModulePropFlags
inherited

Each module can be tagged with property flags, which indicate certain features of the module.

Enumerator
c_Input 

This module is an input module (reads data).

c_Output 

This module is an output module (writes data).

c_ParallelProcessingCertified 

This module can be run in parallel processing mode safely (All I/O must be done through the data store, in particular, the module must not write any files.)

c_HistogramManager 

This module is used to manage histograms accumulated by other modules.

c_InternalSerializer 

This module is an internal serializer/deserializer for parallel processing.

c_TerminateInAllProcesses 

When using parallel processing, call this module's terminate() function in all processes().

This will also ensure that there is exactly one process (single-core if no parallel modules found) or at least one input, one main and one output process.

c_DontCollectStatistics 

No statistics is collected for this module.

Definition at line 79 of file Module.h.

Member Function Documentation

◆ beginRun()

virtual void beginRun ( )
inlinevirtualinherited

Called when entering a new run.

Called at the beginning of each run, the method gives you the chance to change run dependent constants like alignment parameters, etc.

This method can be implemented by subclasses.

Reimplemented in DQMHistAnalysisPXDTrackChargeModule, DQMHistOutputToEPICSModule, DQMHistInjectionModule, DQMHistAnalysisRooFitExampleModule, DQMHistAnalysisPXDCMModule, DQMHistAnalysisPXDReductionModule, DQMHistAnalysisPXDChargeModule, DQMHistAnalysisPXDDAQModule, DQMHistAnalysisPXDEffModule, DQMHistAnalysisPXDInjectionModule, DQMHistAnalysisTrackingModule, PXDDigitizerModule, ECLDQMInjectionModule, PXDGatedModeDQMModule, PXDDAQDQMModule, PXDInjectionDQMModule, PXDBgTupleProducerModule, PXDMCBgTupleProducerModule, DQMHistAnalysisSVDDoseModule, SVDDQMInjectionModule, PXDDQMEfficiencySelftrackModule, DQMHistComparitorModule, PXDDQMEfficiencyModule, PyModule, PXDGatedDHCDQMModule, SVDDQMDoseModule, PXDROIFinderAnalysisModule, AlignDQMModule, SVDDQMExpressRecoModule, DQMHistAnalysisInputRootFileModule, SVDDQMClustersOnTrackModule, SVDUnpackerDQMModule, TrackDQMModule, PXDTrackClusterDQMModule, PXDRawDQMModule, PXDclusterFilterModule, PXDdigiFilterModule, DQMHistAnalysisPXDERModule, PXDDQMCorrModule, PXDROIDQMModule, PXDDQMExpressRecoModule, DelayDQMModule, PXDDQMClustersModule, VXDDQMExpressRecoModule, vxdDigitMaskingModule, PXDRawDQMCorrModule, DAQMonitorModule, DQMHistAnalysisIPModule, DQMHistAnalysisEpicsExampleModule, DQMHistAnalysisPXDFitsModule, DQMHistAnalysisExampleFlagsModule, V0ObjectsDQMModule, TRGCDCT3DUnpackerModule, TRGCDCTSFUnpackerModule, TRGGRLUnpackerModule, TRGCDCETFUnpackerModule, MaterialScanModule, TOPUnpackerModule, B2BIIConvertMdstModule, ECLWaveformFitModule, FindletModule< AFindlet >, FindletModule< FacetCreator >, FindletModule< TrackFinderAutomaton >, FindletModule< CKFToCDCFromEclFindlet >, FindletModule< CKFToSVDSeedFindlet >, FindletModule< CKFToCDCFindlet >, FindletModule< AxialTrackCreatorMCTruth >, FindletModule< AxialStraightTrackFinder >, FindletModule< SegmentLinker >, FindletModule< TrackCreatorSegmentTripleAutomaton >, FindletModule< TrackCreatorSegmentPairAutomaton >, FindletModule< SegmentCreatorFacetAutomaton >, FindletModule< SegmentOrienter >, FindletModule< SegmentFinderFacetAutomaton >, FindletModule< CKFToSVDFindlet >, FindletModule< TrackFinderSegmentTripleAutomaton >, FindletModule< TrackRejecter >, FindletModule< SegmentCreatorMCTruth >, FindletModule< TrackFinderCosmics >, FindletModule< SuperClusterCreator >, FindletModule< HitBasedT0Extractor >, FindletModule< AsicBackgroundLibraryCreator >, FindletModule< TrackExporter >, FindletModule< ClusterPreparer >, FindletModule< CosmicsTrackMergerFindlet >, FindletModule< AxialTrackFinderHough >, FindletModule< TrackFinderSegmentPairAutomaton >, FindletModule< TrackLinker >, FindletModule< TrackOrienter >, FindletModule< TrackFinder >, FindletModule< AxialTrackFinderLegendre >, FindletModule< AxialTrackCreatorSegmentHough >, FindletModule< MonopoleAxialTrackFinderLegendre >, FindletModule< ClusterRefiner< BridgingWireHitRelationFilter > >, FindletModule< SegmentPairCreator >, FindletModule< HitReclaimer >, FindletModule< TrackQualityEstimator >, FindletModule< CKFToPXDFindlet >, FindletModule< StereoHitFinder >, FindletModule< TrackCreatorSingleSegments >, FindletModule< TrackFlightTimeAdjuster >, FindletModule< SegmentFitter >, FindletModule< SegmentRejecter >, FindletModule< WireHitPreparer >, FindletModule< SegmentTripleCreator >, FindletModule< SegmentTrackCombiner >, FindletModule< MCVXDCDCTrackMergerFindlet >, FindletModule< MonopoleStereoHitFinder >, FindletModule< TrackCombiner >, FindletModule< AxialSegmentPairCreator >, FindletModule< WireHitBackgroundDetector >, FindletModule< ClusterBackgroundDetector >, FindletModule< CDCTrackingEventLevelMdstInfoFillerFindlet >, FindletModule< MonopoleStereoHitFinderQuadratic >, FindletModule< TrackQualityAsserter >, FindletModule< WireHitCreator >, SVDBackgroundModule, TOPTimeBaseCalibratorModule, TOPTBCComparatorModule, B2BIIFixMdstModule, ECLChargedPIDModule, SVDDigitizerModule, ARICHNtupleModule, ECLDigitizerModule, BeamBkgTagSetterModule, PXDBackgroundModule, ParticleKinematicFitterModule, ECLShowerShapeModule, TOPGainEfficiencyCalculatorModule, SoftwareTriggerModule, ChargedPidMVAModule, ChargedPidMVAMulticlassModule, KLMClustersReconstructorModule, OpticalGunModule, SegmentNetworkProducerModule, TagVertexModule, KLMDQMModule, CDCDedxValidationModule, TOPDQMModule, CDCDQMModule, TOPDigitizerModule, TOPLaserHitSelectorModule, DQMHistAnalysisKLMModule, BKLMDigitAnalyzerModule, TOPModuleT0CalibratorModule, DQMHistAnalysisTRGGDLModule, GearboxModule, KLMUnpackerModule, TOPChannelT0CalibratorModule, TOPCommonT0CalibratorModule, ParticleVertexFitterModule, ECLCRFinderModule, KLMReconstructorModule, SVDUnpackerModule, TOPRawDigitConverterModule, DQMHistAnalysisCDCMonObjModule, ECLDigitizerPureCsIModule, ECLLocalRunCalibratorModule, KLMDigitizerModule, CDCCRTestModule, EKLMDataCheckerModule, TOPReconstructorModule, TrackFinderVXDBasicPathFinderModule, TrackFinderVXDCellOMatModule, ECLDataAnalysisModule, KLMPackerModule, FullSimModule, TOPChannelMaskerModule, TRGGDLUnpackerModule, HLTDQM2ZMQModule, ECLShowerCorrectorModule, MdstPIDModule, SVDCoGTimeEstimatorModule, ARICHDigitizerModule, ARICHDQMModule, BelleMCOutputModule, CsIDigitizerModule, DQMHistAnalysisARICHModule, ECLDQMModule, TOPAlignerModule, ARICHFillHitsModule, ARICHPackerModule, ARICHReconstructorModule, BeamBkgHitRateMonitorModule, BeamBkgMixerModule, CDCCosmicAnalysisModule, CDCUnpackerModule, ECLSplitterN1Module, PXDPerformanceModule, TOPPDFCheckerModule, ARICHRelateModule, CsIStudyModule, CDCPackerModule, DQMHistAnalysisMiraBelleModule, ECLDigitCalibratorModule, ECLDQMEXTENDEDModule, TOPPDFDebuggerModule, ARICHUnpackerModule, BKLMSimHistogrammerModule, SVDROIFinderAnalysisModule, VXDTFTrainingDataCollectorModule, ARICHMCParticlesModule, ARICHRateCalModule, TOPBackgroundModule, TOPTimeRecalibratorModule, TrackFinderMCTruthRecoTracksModule, ReprocessorModule, ECLChargedPIDDataAnalysisModule, ECLChargedPIDDataAnalysisValidationModule, EclDisplayModule, EvtGenDecayModule, EKLMADCModule, SVDDQMHitTimeModule, TOPDoublePulseGeneratorModule, SVDROIFinderModule, TRGCDCT3DConverterModule, TRGGRLMatchModule, BGOverlayExecutorModule, DQMHistAnalysisECLModule, ECLLocalMaximumFinderModule, SoftwareTriggerHLTDQMModule, SVDPackerModule, TOPBunchFinderModule, VXDSimpleClusterizerModule, ARICHRawUnpackerModule, NtuplePhase1_v6Module, TpcDigitizerModule, ExportGeometryModule, KLMClusterEfficiencyModule, CDCDedxDQMModule, SVDLocalCalibrationsMonitorModule, SVDPerformanceModule, TOPCalPulseGeneratorModule, TOPNtupleModule, TOPPackerModule, TOPWaveformFeatureExtractorModule, ExtModule, MCTrackCandClassifierModule, MuidModule, SPTCmomentumSeedRetrieverModule, TrackFinderVXDAnalizerModule, TRGTOPDQMModule, BeamBkgGeneratorModule, DQMHistAnalysisInputPVSrvModule, ECLClusterPSDModule, EventInfoPrinterModule, BKLMTrackingModule, KLMExpertModule, SVDOccupancyAnalysisModule, TOPInterimFENtupleModule, TOPMCTrackMakerModule, BGOverlayInputModule, CDCRecoTrackFilterModule, ECLBackgroundModule, EvtGenInputModule, OverrideGenerationFlagsModule, MCMatcherKLMClustersModule, PIDNtupleModule, SVDDataFormatCheckModule, SPTCvirtualIPRemoverModule, HitXPModule, arichBtestModule, BgoStudyModule, CsiStudy_v2Module, FANGSDigitizerModule, MicrotpcStudyModule, PlumeDigitizerModule, DQMHistAnalysisARICHMonObjModule, PXDClustersFromTracksModule, EventT0DQMModule, TOPXTalkChargeShareSetterModule, PXDROIFinderModule, VXDQualityEstimatorMVAModule, AnalysisPhase1StudyModule, DosiStudyModule, He3tubeStudyModule, ECLCovarianceMatrixModule, ECLFinalizerModule, ECLSplitterN2Module, KKGenInputModule, BKLMAnaModule, SVDLocalCalibrationsCheckModule, SVDClusterEvaluationTrueInfoModule, TOPTriggerDigitizerModule, TrackingPerformanceEvaluationModule, SecMapTrainerVXDTFModule, TRGECLRawdataAnalysisModule, TRGTOPUnpackerModule, BgoDigitizerModule, CsiDigitizer_v2Module, DosiDigitizerModule, TPCStudyModule, PinDigitizerModule, ECLShowerCalibratorModule, ECLUnpackerModule, MVAExpertModule, MVAMultipleExpertsModule, SVDLatencyCalibrationModule, SVDB4CommissioningPlotsModule, SVDClusterEvaluationModule, EffPlotsModule, SecMapTrainerBaseModule, He3DigitizerModule, DQMHistAnalysisMonObjModule, DQMHistSnapshotsModule, MCMatcherECLClustersModule, KlongValidationModule, TOPCosmicT0FinderModule, TrackQualityEstimatorMVAModule, BeamabortStudyModule, ClawStudyModule, ClawsStudyModule, PindiodeStudyModule, QcsmonitorStudyModule, DQMHistAnalysisCDCDedxModule, DQMHistAnalysisHLTMonObjModule, IPDQMExpressRecoModule, PXDRawDQMChipsModule, SVDClusterCalibrationsMonitorModule, SVDMissingAPVsClusterCreatorModule, SectorMapBootstrapModule, CurlTaggerModule, BeamDigitizerModule, ECLPackerModule, EventLimiterModule, RandomBarrierModule, V0findingPerformanceEvaluationModule, DQMHistDeltaHistoModule, StatisticsSummaryModule, MVAPrototypeModule, DataWriterModule, SVDClusterFilterModule, SVDMaxStripTTreeModule, SVDShaperDigitsFromTracksModule, SVD3SamplesEmulatorModule, QualityEstimatorVXDModule, VXDQETrainingDataCollectorModule, MCMatcherTRGECLModule, TRGGDLModule, EventKinematicsModule, ClawDigitizerModule, ClawsDigitizerModule, ECLHitDebugModule, SubEventModule, SVDCoGTimeCalibrationsMonitorModule, SVDHotStripFinderModule, TOPLaserCalibratorModule, BeamSpotMonitorModule, TrackQETrainingDataCollectorModule, CDCTriggerNeuroDQMModule, TRGECLModule, FANGSStudyModule, QcsmonitorDigitizerModule, DQMHistAnalysisTOPModule, TOPChannelT0MCModule, B2BIIConvertBeamParamsModule, ProgressModule, TRGECLFAMModule, B2BIIMdstInputModule, CsiModule, CreateFieldMapModule, TRGGRLModule, DQMHistAnalysisSVDOnMiraBelleModule, Convert2RawDetModule, TRGGRLProjectsModule, TRGCDCModule, DQMHistAnalysisOutputMonObjModule, CosmicsAlignmentValidationModule, TRGCDCTSStreamModule, TRGGDLDQMModule, VXDMisalignmentModule, TreeFitterModule, DQMHistAnalysisInputModule, SwitchDataStoreModule, TRGECLQAMModule, TRGECLTimingCalModule, IoVDependentConditionModule, StatisticsTimingHLTDQMModule, PhysicsObjectsMiraBelleModule, KLMTriggerModule, cdcDQM7Module, DQMHistAnalysisInputSrvModule, SeqRootOutputModule, DQMHistAnalysisEventT0Module, DQMHistAnalysisSVDGeneralModule, PhysicsObjectsMiraBelleDst2Module, PhysicsObjectsMiraBelleDstModule, HistoModule, TxModule, TRGGRLDQMModule, DQMHistAnalysisOutputNSMModule, DQMHistAnalysisPlotOnlyModule, DQMHistAnalysisSVDEfficiencyModule, RxModule, svdDumpModule, B2BIIMCParticlesMonitorModule, DQMHistAnalysisExampleModule, DQMHistAnalysisOutputRelayMsgModule, DQMHistAnalysisOutputFileModule, MCV0MatcherModule, TRGECLDQMModule, DQMHistAnalysisOutputModule, HistoManagerModule, SeqRootInputModule, TRGCDCT2DDQMModule, TRGCDCT3DDQMModule, TRGGDLSummaryModule, PhysicsObjectsDQMModule, TRGCDCTSFDQMModule, TRGGDLDSTModule, CalibrationCollectorModule, DQMHistAnalysisHLTModule, CDCTriggerUnpackerModule, ARICHBackgroundModule, TRGECLUnpackerModule, EvReductionModule, Raw2DsModule, RawInputModule, StorageDeserializerModule, BeamabortModule, BgoModule, CaveModule, ClawModule, CLAWSModule, DosiModule, FANGSModule, He3tubeModule, MicrotpcModule, Ph1bpipeModule, Ph1sustrModule, PindiodeModule, PlumeModule, QcsmonitorModule, SrsensorModule, SerializerModule, FastRbuf2DsModule, Ds2SampleModule, DeSerializerPXDModule, Rbuf2RbufModule, Rbuf2DsModule, TxSocketModule, DqmHistoManagerModule, Ds2RawModule, Ds2RawFileModule, Ds2RbufModule, StorageSerializerModule, GetEventFromSocketModule, ReceiveEventModule, ElapsedTimeModule, GenRawSendModule, MonitorDataCOPPERModule, RxSocketModule, CertifyParallelModule, SeqRootMergerModule, DAQPerfModule, MonitorDataModule, TrackAnaModule, and PartialSeqRootReaderModule.

Definition at line 149 of file Module.h.

◆ clone()

std::shared_ptr< PathElement > clone ( ) const
overridevirtualinherited

Create an independent copy of this module.

Note that parameters are shared, so changing them on a cloned module will also affect the original module.

Implements PathElement.

Definition at line 181 of file Module.cc.

◆ def_endRun()

virtual void def_endRun ( )
inlineprotectedvirtualinherited

This method can receive that the current run ends as a call from the Python side.

For regular C++-Modules that forwards the call to the regular endRun() method.

Reimplemented in PyModule.

Definition at line 441 of file Module.h.

◆ def_initialize()

virtual void def_initialize ( )
inlineprotectedvirtualinherited

Wrappers to make the methods without "def_" prefix callable from Python.

Overridden in PyModule. Wrapper method for the virtual function initialize() that has the implementation to be used in a call from Python.

Reimplemented in PyModule.

Definition at line 422 of file Module.h.

◆ endRun()

virtual void endRun ( )
inlinevirtualinherited

This method is called if the current run ends.

Use this method to store information, which should be aggregated over one run.

This method can be implemented by subclasses.

Reimplemented in DQMHistAnalysisPXDTrackChargeModule, DQMHistOutputToEPICSModule, DQMHistAnalysisRooFitExampleModule, DQMHistAnalysisPXDChargeModule, DQMHistAnalysisSVDDoseModule, PyModule, DQMHistComparitorModule, TrackSetEvaluatorHopfieldNNDEVModule, DQMHistAnalysisInputRootFileModule, AlignDQMModule, SVDUnpackerDQMModule, DQMHistAnalysisPXDERModule, vxdDigitMaskingModule, DQMHistAnalysisEpicsExampleModule, DQMHistAnalysisPXDFitsModule, DQMHistAnalysisExampleFlagsModule, TRGCDCT3DUnpackerModule, TRGCDCTSFUnpackerModule, TRGGRLUnpackerModule, TRGCDCETFUnpackerModule, TOPUnpackerModule, FindletModule< AFindlet >, FindletModule< FacetCreator >, FindletModule< TrackFinderAutomaton >, FindletModule< CKFToCDCFromEclFindlet >, FindletModule< CKFToSVDSeedFindlet >, FindletModule< CKFToCDCFindlet >, FindletModule< AxialTrackCreatorMCTruth >, FindletModule< AxialStraightTrackFinder >, FindletModule< SegmentLinker >, FindletModule< TrackCreatorSegmentTripleAutomaton >, FindletModule< TrackCreatorSegmentPairAutomaton >, FindletModule< SegmentCreatorFacetAutomaton >, FindletModule< SegmentOrienter >, FindletModule< SegmentFinderFacetAutomaton >, FindletModule< CKFToSVDFindlet >, FindletModule< TrackFinderSegmentTripleAutomaton >, FindletModule< TrackRejecter >, FindletModule< SegmentCreatorMCTruth >, FindletModule< TrackFinderCosmics >, FindletModule< SuperClusterCreator >, FindletModule< HitBasedT0Extractor >, FindletModule< AsicBackgroundLibraryCreator >, FindletModule< TrackExporter >, FindletModule< ClusterPreparer >, FindletModule< CosmicsTrackMergerFindlet >, FindletModule< AxialTrackFinderHough >, FindletModule< TrackFinderSegmentPairAutomaton >, FindletModule< TrackLinker >, FindletModule< TrackOrienter >, FindletModule< TrackFinder >, FindletModule< AxialTrackFinderLegendre >, FindletModule< AxialTrackCreatorSegmentHough >, FindletModule< MonopoleAxialTrackFinderLegendre >, FindletModule< ClusterRefiner< BridgingWireHitRelationFilter > >, FindletModule< SegmentPairCreator >, FindletModule< HitReclaimer >, FindletModule< TrackQualityEstimator >, FindletModule< CKFToPXDFindlet >, FindletModule< StereoHitFinder >, FindletModule< TrackCreatorSingleSegments >, FindletModule< TrackFlightTimeAdjuster >, FindletModule< SegmentFitter >, FindletModule< SegmentRejecter >, FindletModule< WireHitPreparer >, FindletModule< SegmentTripleCreator >, FindletModule< SegmentTrackCombiner >, FindletModule< MCVXDCDCTrackMergerFindlet >, FindletModule< MonopoleStereoHitFinder >, FindletModule< TrackCombiner >, FindletModule< AxialSegmentPairCreator >, FindletModule< WireHitBackgroundDetector >, FindletModule< ClusterBackgroundDetector >, FindletModule< CDCTrackingEventLevelMdstInfoFillerFindlet >, FindletModule< MonopoleStereoHitFinderQuadratic >, FindletModule< TrackQualityAsserter >, FindletModule< WireHitCreator >, ECLWaveformFitModule, B2BIIConvertMdstModule, TOPTimeBaseCalibratorModule, TOPTBCComparatorModule, ECLChargedPIDModule, SVDBackgroundModule, ARICHNtupleModule, ECLDigitizerModule, BeamBkgTagSetterModule, TOPGainEfficiencyCalculatorModule, ECLShowerShapeModule, KLMClustersReconstructorModule, OpticalGunModule, ParticleKinematicFitterModule, PXDBackgroundModule, CDCDedxValidationModule, ARICHDigitizerModule, KLMDQMModule, TOPDQMModule, CDCDQMModule, TOPLaserHitSelectorModule, TOPModuleT0CalibratorModule, DQMHistAnalysisKLMModule, DQMHistAnalysisTRGGDLModule, BKLMDigitAnalyzerModule, TOPChannelT0CalibratorModule, TOPCommonT0CalibratorModule, KLMUnpackerModule, TOPRawDigitConverterModule, TOPReconstructorModule, ARICHFillHitsModule, DQMHistAnalysisCDCMonObjModule, KLMReconstructorModule, CDCCRTestModule, KLMDigitizerModule, ECLDigitizerPureCsIModule, EKLMDataCheckerModule, ARICHReconstructorModule, ECLLocalRunCalibratorModule, KLMPackerModule, MdstPIDModule, FullSimModule, ARICHDQMModule, CDCUnpackerModule, DQMHistAnalysisARICHModule, ECLCRFinderModule, TOPAlignerModule, TOPPDFDebuggerModule, ARICHPackerModule, BelleMCOutputModule, BeamBkgMixerModule, CDCPackerModule, TOPBackgroundModule, TOPPDFCheckerModule, ARICHRelateModule, BeamBkgHitRateMonitorModule, CsIDigitizerModule, DQMHistAnalysisMiraBelleModule, ARICHUnpackerModule, ARICHMCParticlesModule, ARICHRateCalModule, CDCCosmicAnalysisModule, ECLShowerCorrectorModule, SVDCoGTimeEstimatorModule, SVDUnpackerModule, SVDROIFinderAnalysisModule, ECLDataAnalysisModule, EclDisplayModule, TOPDoublePulseGeneratorModule, TOPWaveformQualityPlotterModule, BGOverlayExecutorModule, ECLChargedPIDDataAnalysisValidationModule, ECLDigitCalibratorModule, ECLSplitterN1Module, EvtGenDecayModule, EKLMADCModule, SVDROIFinderModule, TRGGDLUnpackerModule, ARICHRawUnpackerModule, NtuplePhase1_v6Module, ECLDQMModule, TOPCalPulseGeneratorModule, TOPNtupleModule, TOPPackerModule, TOPWaveformFeatureExtractorModule, TrackFinderMCTruthRecoTracksModule, VXDTFTrainingDataCollectorModule, BeamBkgGeneratorModule, EventInfoPrinterModule, BKLMSimHistogrammerModule, KLMClusterEfficiencyModule, PXDPerformanceModule, TOPInterimFENtupleModule, TOPMCTrackMakerModule, VXDSimpleClusterizerModule, BGOverlayInputModule, TpcDigitizerModule, ECLDQMEXTENDEDModule, PIDNtupleModule, SPTCvirtualIPRemoverModule, arichBtestModule, ReprocessorModule, CsIStudyModule, ECLChargedPIDDataAnalysisModule, OverrideGenerationFlagsModule, MCMatcherKLMClustersModule, PrintDataModule, SPTCmomentumSeedRetrieverModule, TrackFinderVXDAnalizerModule, TRGGRLMatchModule, DQMHistAnalysisARICHMonObjModule, ECLLocalMaximumFinderModule, CDCDedxDQMModule, FANGSDigitizerModule, CDCRecoTrackFilterModule, ECLClusterPSDModule, SVDLocalCalibrationsMonitorModule, TOPTriggerDigitizerModule, ExtModule, MCTrackCandClassifierModule, MuidModule, HLTDQM2ZMQModule, DQMHistAnalysisECLModule, IPDQMExpressRecoModule, BKLMTrackingModule, TOPCosmicT0FinderModule, HitXPModule, TRGCDCT3DConverterModule, DQMHistAnalysisMonObjModule, ECLBackgroundModule, EventT0DQMModule, SVDDataFormatCheckModule, TRGTOPDQMModule, BgoStudyModule, CsiStudy_v2Module, MicrotpcStudyModule, PlumeDigitizerModule, DQMHistAnalysisCDCDedxModule, DQMHistAnalysisHLTMonObjModule, PXDClustersFromTracksModule, SVDPackerModule, SVDClusterEvaluationTrueInfoModule, TOPXTalkChargeShareSetterModule, SecMapTrainerVXDTFModule, AnalysisPhase1StudyModule, DosiStudyModule, He3tubeStudyModule, ECLCovarianceMatrixModule, ECLFinalizerModule, ECLSplitterN2Module, MCMatcherECLClustersModule, BKLMAnaModule, SVDHotStripFinderModule, SVDPerformanceModule, SecMapTrainerBaseModule, NoKickCutsEvalModule, TRGECLRawdataAnalysisModule, TRGTOPUnpackerModule, BgoDigitizerModule, CsiDigitizer_v2Module, DosiDigitizerModule, TPCStudyModule, PinDigitizerModule, HLTDs2ZMQModule, DQMHistAnalysisInputPVSrvModule, ECLShowerCalibratorModule, SVDLatencyCalibrationModule, SVDOccupancyAnalysisModule, TOPLaserCalibratorModule, PXDROIFinderModule, KlongValidationModule, TrackingPerformanceEvaluationModule, MCMatcherTRGECLModule, BeamabortStudyModule, ClawStudyModule, ClawsStudyModule, PindiodeStudyModule, QcsmonitorStudyModule, ECLHitDebugModule, ECLUnpackerModule, SVDClusterCalibrationsMonitorModule, TOPChannelT0MCModule, EffPlotsModule, CurlTaggerModule, BeamDigitizerModule, He3DigitizerModule, StatisticsSummaryModule, DataWriterModule, SVDB4CommissioningPlotsModule, SVDClusterEvaluationModule, SVDClusterFilterModule, SVDShaperDigitsFromTracksModule, SVD3SamplesEmulatorModule, RT2SPTCConverterModule, SVDROIDQMModule, TRGGDLModule, EventKinematicsModule, ClawDigitizerModule, ClawsDigitizerModule, DQMHistSnapshotsModule, ECLPackerModule, PrintEventRateModule, SVDCoGTimeCalibrationsMonitorModule, V0findingPerformanceEvaluationModule, TRGECLModule, CosmicsAlignmentValidationModule, FANGSStudyModule, QcsmonitorDigitizerModule, SectorMapBootstrapModule, CsiModule, DQMHistDeltaHistoModule, RandomBarrierModule, TRGGRLModule, GenfitVisModule, CDCTriggerNeuroDQMModule, TRGECLFAMModule, TRGGRLProjectsModule, B2BIIMdstInputModule, DQMHistAnalysisTOPModule, SubEventModule, TRGCDCModule, DQMHistAnalysisSVDOnMiraBelleModule, TRGCDCTSStreamModule, Convert2RawDetModule, TRGGDLDQMModule, DQMHistAnalysisOutputMonObjModule, TRGECLQAMModule, TRGECLTimingCalModule, MCV0MatcherModule, DQMHistAnalysisInputModule, cdcDQM7Module, SwitchDataStoreModule, PhysicsObjectsMiraBelleModule, HistoModule, TRGGRLDQMModule, KLMTriggerModule, DQMHistAnalysisEventT0Module, DQMHistAnalysisInputSrvModule, SeqRootOutputModule, DQMHistAnalysisSVDGeneralModule, PhysicsObjectsMiraBelleDst2Module, PhysicsObjectsMiraBelleDstModule, TxModule, B2BIIMCParticlesMonitorModule, DQMHistAnalysisOutputNSMModule, DQMHistAnalysisPlotOnlyModule, DQMHistAnalysisSVDEfficiencyModule, RxModule, Root2BinaryModule, DQMHistAnalysisExampleModule, DQMHistAnalysisOutputRelayMsgModule, svdDumpModule, TRGECLDQMModule, DQMHistAnalysisOutputFileModule, TRGCDCT2DDQMModule, DQMHistAnalysisOutputModule, SeqRootInputModule, TRGCDCT3DDQMModule, TRGGDLSummaryModule, HistoManagerModule, TRGCDCTSFDQMModule, TRGGDLDSTModule, PhysicsObjectsDQMModule, CalibrationCollectorModule, ARICHBackgroundModule, TRGECLUnpackerModule, EvReductionModule, Raw2DsModule, RawInputModule, StorageDeserializerModule, BeamabortModule, BgoModule, CaveModule, ClawModule, CLAWSModule, DosiModule, FANGSModule, He3tubeModule, MicrotpcModule, Ph1bpipeModule, Ph1sustrModule, PindiodeModule, PlumeModule, QcsmonitorModule, SrsensorModule, SerializerModule, FastRbuf2DsModule, Ds2SampleModule, DeSerializerPXDModule, Rbuf2RbufModule, GenRawSendModule, Rbuf2DsModule, TxSocketModule, Ds2RawModule, Ds2RawFileModule, DqmHistoManagerModule, Ds2RbufModule, StorageSerializerModule, GetEventFromSocketModule, ReceiveEventModule, ElapsedTimeModule, MonitorDataCOPPERModule, Root2RawModule, RxSocketModule, CertifyParallelModule, SeqRootMergerModule, DAQPerfModule, MonitorDataModule, TrackAnaModule, and PartialSeqRootReaderModule.

Definition at line 168 of file Module.h.

◆ evalCondition()

bool evalCondition ( ) const
inherited

If at least one condition was set, it is evaluated and true returned if at least one condition returns true.

If no condition or result value was defined, the method returns false. Otherwise, the condition is evaluated and true returned, if at least one condition returns true. To speed up the evaluation, the condition strings were already parsed in the method if_value().

Returns
True if at least one condition and return value exists and at least one condition expression was evaluated to true.

Definition at line 98 of file Module.cc.

◆ event()

void event ( )
overridevirtual

Fill the tree with the event data.


Reimplemented from Module.

Definition at line 64 of file ECLTrackClusterMatchingPerformanceModule.cc.

65 {
66  StoreObjPtr<EventMetaData> eventMetaData("EventMetaData", DataStore::c_Event);
67  m_iEvent = eventMetaData->getEvent();
68  m_iRun = eventMetaData->getRun();
69  m_iExperiment = eventMetaData->getExperiment();
70 
71  for (const ECLCluster& eclCluster : m_eclClusters) {
73  bool found_photon = false, found_mcmatch = false, found_charged_stable = false;
74  // find all MCParticles matched to the ECLCluster
75  const auto& relatedMCParticles = eclCluster.getRelationsWith<MCParticle>();
76  for (unsigned int index = 0; index < relatedMCParticles.size() && (!found_photon || !found_charged_stable); ++index) {
77  const MCParticle* relatedMCParticle = relatedMCParticles.object(index);
78  // check if matched MCParticle is primary photon
79  if (!(isPrimaryMcParticle(*relatedMCParticle))) continue;
80  found_mcmatch = true;
81  // get total energy of MCParticle deposited in this ECLCluster
82  const double weight = relatedMCParticles.weight(index);
83  // check that at least 50% of the generated energy of the particle is contained in this ECLCluster
84  // and check that the total cluster energy is greater than 50% of the energy coming from the particle
85 
87  if (eclCluster.hasHypothesis(ECLCluster::EHypothesisBit::c_neutralHadron)
88  and not eclCluster.hasHypothesis(ECLCluster::EHypothesisBit::c_nPhotons)) {
90  }
91 
92  if (eclCluster.getEnergy(hypo) >= 0.5 * relatedMCParticle->getEnergy()) {
93  if (isChargedStable(*relatedMCParticle) && weight >= 0.5 * relatedMCParticle->getEnergy()) {
94  found_charged_stable = true;
95  } else if (relatedMCParticle->getPDG() == 22 && weight >= 0.5 * eclCluster.getEnergy(hypo) && !found_photon) {
96  found_photon = true;
97  m_photonEnergy = relatedMCParticle->getEnergy();
98  }
99  }
100  }
101  if (found_mcmatch) {
102  if (eclCluster.isTrack()) {
103  m_clusterIsTrack = 1;
104  }
105  m_clusterIsPhoton = int(found_photon);
106  m_clusterIsChargedStable = int(found_charged_stable);
107  m_clusterPhi = eclCluster.getPhi();
108  m_clusterTheta = eclCluster.getTheta();
109  if (eclCluster.hasHypothesis(ECLCluster::EHypothesisBit::c_nPhotons)) {
110  if (eclCluster.hasHypothesis(ECLCluster::EHypothesisBit::c_neutralHadron)) {
111  m_clusterHypothesis = 56;
112  } else {
114  }
116  } else if (eclCluster.hasHypothesis(ECLCluster::EHypothesisBit::c_neutralHadron)) {
119  }
120 
121  m_clusterErrorTiming = eclCluster.getDeltaTime99();
122  m_clusterE1E9 = eclCluster.getE1oE9();
123  m_clusterDetectorRegion = eclCluster.getDetectorRegion();
124  m_clusterMinTrkDistance = eclCluster.getMinTrkDistance();
125  m_clusterDeltaL = eclCluster.getDeltaL();
126  m_clusterTree->Fill();
127  }
128  }
129 
130  for (const MCParticle& mcParticle : m_mcParticles) {
131  // check status of mcParticle
132  if (isPrimaryMcParticle(mcParticle) && isChargedStable(mcParticle) && mcParticle.hasStatus(MCParticle::c_StableInGenerator)) {
134 
135  int pdgCode = mcParticle.getPDG();
136  B2DEBUG(29, "Primary MCParticle has PDG code " << pdgCode);
137  m_trackProperties.pdg_gen = pdgCode;
138 
139  m_trackProperties.cosTheta_gen = mcParticle.getMomentum().CosTheta();
140  m_trackProperties.phi_gen = mcParticle.getMomentum().Phi();
141  m_trackProperties.ptot_gen = mcParticle.getMomentum().Mag();
142  m_trackProperties.pt_gen = mcParticle.getMomentum().Pt();
143  m_trackProperties.px_gen = mcParticle.getMomentum().Px();
144  m_trackProperties.py_gen = mcParticle.getMomentum().Py();
145  m_trackProperties.pz_gen = mcParticle.getMomentum().Pz();
146  m_trackProperties.x_gen = mcParticle.getVertex().X();
147  m_trackProperties.y_gen = mcParticle.getVertex().Y();
148  m_trackProperties.z_gen = mcParticle.getVertex().Z();
149 
150  const Track* b2Track = nullptr;
151  double maximumWeight = -2;
152  // find highest rated Track
153  const auto& relatedTracks = mcParticle.getRelationsWith<Track>();
154  for (unsigned int index = 0; index < relatedTracks.size(); ++index) {
155  const Track* relatedTrack = relatedTracks.object(index);
156  const double weight = relatedTracks.weight(index);
157 
158  if (weight > maximumWeight) {
159  maximumWeight = weight;
160  b2Track = relatedTrack;
161  }
162  }
163 
164  if (b2Track) {
165  const TrackFitResult* fitResult = b2Track->getTrackFitResultWithClosestMass(Const::ChargedStable(std::abs(pdgCode)));
166  B2ASSERT("Related Belle2 Track has no related track fit result!", fitResult);
167 
168  // write some data to the root tree
169  TVector3 mom = fitResult->getMomentum();
170  m_trackProperties.cosTheta = mom.CosTheta();
171  m_trackProperties.phi = mom.Phi();
172  m_trackProperties.ptot = mom.Mag();
173  m_trackProperties.pt = mom.Pt();
174  m_trackProperties.px = mom.Px();
175  m_trackProperties.py = mom.Py();
176  m_trackProperties.pz = mom.Pz();
177  m_trackProperties.x = fitResult->getPosition().X();
178  m_trackProperties.y = fitResult->getPosition().Y();
179  m_trackProperties.z = fitResult->getPosition().Z();
180 
181  m_pValue = fitResult->getPValue();
182  m_charge = (int)fitResult->getChargeSign();
183  m_d0 = fitResult->getD0();
184  m_z0 = fitResult->getZ0();
185 
186  // Count hits
190 
192 
193  const ECLCluster* eclCluster_PhotonHypothesis_track_related = nullptr;
194  const ECLCluster* eclCluster_HadronHypothesis_track_related = nullptr;
195  for (const auto& eclCluster : b2Track->getRelationsTo<ECLCluster>("", m_trackClusterRelationName)) {
196  if (!(eclCluster.isTrack())) continue;
197  if (eclCluster.hasHypothesis(ECLCluster::EHypothesisBit::c_nPhotons)) {
199  m_matchedPhotonHypothesisClusterDetectorRegion = eclCluster.getDetectorRegion();
200  m_matchedPhotonHypothesisClusterTheta = eclCluster.getTheta();
201  m_matchedPhotonHypothesisClusterPhi = eclCluster.getPhi();
202  m_matchedPhotonHypothesisClusterMinTrkDistance = eclCluster.getMinTrkDistance();
203  m_matchedPhotonHypothesisClusterDeltaL = eclCluster.getDeltaL();
204  eclCluster_PhotonHypothesis_track_related = &eclCluster;
205  }
206  if (eclCluster.hasHypothesis(ECLCluster::EHypothesisBit::c_neutralHadron)) {
208  m_matchedHadronHypothesisClusterDetectorRegion = eclCluster.getDetectorRegion();
209  m_matchedHadronHypothesisClusterTheta = eclCluster.getTheta();
210  m_matchedHadronHypothesisClusterPhi = eclCluster.getPhi();
211  m_matchedHadronHypothesisClusterMinTrkDistance = eclCluster.getMinTrkDistance();
212  m_matchedHadronHypothesisClusterDeltaL = eclCluster.getDeltaL();
213  eclCluster_HadronHypothesis_track_related = &eclCluster;
214  }
215  }
216  // find ECLCluster in which the particle has deposited the majority of its energy
217  maximumWeight = -2.;
218  const ECLCluster* eclCluster_matchedBestToMCParticle = nullptr;
219  const auto& relatedECLClusters = mcParticle.getRelationsFrom<ECLCluster>();
220  for (unsigned int index = 0; index < relatedECLClusters.size(); ++index) {
221  const ECLCluster* relatedECLCluster = relatedECLClusters.object(index);
222  if (!relatedECLCluster->hasHypothesis(ECLCluster::EHypothesisBit::c_nPhotons)) continue;
223  const double weight = relatedECLClusters.weight(index);
224  if (weight > maximumWeight) {
225  eclCluster_matchedBestToMCParticle = relatedECLCluster;
226  maximumWeight = weight;
227  }
228  }
229  if (eclCluster_matchedBestToMCParticle != nullptr) {
231  m_mcparticle_cluster_energy = maximumWeight;
232  m_mcparticle_cluster_theta = eclCluster_matchedBestToMCParticle->getTheta();
233  m_mcparticle_cluster_phi = eclCluster_matchedBestToMCParticle->getPhi();
234  m_mcparticle_cluster_detectorregion = eclCluster_matchedBestToMCParticle->getDetectorRegion();
235  if ((eclCluster_PhotonHypothesis_track_related == eclCluster_matchedBestToMCParticle
236  && eclCluster_matchedBestToMCParticle->hasHypothesis(ECLCluster::EHypothesisBit::c_nPhotons))
237  || (eclCluster_HadronHypothesis_track_related == eclCluster_matchedBestToMCParticle
238  && eclCluster_matchedBestToMCParticle->hasHypothesis(ECLCluster::EHypothesisBit::c_neutralHadron))) {
239  m_sameclusters = 1;
240  }
241  }
242  }
243  m_tracksTree->Fill(); // write data to tree
244  }
245  }
246 }

◆ getAfterConditionPath()

Module::EAfterConditionPath getAfterConditionPath ( ) const
inherited

What to do after the conditional path is finished.

(defaults to c_End if no condition is set)

Definition at line 135 of file Module.cc.

◆ getConditionPath()

std::shared_ptr< Path > getConditionPath ( ) const
inherited

Returns the path of the last true condition (if there is at least one, else reaturn a null pointer).


Definition at line 115 of file Module.cc.

◆ getFileNames()

virtual std::vector<std::string> getFileNames ( __attribute__((unused)) bool  outputFiles)
inlinevirtualinherited

Return a list of output filenames for this modules.

This will be called when basf2 is run with "--dry-run" if the module has set either the c_Input or c_Output properties.

If the parameter outputFiles is false (for modules with c_Input) the list of input filenames should be returned (if any). If outputFiles is true (for modules with c_Output) the list of output files should be returned (if any).

If a module has sat both properties this member is called twice, once for each property.

The module should return the actual list of requested input or produced output filenames (including handling of input/output overrides) so that the grid system can handle input/output files correctly.

This function should return the same value when called multiple times. This is especially important when taking the input/output overrides from Environment as they get consumed when obtained so the finalized list of output files should be stored for subsequent calls.

Definition at line 136 of file Module.h.

◆ getName()

const std::string& getName ( ) const
inlineinherited

Returns the name of the module.

This can be changed via e.g. set_name() in the steering file to give more useful names if there is more than one module of the same type.

For identifying the type of a module, using getType() (or type() in Python) is recommended.

Definition at line 189 of file Module.h.

◆ getParamInfoListPython()

std::shared_ptr< boost::python::list > getParamInfoListPython ( ) const
inherited

Returns a python list of all parameters.

Each item in the list consists of the name of the parameter, a string describing its type, a python list of all default values and the description of the parameter.

Returns
A python list containing the parameters of this parameter list.

Definition at line 281 of file Module.cc.

◆ getReturnValue()

int getReturnValue ( ) const
inlineinherited

Return the return value set by this module.

This value is only meaningful if hasReturnValue() is true

Definition at line 383 of file Module.h.

◆ getType()

const std::string & getType ( ) const
inherited

Returns the type of the module (i.e.

class name minus 'Module')

Definition at line 43 of file Module.cc.

◆ hasProperties()

bool hasProperties ( unsigned int  propertyFlags) const
inherited

Returns true if all specified property flags are available in this module.

Parameters
propertyFlagsOred EModulePropFlags which should be compared with the module flags.

Definition at line 162 of file Module.cc.

◆ if_false()

void if_false ( const std::shared_ptr< Path > &  path,
EAfterConditionPath  afterConditionPath = EAfterConditionPath::c_End 
)
inherited

A simplified version to add a condition to the module.

Please note that successive calls of this function will add more than one condition to the module. If more than one condition results in true, only the last of them will be used.

Please be careful: Avoid creating cyclic paths, e.g. by linking a condition to a path which is processed before the path where this module is located in.

It is equivalent to the if_value() method, using the expression "<1". This method is meant to be used together with the setReturnValue(bool value) method.

Parameters
pathShared pointer to the Path which will be executed if the return value is false.
afterConditionPathWhat to do after executing 'path'.

Definition at line 87 of file Module.cc.

◆ if_true()

void if_true ( const std::shared_ptr< Path > &  path,
EAfterConditionPath  afterConditionPath = EAfterConditionPath::c_End 
)
inherited

A simplified version to set the condition of the module.

Please note that successive calls of this function will add more than one condition to the module. If more than one condition results in true, only the last of them will be used.

Please be careful: Avoid creating cyclic paths, e.g. by linking a condition to a path which is processed before the path where this module is located in.

It is equivalent to the if_value() method, using the expression ">=1". This method is meant to be used together with the setReturnValue(bool value) method.

Parameters
pathShared pointer to the Path which will be executed if the return value is true.
afterConditionPathWhat to do after executing 'path'.

Definition at line 92 of file Module.cc.

◆ if_value()

void if_value ( const std::string &  expression,
const std::shared_ptr< Path > &  path,
EAfterConditionPath  afterConditionPath = EAfterConditionPath::c_End 
)
inherited

Add a condition to the module.

Please note that successive calls of this function will add more than one condition to the module. If more than one condition results in true, only the last of them will be used.

See https://confluence.desy.de/display/BI/Software+ModCondTut or ModuleCondition for a description of the syntax.

Please be careful: Avoid creating cyclic paths, e.g. by linking a condition to a path which is processed before the path where this module is located in.

Parameters
expressionThe expression of the condition.
pathShared pointer to the Path which will be executed if the condition is evaluated to true.
afterConditionPathWhat to do after executing 'path'.

Definition at line 81 of file Module.cc.

◆ isChargedStable()

bool isChargedStable ( const MCParticle mcParticle)
private

Tests if MCParticle is a charged stable particle.

Parameters
mcParticletested MCParticle
Returns
: true if MCParticle is charged stable, else false

Definition at line 259 of file ECLTrackClusterMatchingPerformanceModule.cc.

◆ isPrimaryMcParticle()

bool isPrimaryMcParticle ( const MCParticle mcParticle)
private

Tests if MCParticle is a primary one.

Parameters
mcParticletested MCParticle
Returns
: true if MCParticle is a primary, else false is returned

Definition at line 254 of file ECLTrackClusterMatchingPerformanceModule.cc.

◆ setDescription()

void setDescription ( const std::string &  description)
protectedinherited

Sets the description of the module.

Parameters
descriptionA description of the module.

Definition at line 216 of file Module.cc.

◆ setLogInfo()

void setLogInfo ( int  logLevel,
unsigned int  logInfo 
)
inherited

Configure the printed log information for the given level.

Parameters
logLevelThe log level (one of LogConfig::ELogLevel)
logInfoWhat kind of info should be printed? ORed combination of LogConfig::ELogInfo flags.

Definition at line 75 of file Module.cc.

◆ setName()

void setName ( const std::string &  name)
inlineinherited

Set the name of the module.

Note
The module name is set when using the REG_MODULE macro, but the module can be renamed before calling process() using the set_name() function in your steering file.
Parameters
nameThe name of the module

Definition at line 216 of file Module.h.

◆ setParamPython()

void setParamPython ( const std::string &  name,
const boost::python::object &  pyObj 
)
privateinherited

Implements a method for setting boost::python objects.

The method supports the following types: list, dict, int, double, string, bool The conversion of the python object to the C++ type and the final storage of the parameter value is done in the ModuleParam class.

Parameters
nameThe unique name of the parameter.
pyObjThe object which should be converted and stored as the parameter value.

Definition at line 236 of file Module.cc.

◆ setParamPythonDict()

void setParamPythonDict ( const boost::python::dict &  dictionary)
privateinherited

Implements a method for reading the parameter values from a boost::python dictionary.

The key of the dictionary has to be the name of the parameter and the value has to be of one of the supported parameter types.

Parameters
dictionaryThe python dictionary from which the parameter values are read.

Definition at line 251 of file Module.cc.

◆ setPropertyFlags()

void setPropertyFlags ( unsigned int  propertyFlags)
inherited

Sets the flags for the module properties.

Parameters
propertyFlagsbitwise OR of EModulePropFlags

Definition at line 210 of file Module.cc.

◆ setReturnValue() [1/2]

void setReturnValue ( bool  value)
protectedinherited

Sets the return value for this module as bool.

The bool value is saved as an integer with the convention 1 meaning true and 0 meaning false. The value can be used in the steering file to divide the analysis chain into several paths.

Parameters
valueThe value of the return value.

Definition at line 229 of file Module.cc.

◆ setReturnValue() [2/2]

void setReturnValue ( int  value)
protectedinherited

Sets the return value for this module as integer.

The value can be used in the steering file to divide the analysis chain into several paths.

Parameters
valueThe value of the return value.

Definition at line 222 of file Module.cc.

◆ setType()

void setType ( const std::string &  type)
protectedinherited

Set the module type.

Only for use by internal modules (which don't use the normal REG_MODULE mechanism).

Definition at line 50 of file Module.cc.

Member Data Documentation

◆ m_clusterTree

TTree* m_clusterTree {nullptr}
private

root tree containing information on all truth-matched photon clusters.

Tree will be written to the output root file

Definition at line 62 of file ECLTrackClusterMatchingPerformanceModule.h.

◆ m_tracksTree

TTree* m_tracksTree {nullptr}
private

MCParticle based root tree with all output data.

Tree will be written to the output root file

Definition at line 61 of file ECLTrackClusterMatchingPerformanceModule.h.


The documentation for this class was generated from the following files:
Belle2::ECLTrackClusterMatchingPerformanceModule::m_matchedToHadronHypothesisECLCluster
int m_matchedToHadronHypothesisECLCluster
boolean for match between track and ECL cluster with hadron hypothesis
Definition: ECLTrackClusterMatchingPerformanceModule.h:140
Belle2::ECLTrackClusterMatchingPerformanceModule::m_iRun
int m_iRun
Run number.
Definition: ECLTrackClusterMatchingPerformanceModule.h:71
Belle2::ECLTrackClusterMatchingPerformanceModule::m_clusterEnergy
double m_clusterEnergy
cluster energy
Definition: ECLTrackClusterMatchingPerformanceModule.h:164
Belle2::ECLTrackClusterMatchingPerformanceModule::m_mcParticles
StoreArray< MCParticle > m_mcParticles
Required input array of MCParticles.
Definition: ECLTrackClusterMatchingPerformanceModule.h:56
Belle2::MCParticle::getEnergy
float getEnergy() const
Return particle energy in GeV.
Definition: MCParticle.h:158
Belle2::ECLTrackClusterMatchingPerformanceModule::m_eclClusters
StoreArray< ECLCluster > m_eclClusters
Required input array of ECLClusters.
Definition: ECLTrackClusterMatchingPerformanceModule.h:55
Belle2::ECLTrackClusterMatchingPerformanceModule::m_matchedPhotonHypothesisClusterPhi
double m_matchedPhotonHypothesisClusterPhi
phi of cluster with photon hypothesis matched to track
Definition: ECLTrackClusterMatchingPerformanceModule.h:98
Belle2::ECLTrackClusterMatchingPerformanceModule::m_matchedPhotonHypothesisClusterDeltaL
double m_matchedPhotonHypothesisClusterDeltaL
delta l of cluster with photon hypothesis
Definition: ECLTrackClusterMatchingPerformanceModule.h:104
Belle2::ECLTrackClusterMatchingPerformanceModule::m_mcparticle_cluster_match
int m_mcparticle_cluster_match
boolean for match between MCParticle and ECL cluster
Definition: ECLTrackClusterMatchingPerformanceModule.h:134
Belle2::HitPatternVXD::getNPXDHits
unsigned short getNPXDHits() const
Get total number of hits in the PXD.
Definition: HitPatternVXD.cc:147
Belle2::ECLTrackClusterMatchingPerformanceModule::m_sameclusters
int m_sameclusters
boolean whether matched to ECL cluster with highest weight
Definition: ECLTrackClusterMatchingPerformanceModule.h:143
Belle2::ECLTrackClusterMatchingPerformanceModule::m_photonEnergy
double m_photonEnergy
photon energy
Definition: ECLTrackClusterMatchingPerformanceModule.h:167
Belle2::RelationsInterface::getRelationsWith
RelationVector< T > getRelationsWith(const std::string &name="", const std::string &namedRelation="") const
Get the relations between this object and another store array.
Definition: RelationsObject.h:232
Belle2::ECLTrackClusterMatchingPerformanceModule::m_clusterHypothesis
int m_clusterHypothesis
hypothesis ID of cluster
Definition: ECLTrackClusterMatchingPerformanceModule.h:152
Belle2::ECLTrackClusterMatchingPerformanceModule::m_matchedHadronHypothesisClusterMinTrkDistance
double m_matchedHadronHypothesisClusterMinTrkDistance
minimal distance between cluster with hadron hypothesis and track (not necessarily the matched one)
Definition: ECLTrackClusterMatchingPerformanceModule.h:116
Belle2::TrackFitResult::getMomentum
TVector3 getMomentum() const
Getter for vector of momentum at closest approach of track in r/phi projection.
Definition: TrackFitResult.h:116
Belle2::ParticleProperties::py
double py
measured momentum in y direction
Definition: ParticleProperties.h:44
Belle2::ECLCluster
ECL cluster data.
Definition: ECLCluster.h:39
Belle2::ParticleProperties::ptot_gen
double ptot_gen
generated total momentum
Definition: ParticleProperties.h:67
Belle2::ParticleProperties::px
double px
measured momentum in x direction
Definition: ParticleProperties.h:43
Belle2::ParticleProperties::phi_gen
double phi_gen
azimuthal angle of generated momentum vector
Definition: ParticleProperties.h:69
Belle2::ECLCluster::EHypothesisBit
EHypothesisBit
The hypothesis bits for this ECLCluster (Connected region (CR) is split using this hypothesis.
Definition: ECLCluster.h:43
Belle2::ECLTrackClusterMatchingPerformanceModule::m_matchedPhotonHypothesisClusterTheta
double m_matchedPhotonHypothesisClusterTheta
theta of cluster with photon hypothesis matched to track
Definition: ECLTrackClusterMatchingPerformanceModule.h:95
Belle2::ParticleProperties::py_gen
double py_gen
generated momentum in y direction
Definition: ParticleProperties.h:64
Belle2::TrackFitResult::getPValue
double getPValue() const
Getter for Chi2 Probability of the track fit.
Definition: TrackFitResult.h:163
Belle2::ECLTrackClusterMatchingPerformanceModule::m_pValue
double m_pValue
pValue of track fit
Definition: ECLTrackClusterMatchingPerformanceModule.h:77
Belle2::ECLTrackClusterMatchingPerformanceModule::m_clusterTheta
double m_clusterTheta
polar angle of cluster
Definition: ECLTrackClusterMatchingPerformanceModule.h:149
Belle2::ECLTrackClusterMatchingPerformanceModule::m_lastCDCLayer
int m_lastCDCLayer
number of last CDC layer used for track fit
Definition: ECLTrackClusterMatchingPerformanceModule.h:89
Belle2::ECLTrackClusterMatchingPerformanceModule::m_mcparticle_cluster_theta
double m_mcparticle_cluster_theta
theta of cluster matched to MCParticle
Definition: ECLTrackClusterMatchingPerformanceModule.h:125
Belle2::ECLTrackClusterMatchingPerformanceModule::m_clusterErrorTiming
double m_clusterErrorTiming
cluster's timing uncertainty containing 99% of true photons
Definition: ECLTrackClusterMatchingPerformanceModule.h:176
Belle2::ECLTrackClusterMatchingPerformanceModule::m_clusterPhi
double m_clusterPhi
azimuthal angle of cluster
Definition: ECLTrackClusterMatchingPerformanceModule.h:146
Belle2::ECLCluster::getTheta
double getTheta() const
Return Corrected Theta of Shower (radian).
Definition: ECLCluster.h:326
Belle2::ECLCluster::getPhi
double getPhi() const
Return Corrected Phi of Shower (radian).
Definition: ECLCluster.h:323
Belle2::ECLCluster::EHypothesisBit::c_nPhotons
@ c_nPhotons
CR is split into n photons (N1)
Belle2::ECLTrackClusterMatchingPerformanceModule::m_matchedPhotonHypothesisClusterMinTrkDistance
double m_matchedPhotonHypothesisClusterMinTrkDistance
minimal distance between cluster with photon hypothesis and track (not necessarily the matched one)
Definition: ECLTrackClusterMatchingPerformanceModule.h:101
Belle2::ECLTrackClusterMatchingPerformanceModule::m_charge
int m_charge
charge
Definition: ECLTrackClusterMatchingPerformanceModule.h:80
Belle2::ECLCluster::hasHypothesis
bool hasHypothesis(EHypothesisBit bitmask) const
Return if specific hypothesis bit is set.
Definition: ECLCluster.h:374
Belle2::TrackFitResult
Values of the result of a track fit with a given particle hypothesis.
Definition: TrackFitResult.h:59
Belle2::ECLTrackClusterMatchingPerformanceModule::m_matchedToPhotonHypothesisECLCluster
int m_matchedToPhotonHypothesisECLCluster
boolean for match between track and ECL cluster with photon hypothesis
Definition: ECLTrackClusterMatchingPerformanceModule.h:137
Belle2::RelationsInterface::getRelationsTo
RelationVector< TO > getRelationsTo(const std::string &name="", const std::string &namedRelation="") const
Get the relations that point from this object to another store array.
Definition: RelationsObject.h:199
Belle2::TrackFitResult::getPosition
TVector3 getPosition() const
Getter for vector of position at closest approach of track in r/phi projection.
Definition: TrackFitResult.h:109
Belle2::ParticleProperties::pz_gen
double pz_gen
generated momentum in z direction
Definition: ParticleProperties.h:65
Belle2::ECLTrackClusterMatchingPerformanceModule::m_clusterDeltaL
double m_clusterDeltaL
delta l
Definition: ECLTrackClusterMatchingPerformanceModule.h:182
Belle2::TrackFitResult::getHitPatternCDC
HitPatternCDC getHitPatternCDC() const
Getter for the hit pattern in the CDC;.
Definition: TrackFitResult.cc:120
Belle2::TrackFitResult::getZ0
double getZ0() const
Getter for z0.
Definition: TrackFitResult.h:200
Belle2::ECLTrackClusterMatchingPerformanceModule::m_d0
double m_d0
signed distance of the track to the IP in the r-phi plane
Definition: ECLTrackClusterMatchingPerformanceModule.h:83
Belle2::ParticleProperties::px_gen
double px_gen
generated momentum in x direction
Definition: ParticleProperties.h:63
Belle2::ECLTrackClusterMatchingPerformanceModule::m_z0
double m_z0
distance of the track to the IP along the beam axis
Definition: ECLTrackClusterMatchingPerformanceModule.h:86
Belle2::ParticleProperties::pt
double pt
measured transverse momentum
Definition: ParticleProperties.h:46
Belle2::ParticleProperties::nSVDhits
int nSVDhits
Number of SVD hits in reconstructed track
Definition: ParticleProperties.h:55
Belle2::ECLTrackClusterMatchingPerformanceModule::isChargedStable
bool isChargedStable(const MCParticle &mcParticle)
Tests if MCParticle is a charged stable particle.
Definition: ECLTrackClusterMatchingPerformanceModule.cc:259
Belle2::ECLTrackClusterMatchingPerformanceModule::m_mcparticle_cluster_detectorregion
int m_mcparticle_cluster_detectorregion
detector region of cluster matched to MCParticle
Definition: ECLTrackClusterMatchingPerformanceModule.h:122
Belle2::ECLTrackClusterMatchingPerformanceModule::m_clusterDetectorRegion
int m_clusterDetectorRegion
cluster detection region
Definition: ECLTrackClusterMatchingPerformanceModule.h:173
Belle2::ECLTrackClusterMatchingPerformanceModule::m_clusterTree
TTree * m_clusterTree
root tree containing information on all truth-matched photon clusters.
Definition: ECLTrackClusterMatchingPerformanceModule.h:62
Belle2::ParticleProperties::cosTheta
double cosTheta
polar angle of measured momentum vector
Definition: ParticleProperties.h:48
Belle2::ECLTrackClusterMatchingPerformanceModule::m_iEvent
int m_iEvent
Event number.
Definition: ECLTrackClusterMatchingPerformanceModule.h:74
Belle2::Track::getTrackFitResultWithClosestMass
const TrackFitResult * getTrackFitResultWithClosestMass(const Const::ChargedStable &requestedType) const
Return the track fit for a fit hypothesis with the closest mass.
Definition: Track.cc:70
Belle2::StoreObjPtr
Type-safe access to single objects in the data store.
Definition: ParticleList.h:33
Belle2::ECLTrackClusterMatchingPerformanceModule::m_matchedHadronHypothesisClusterTheta
double m_matchedHadronHypothesisClusterTheta
theta of cluster with hadron hypothesis matched to track
Definition: ECLTrackClusterMatchingPerformanceModule.h:110
Belle2::ECLTrackClusterMatchingPerformanceModule::m_matchedPhotonHypothesisClusterDetectorRegion
int m_matchedPhotonHypothesisClusterDetectorRegion
detector region of cluster with photon hypothesis matched to track
Definition: ECLTrackClusterMatchingPerformanceModule.h:92
Belle2::ECLTrackClusterMatchingPerformanceModule::m_tracksTree
TTree * m_tracksTree
MCParticle based root tree with all output data.
Definition: ECLTrackClusterMatchingPerformanceModule.h:61
Belle2::ECLTrackClusterMatchingPerformanceModule::m_matchedHadronHypothesisClusterDeltaL
double m_matchedHadronHypothesisClusterDeltaL
delta l of cluster with hadron hypothesis
Definition: ECLTrackClusterMatchingPerformanceModule.h:119
Belle2::MCParticle::getPDG
int getPDG() const
Return PDG code of particle.
Definition: MCParticle.h:123
Belle2::ECLTrackClusterMatchingPerformanceModule::setClusterVariablesToDefaultValue
void setClusterVariablesToDefaultValue()
sets cluster related variables to default values
Definition: ECLTrackClusterMatchingPerformanceModule.cc:430
Belle2::ECLTrackClusterMatchingPerformanceModule::m_mcparticle_cluster_energy
double m_mcparticle_cluster_energy
amount of particle energy contained in cluster matched to MCParticle
Definition: ECLTrackClusterMatchingPerformanceModule.h:131
Belle2::RelationsInterface::getRelationsFrom
RelationVector< FROM > getRelationsFrom(const std::string &name="", const std::string &namedRelation="") const
Get the relations that point from another store array to this object.
Definition: RelationsObject.h:214
Belle2::ECLTrackClusterMatchingPerformanceModule::m_clusterIsPhoton
int m_clusterIsPhoton
cluster fulfills requirements for being product of a photon
Definition: ECLTrackClusterMatchingPerformanceModule.h:158
Belle2::ParticleProperties::y
double y
measured y value of position
Definition: ParticleProperties.h:51
Belle2::ParticleProperties::nCDChits
int nCDChits
Number of CDC hits in reconstructed track
Definition: ParticleProperties.h:56
Belle2::ECLCluster::EHypothesisBit::c_neutralHadron
@ c_neutralHadron
CR is reconstructed as a neutral hadron (N2)
Belle2::ECLTrackClusterMatchingPerformanceModule::m_clusterE1E9
double m_clusterE1E9
energy sum of central crystal over 3x3 array around central crystal
Definition: ECLTrackClusterMatchingPerformanceModule.h:170
Belle2::ECLTrackClusterMatchingPerformanceModule::m_clusterIsTrack
int m_clusterIsTrack
cluster is matched to track
Definition: ECLTrackClusterMatchingPerformanceModule.h:155
Belle2::ParticleProperties::pdg_gen
int pdg_gen
PDG code of generated particle.
Definition: ParticleProperties.h:61
Belle2::ECLTrackClusterMatchingPerformanceModule::m_mcparticle_cluster_phi
double m_mcparticle_cluster_phi
phi of cluster matched to MCParticle
Definition: ECLTrackClusterMatchingPerformanceModule.h:128
Belle2::TrackFitResult::getHitPatternVXD
HitPatternVXD getHitPatternVXD() const
Getter for the hit pattern in the VXD;.
Definition: TrackFitResult.cc:125
Belle2::ECLTrackClusterMatchingPerformanceModule::m_trackClusterRelationName
std::string m_trackClusterRelationName
name of relation array between tracks and ECL clusters
Definition: ECLTrackClusterMatchingPerformanceModule.h:52
Belle2::ParticleProperties::y_gen
double y_gen
y value of generated position
Definition: ParticleProperties.h:71
Belle2::MCParticle::c_StableInGenerator
@ c_StableInGenerator
bit 1: Particle is stable, i.e., not decaying in the generator.
Definition: MCParticle.h:60
Belle2::ParticleProperties::pt_gen
double pt_gen
generated transverse momentum
Definition: ParticleProperties.h:66
Belle2::ECLTrackClusterMatchingPerformanceModule::isPrimaryMcParticle
bool isPrimaryMcParticle(const MCParticle &mcParticle)
Tests if MCParticle is a primary one.
Definition: ECLTrackClusterMatchingPerformanceModule.cc:254
Belle2::ParticleProperties::nPXDhits
int nPXDhits
Number of PXD hits in reconstructed track
Definition: ParticleProperties.h:54
Belle2::ECLTrackClusterMatchingPerformanceModule::m_clusterIsChargedStable
int m_clusterIsChargedStable
cluster has related MCParticle which is charged and stable
Definition: ECLTrackClusterMatchingPerformanceModule.h:161
Belle2::ParticleProperties::cosTheta_gen
double cosTheta_gen
polar angle of generated momentum vector
Definition: ParticleProperties.h:68
Belle2::Const::ChargedStable
Provides a type-safe way to pass members of the chargedStableSet set.
Definition: Const.h:465
Belle2::HitPatternCDC::getLastLayer
short getLastLayer() const
Returns the index of the last layer with a hit.
Definition: HitPatternCDC.cc:106
Belle2::ParticleProperties::phi
double phi
azimuthal angle of measured momentum vector
Definition: ParticleProperties.h:49
Belle2::ECLTrackClusterMatchingPerformanceModule::m_matchedHadronHypothesisClusterPhi
double m_matchedHadronHypothesisClusterPhi
phi of cluster with hadron hypothesis matched to track
Definition: ECLTrackClusterMatchingPerformanceModule.h:113
Belle2::ECLTrackClusterMatchingPerformanceModule::setVariablesToDefaultValue
void setVariablesToDefaultValue()
Sets all variables to the default value, here -999.
Definition: ECLTrackClusterMatchingPerformanceModule.cc:381
Belle2::HitPatternCDC::getNHits
unsigned short getNHits() const
Get the total Number of CDC hits in the fit.
Definition: HitPatternCDC.cc:49
Belle2::HitPatternVXD::getNSVDHits
unsigned short getNSVDHits() const
Get total number of hits in the SVD.
Definition: HitPatternVXD.cc:83
Belle2::Track
Class that bundles various TrackFitResults.
Definition: Track.h:35
Belle2::MCParticle
A Class to store the Monte Carlo particle information.
Definition: MCParticle.h:43
Belle2::ECLCluster::getDetectorRegion
int getDetectorRegion() const
Return detector region: 0: below acceptance, 1: FWD, 2: BRL, 3: BWD, 11: FWDGAP, 13: BWDGAP.
Definition: ECLCluster.cc:68
Belle2::DataStore::c_Event
@ c_Event
Different object in each event, all objects/arrays are invalidated after event() function has been ca...
Definition: DataStore.h:61
Belle2::ECLTrackClusterMatchingPerformanceModule::m_clusterMinTrkDistance
double m_clusterMinTrkDistance
distance to closest track
Definition: ECLTrackClusterMatchingPerformanceModule.h:179
Belle2::ParticleProperties::x
double x
measured x value of position
Definition: ParticleProperties.h:50
Belle2::ECLTrackClusterMatchingPerformanceModule::m_matchedHadronHypothesisClusterDetectorRegion
int m_matchedHadronHypothesisClusterDetectorRegion
detector region of cluster with hadron hypothesis matched to track
Definition: ECLTrackClusterMatchingPerformanceModule.h:107
Belle2::ECLTrackClusterMatchingPerformanceModule::m_trackProperties
ParticleProperties m_trackProperties
properties of a reconstructed track
Definition: ECLTrackClusterMatchingPerformanceModule.h:65
Belle2::ParticleProperties::z_gen
double z_gen
z value of generated position
Definition: ParticleProperties.h:72
Belle2::ECLTrackClusterMatchingPerformanceModule::m_iExperiment
int m_iExperiment
Experiment number.
Definition: ECLTrackClusterMatchingPerformanceModule.h:68
Belle2::ParticleProperties::ptot
double ptot
measured total momentum
Definition: ParticleProperties.h:47
Belle2::ParticleProperties::x_gen
double x_gen
x value of generated position
Definition: ParticleProperties.h:70
Belle2::ParticleProperties::pz
double pz
measured momentum in z direction
Definition: ParticleProperties.h:45
Belle2::TrackFitResult::getChargeSign
short getChargeSign() const
Return track charge (1 or -1).
Definition: TrackFitResult.h:160
Belle2::ParticleProperties::z
double z
measured z value of position
Definition: ParticleProperties.h:52
Belle2::TrackFitResult::getD0
double getD0() const
Getter for d0.
Definition: TrackFitResult.h:178