 |
Belle II Software
release-05-02-19
|
13 #include <framework/core/Module.h>
14 #include <TMatrixDSym.h>
39 class TrackFinderMCTruthRecoTracksModule :
public Module {
61 void event()
override;
74 template<
class THit,
class TSimHit>
87 std::vector<std::string>
bool m_usePXDHits
Boolean to select if PXDHits should be used.
int m_minCDCAxialHits
Minimum number of CDC hits from axial wires per track to allow track candidate creation.
int m_notEnoughtHitsCounter
will hold number of tracks that do not have enough hits to form a track candidate (total NDF less tha...
int m_minCDCStereoHits
Minimum number of CDC hits from stereo wires per track to allow track candidate creation.
bool m_allowFirstCDCSuperLayerOnly
Boolean to allow tracks to pass the stereo hit requirement if they touched only the first (axial) CDC...
bool m_mergeDecayInFlight
Boolean to merge decay in flight chains that involve a single charged particle.
bool m_useOnlyBeforeTOP
Boolean to select if CDC hits after TOP detector are discarded.
bool isWithinNLoops(double Bz, const THit *aHit, double nLoops)
helper function which returns true if the current hit is within n loops the template give the hit typ...
bool m_useSecondCDCHits
Also includes the CDC 2nd hit information in the mc tracks.
void event() override
This method is the core of the module.
int m_minSVDHits
Minimum number of SVD hits per track to allow track candidate creation.
std::vector< double > m_smearingCov
Covariance matrix used to smear the true pos and mom before passed to track candidate.
bool m_setTimeSeed
Boolean to forward the production time as seed time.
int m_particleProperties
Internal encoding of m_whichParticles to avoid string comparisons.
bool m_useCDCHits
Boolean to select if CDCHits should be used.
bool m_discardAuxiliaryHits
if true hits marked as auxiliary will not be included in the RecoTrack
std::vector< int > m_fromPdgCodes
if size() is not 0, only for particles having an ancestor (mother or mother of mother etc) with PDG c...
double m_splitAfterDeltaT
Minimal time delay between two sim hits (in ns) after which MC reco track will be split into seperate...
double m_energyCut
Create track candidates only for MCParticles with energy above this cut.
bool m_useReassignedHits
Boolean to select the inclusion of hits form discarded secondary daughters.
bool m_neutrals
Boolean to mark if track candidates should also be created for neutral particles.
int m_noTrueHitCounter
will hold number of cluster hits that do not have a corresponding true hit
Abstract base class for different kinds of events.
std::string m_recoTracksStoreArrayName
RecoTracks StoreArray name.
void initialize() override
Initialize the Module.
void endRun() override
This method is called if the current run ends.
TMatrixDSym m_initialCov
The std::vector m_smearingCov will be translated into this TMatrixD.
int m_minimalNdf
Minimum number of total hits per track to allow track candidate creation.
void beginRun() override
Called when entering a new run.
bool m_enforceTrueHit
If set true only cluster hits that have a relation to a TrueHit will be included in the track candida...
std::vector< std::string > m_whichParticles
List of keywords to mark what properties particles must have to get a track candidate .
int m_nRecoTracks
will hold the total number of created track candidates
float m_useNLoops
Number of loops to include in the MC tracks - effects only CDC.
std::vector< int > m_particlePdgCodes
if size() is not 0, only for particles with PDG codes same as in this vector a track candidate will b...
TrackFinderMCTruthRecoTracksModule()
Constructor of the module.
bool m_useSVDHits
Boolean to select if SVDHits should be used.
double m_smearing
Smearing of MCMomentum and MCVertex in %.
bool m_useOnlyAxialCDCHits
Boolean to select if only axial CDCHits should be used.
bool m_mcParticlesPresent
This flag is set to false if there are no MC Particles in the data store (probably data run?...
int m_minPXDHits
Minimum number of PXD hits per track to allow track candidate creation.