Belle II Software  release-05-02-19
VXDSimpleClusterizerModule.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2010 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Jakob Lettenbichler *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 #pragma once
12 
13 
14 #include <framework/core/Module.h>
15 #include <framework/datastore/StoreArray.h>
16 
17 #include <mdst/dataobjects/MCParticle.h>
18 
19 #include <pxd/dataobjects/PXDTrueHit.h>
20 #include <svd/dataobjects/SVDTrueHit.h>
21 #include <pxd/dataobjects/PXDCluster.h>
22 #include <svd/dataobjects/SVDCluster.h>
23 
24 namespace Belle2 {
37  class VXDSimpleClusterizerModule : public Module {
38 
39  public:
40 
47 
51  void initialize() override;
52 
55  void beginRun() override;
56 
60  void event() override;
61 
64  void endRun() override;
65 
67  void InitializeVariables()
68  {
69  m_weakSVDHitCtr = 0;
70  m_weakPXDHitCtr = 0;
71  m_fakeSVDHitCtr = 0;
72  m_fakePXDHitCtr = 0;
73  }
74 
75  protected:
76  std::string m_pxdTrueHitsName;
79  std::string m_svdTrueHitsName;
82  std::string m_mcParticlesName;
85  std::string m_pxdClustersName;
88  std::string m_svdClustersName;
94  double m_energyThreshold;
96  double m_uniSigma;
97  double m_setMeasSigma;
99  int m_weakPXDHitCtr;
103  };
105 } // end namespace Belle2
Belle2::VXDSimpleClusterizerModule::m_weakSVDHitCtr
int m_weakSVDHitCtr
counts SVDHits whose energy deposit is lower than energyThreshold
Definition: VXDSimpleClusterizerModule.h:106
Belle2::VXDSimpleClusterizerModule::m_svdClustersName
std::string m_svdClustersName
SVDCluster collection name.
Definition: VXDSimpleClusterizerModule.h:96
Belle2::VXDSimpleClusterizerModule::m_energyThreshold
double m_energyThreshold
set energy threshold for PXDClusters in GeV (standard is 7E-6)
Definition: VXDSimpleClusterizerModule.h:102
Belle2::VXDSimpleClusterizerModule::m_uniSigma
double m_uniSigma
you can define the sigma of the smearing.
Definition: VXDSimpleClusterizerModule.h:104
Belle2::VXDSimpleClusterizerModule::m_svdClusters
StoreArray< SVDCluster > m_svdClusters
the storeArray for svdClusters as member, is faster than recreating link for each event
Definition: VXDSimpleClusterizerModule.h:98
Belle2::VXDSimpleClusterizerModule::VXDSimpleClusterizerModule
VXDSimpleClusterizerModule()
Constructor of the module.
Definition: VXDSimpleClusterizerModule.cc:38
Belle2::VXDSimpleClusterizerModule::m_pxdClustersName
std::string m_pxdClustersName
PXDCluster collection name.
Definition: VXDSimpleClusterizerModule.h:93
Belle2::VXDSimpleClusterizerModule::InitializeVariables
void InitializeVariables()
initialize variables to avoid nondeterministic behavior
Definition: VXDSimpleClusterizerModule.h:75
Belle2::VXDSimpleClusterizerModule::initialize
void initialize() override
Initialize the Module.
Definition: VXDSimpleClusterizerModule.cc:73
Belle2::VXDSimpleClusterizerModule::m_setMeasSigma
double m_setMeasSigma
if positive value (in cm) is given it will be used as the sigma to smear the Clusters otherwise pitch...
Definition: VXDSimpleClusterizerModule.h:105
Belle2::VXDSimpleClusterizerModule::m_fakePXDHitCtr
int m_fakePXDHitCtr
counts PXDHits which were not caused by a primary partice
Definition: VXDSimpleClusterizerModule.h:109
Belle2::VXDSimpleClusterizerModule::m_fakeSVDHitCtr
int m_fakeSVDHitCtr
counts SVDHits which were not caused by a primary partice
Definition: VXDSimpleClusterizerModule.h:108
Belle2::VXDSimpleClusterizerModule::m_pxdTrueHitsName
std::string m_pxdTrueHitsName
PXDTrueHit collection name.
Definition: VXDSimpleClusterizerModule.h:84
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::VXDSimpleClusterizerModule::endRun
void endRun() override
This method is called if the current run ends.
Definition: VXDSimpleClusterizerModule.cc:347
Belle2::VXDSimpleClusterizerModule::m_onlyPrimaries
bool m_onlyPrimaries
set True if you do not want to have hits by secondary particles
Definition: VXDSimpleClusterizerModule.h:103
Belle2::VXDSimpleClusterizerModule::m_svdTrueHitsName
std::string m_svdTrueHitsName
SVDTrueHit collection name.
Definition: VXDSimpleClusterizerModule.h:87
Belle2::VXDSimpleClusterizerModule::m_weakPXDHitCtr
int m_weakPXDHitCtr
counts PXDHits whose energy deposit is lower than energyThreshold
Definition: VXDSimpleClusterizerModule.h:107
Belle2::VXDSimpleClusterizerModule::m_energyThresholdU
double m_energyThresholdU
set energy threshold for SVDClusters in u-direction in GeV (standard is 17.4E-6)
Definition: VXDSimpleClusterizerModule.h:100
Belle2::VXDSimpleClusterizerModule::event
void event() override
This method is the core of the module.
Definition: VXDSimpleClusterizerModule.cc:128
Belle2::VXDSimpleClusterizerModule::m_mcParticlesName
std::string m_mcParticlesName
MCParticle collection name.
Definition: VXDSimpleClusterizerModule.h:90
Belle2::VXDSimpleClusterizerModule::m_mcParticles
StoreArray< MCParticle > m_mcParticles
the storeArray for mcParticles as member, is faster than recreating link for each event
Definition: VXDSimpleClusterizerModule.h:92
Belle2::StoreArray
Accessor to arrays stored in the data store.
Definition: ECLMatchingPerformanceExpertModule.h:33
Belle2::VXDSimpleClusterizerModule::m_energyThresholdV
double m_energyThresholdV
set energy threshold for SVDClusters in v-direction in GeV (standard is 28.6E-6)
Definition: VXDSimpleClusterizerModule.h:101
Belle2::VXDSimpleClusterizerModule::beginRun
void beginRun() override
Called when entering a new run.
Definition: VXDSimpleClusterizerModule.cc:113
Belle2::VXDSimpleClusterizerModule::m_pxdClusters
StoreArray< PXDCluster > m_pxdClusters
the storeArray for pxdClusters as member, is faster than recreating link for each event
Definition: VXDSimpleClusterizerModule.h:95
Belle2::VXDSimpleClusterizerModule::m_svdTrueHits
StoreArray< SVDTrueHit > m_svdTrueHits
the storeArray for svdTrueHits as member, is faster than recreating link for each event
Definition: VXDSimpleClusterizerModule.h:89
Belle2::VXDSimpleClusterizerModule::m_pxdTrueHits
StoreArray< PXDTrueHit > m_pxdTrueHits
the storeArray for pxdTrueHits as member, is faster than recreating link for each event
Definition: VXDSimpleClusterizerModule.h:86