Belle II Software  release-05-02-19
TOPPDFDebuggerModule.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2018 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Jan strube, Marko Staric *
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/Track.h>
17 #include <top/dataobjects/TOPDigit.h>
18 #include <top/dataobjects/TOPPDFCollection.h>
19 #include <top/dataobjects/TOPAssociatedPDF.h>
20 
21 #include <string>
22 #include <top/reconstruction/TOPreco.h>
23 
24 namespace Belle2 {
33  class TOPPDFDebuggerModule : public Module {
34 
35  public:
36 
41 
45  virtual ~TOPPDFDebuggerModule();
46 
52  virtual void initialize() override;
53 
59  virtual void beginRun() override;
60 
65  virtual void event() override;
66 
72  virtual void endRun() override;
73 
79  virtual void terminate() override;
80 
81 
82  private:
83 
87  void associatePDFPeaks(const TOP::TOPreco& reco, int moduleID, int pdg);
88 
89  // Module steering parameters
90  double m_minBkgPerBar = 0;
91  double m_scaleN0 = 0;
92  double m_maxTime = 0;
93  double m_minTime = 0;
94  // int m_writeNPdfs = 0; /**< write out pdfs for the first N events */
95  // int m_writeNPulls = 0; /**< write out pulls for the furst N events */
96  std::string m_pdfOption;
97  std::vector<int> m_pdgCodes;
99  // others
100  int m_debugLevel = 0;
101  long long m_iEvent = -1;
102  TOP::TOPreco::PDFoption m_PDFOption = TOP::TOPreco::c_Rough;
104  // Masses of particle hypotheses
105 
106  std::vector<double> m_masses;
108  // collections
109 
115  };
116 
118 } // Belle2 namespace
119 
Belle2::TOPPDFDebuggerModule::m_tracks
StoreArray< Track > m_tracks
collection of tracks
Definition: TOPPDFDebuggerModule.h:121
Belle2::TOPPDFDebuggerModule::m_PDFOption
TOP::TOPreco::PDFoption m_PDFOption
PDF option.
Definition: TOPPDFDebuggerModule.h:110
Belle2::TOPPDFDebuggerModule::m_debugLevel
int m_debugLevel
debug level from logger
Definition: TOPPDFDebuggerModule.h:108
Belle2::TOPPDFDebuggerModule::event
virtual void event() override
Event processor.
Definition: TOPPDFDebuggerModule.cc:153
Belle2::TOPPDFDebuggerModule::terminate
virtual void terminate() override
Termination action.
Definition: TOPPDFDebuggerModule.cc:282
Belle2::TOPPDFDebuggerModule::m_masses
std::vector< double > m_masses
particle masses
Definition: TOPPDFDebuggerModule.h:114
Belle2::TOPPDFDebuggerModule::m_maxTime
double m_maxTime
optional time limit for photons
Definition: TOPPDFDebuggerModule.h:100
Belle2::TOPPDFDebuggerModule::beginRun
virtual void beginRun() override
Called when entering a new run.
Definition: TOPPDFDebuggerModule.cc:149
Belle2::TOPPDFDebuggerModule::m_associatedPDFs
StoreArray< TOPAssociatedPDF > m_associatedPDFs
collection of associated PDF's
Definition: TOPPDFDebuggerModule.h:119
Belle2::TOP::TOPreco
TOP reconstruction: this class provides interface to fortran code.
Definition: TOPreco.h:36
Belle2::TOPPDFDebuggerModule::TOPPDFDebuggerModule
TOPPDFDebuggerModule()
Constructor.
Definition: TOPPDFDebuggerModule.cc:54
Belle2::TOPPDFDebuggerModule::endRun
virtual void endRun() override
End-of-run action.
Definition: TOPPDFDebuggerModule.cc:278
Belle2::TOPPDFDebuggerModule::m_pdgCodes
std::vector< int > m_pdgCodes
particle codes
Definition: TOPPDFDebuggerModule.h:105
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::TOPPDFDebuggerModule::m_scaleN0
double m_scaleN0
scale factor for N0
Definition: TOPPDFDebuggerModule.h:99
Belle2::TOPPDFDebuggerModule::associatePDFPeaks
void associatePDFPeaks(const TOP::TOPreco &reco, int moduleID, int pdg)
Associate PDF peaks with photons using S-plot technique.
Definition: TOPPDFDebuggerModule.cc:225
Belle2::TOPPDFDebuggerModule::m_pdfCollection
StoreArray< TOPPDFCollection > m_pdfCollection
collection of analytic PDF's
Definition: TOPPDFDebuggerModule.h:118
Belle2::TOPPDFDebuggerModule::m_iEvent
long long m_iEvent
count events in the current process
Definition: TOPPDFDebuggerModule.h:109
Belle2::TOPPDFDebuggerModule::m_pdfOption
std::string m_pdfOption
PDF option name.
Definition: TOPPDFDebuggerModule.h:104
Belle2::TOPPDFDebuggerModule::m_digits
StoreArray< TOPDigit > m_digits
collection of digits
Definition: TOPPDFDebuggerModule.h:120
Belle2::TOP::TOPreco::PDFoption
PDFoption
Options for PDF: rough: no dependence on y fine: y dependent PDF everywhere optimal: y dependent PDF ...
Definition: TOPreco.h:44
Belle2::TOPPDFDebuggerModule::initialize
virtual void initialize() override
Initialize the Module.
Definition: TOPPDFDebuggerModule.cc:92
Belle2::TOPPDFDebuggerModule::m_minTime
double m_minTime
optional time limit for photons
Definition: TOPPDFDebuggerModule.h:101
Belle2::StoreArray
Accessor to arrays stored in the data store.
Definition: ECLMatchingPerformanceExpertModule.h:33
Belle2::TOPPDFDebuggerModule::m_minBkgPerBar
double m_minBkgPerBar
minimal assumed background photons per bar
Definition: TOPPDFDebuggerModule.h:98
Belle2::TOPPDFDebuggerModule::~TOPPDFDebuggerModule
virtual ~TOPPDFDebuggerModule()
Destructor.
Definition: TOPPDFDebuggerModule.cc:87