Belle II Software  release-05-02-19
DATCONSVDSimpleClusterizerModule.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2010 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Giulia Casarosa *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 #pragma once
12 
13 #include <framework/core/Module.h>
14 #include <framework/datastore/StoreArray.h>
15 
16 #include <mdst/dataobjects/MCParticle.h>
17 
18 #include <svd/dataobjects/SVDTrueHit.h>
19 #include <svd/dataobjects/SVDCluster.h>
20 
21 #include <tracking/modules/DATCON/DATCONSVDSimpleClusterCandidate.h>
22 #include <tracking/dataobjects/DATCONSVDDigit.h>
23 
24 namespace Belle2 {
40  class DATCONSVDSimpleClusterizerModule : public Module {
41 
42  public:
43 
46 
48  virtual ~DATCONSVDSimpleClusterizerModule() = default;
49 
51  virtual void initialize() override;
52 
54  virtual void event() override;
55 
56 
57  protected:
58 
59  // Data members
60  //1. Collections and relations
64  std::string m_storeDATCONSVDClustersName;
66  std::string m_storeTrueHitsName;
68  std::string m_storeMCParticlesName;
69 
78 
79 
80  // 2. Clustering
81 // void writeClusters(DATCONSVDSimpleClusterCandidate clusterCand);
82 
84  void saveClusters();
85 
87  bool noiseFilter(DATCONSVDDigit datconsvddigit);
88 
90  unsigned short m_NoiseLevelInADU;
91 
93  unsigned short m_NoiseCutInADU;
94 
97 
99  std::vector<DATCONSVDSimpleClusterCandidate> clusterCandidates;
100 
102  unsigned short m_maxClusterSize;
103 
104  };//end class declaration
105 
107 } // end namespace Belle2
108 
Belle2::DATCONSVDSimpleClusterizerModule::noiseFilter
bool noiseFilter(DATCONSVDDigit datconsvddigit)
Perform an easy noise filtering for the given datconsvddigit.
Definition: DATCONSVDSimpleClusterizerModule.cc:223
Belle2::DATCONSVDSimpleClusterizerModule::event
virtual void event() override
do the clustering
Definition: DATCONSVDSimpleClusterizerModule.cc:84
Belle2::DATCONSVDSimpleClusterizerModule::m_storeDATCONSVDClustersName
std::string m_storeDATCONSVDClustersName
Name of the collection to use for the SVDClusters.
Definition: DATCONSVDSimpleClusterizerModule.h:72
Belle2::DATCONSVDSimpleClusterizerModule::clusterCandidates
std::vector< DATCONSVDSimpleClusterCandidate > clusterCandidates
Vector containing all cluster candidates that will might be stored.
Definition: DATCONSVDSimpleClusterizerModule.h:107
Belle2::DATCONSVDSimpleClusterizerModule::DATCONSVDSimpleClusterizerModule
DATCONSVDSimpleClusterizerModule()
Constructor defining the parameters.
Definition: DATCONSVDSimpleClusterizerModule.cc:28
Belle2::DATCONSVDSimpleClusterizerModule::m_useSimpleClustering
bool m_useSimpleClustering
Variable indicating whether simple clustering should be used, default: true.
Definition: DATCONSVDSimpleClusterizerModule.h:104
Belle2::DATCONSVDSimpleClusterizerModule::~DATCONSVDSimpleClusterizerModule
virtual ~DATCONSVDSimpleClusterizerModule()=default
Deconstructor.
Belle2::DATCONSVDSimpleClusterizerModule::m_storeTrueHitsName
std::string m_storeTrueHitsName
Name of the collection to use for the SVDTrueHits.
Definition: DATCONSVDSimpleClusterizerModule.h:74
Belle2::DATCONSVDSimpleClusterizerModule::storeTrueHits
StoreArray< SVDTrueHit > storeTrueHits
StoreArray of the SVDTrueHits.
Definition: DATCONSVDSimpleClusterizerModule.h:83
Belle2::DATCONSVDSimpleClusterizerModule::m_maxClusterSize
unsigned short m_maxClusterSize
Maximum cluster size in strips.
Definition: DATCONSVDSimpleClusterizerModule.h:110
Belle2::DATCONSVDDigit
The DATCONSVDDigit class.
Definition: DATCONSVDDigit.h:44
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::DATCONSVDSimpleClusterizerModule::m_storeDATCONSVDDigitsListName
std::string m_storeDATCONSVDDigitsListName
Name of the collection to use for the SVDRecoDigits.
Definition: DATCONSVDSimpleClusterizerModule.h:70
Belle2::DATCONSVDSimpleClusterizerModule::storeDATCONSVDCluster
StoreArray< SVDCluster > storeDATCONSVDCluster
StoreArray of the DATCONSimpleSVDClusters.
Definition: DATCONSVDSimpleClusterizerModule.h:79
Belle2::DATCONSVDSimpleClusterizerModule::saveClusters
void saveClusters()
Save cluster candidates as DATCONSimpleSVDCluster.
Definition: DATCONSVDSimpleClusterizerModule.cc:155
Belle2::DATCONSVDSimpleClusterizerModule::storeMCParticles
StoreArray< MCParticle > storeMCParticles
StoreArray of the MCParticles.
Definition: DATCONSVDSimpleClusterizerModule.h:85
Belle2::DATCONSVDSimpleClusterizerModule::m_storeMCParticlesName
std::string m_storeMCParticlesName
Name of the collection to use for the MCParticles.
Definition: DATCONSVDSimpleClusterizerModule.h:76
Belle2::DATCONSVDSimpleClusterizerModule::m_NoiseLevelInADU
unsigned short m_NoiseLevelInADU
Simple way to check for noisy strips / noise signals.
Definition: DATCONSVDSimpleClusterizerModule.h:98
Belle2::DATCONSVDSimpleClusterizerModule::storeDATCONSVDDigits
StoreArray< DATCONSVDDigit > storeDATCONSVDDigits
StoreArray of the DATCONSVDDigits.
Definition: DATCONSVDSimpleClusterizerModule.h:81
Belle2::StoreArray< SVDCluster >
Belle2::DATCONSVDSimpleClusterizerModule::m_NoiseCutInADU
unsigned short m_NoiseCutInADU
NoiseCut in ADU.
Definition: DATCONSVDSimpleClusterizerModule.h:101
Belle2::DATCONSVDSimpleClusterizerModule::initialize
virtual void initialize() override
Initialize the module.
Definition: DATCONSVDSimpleClusterizerModule.cc:57