Belle II Software  release-08-01-10
ARICHDigitizerModule.h
1 /**************************************************************************
2  * basf2 (Belle II Analysis Software Framework) *
3  * Author: The Belle II Collaboration *
4  * *
5  * See git log for contributors and copyright holders. *
6  * This file is licensed under LGPL-3.0, see LICENSE.md. *
7  **************************************************************************/
8 
9 #pragma once
10 
11 #include <framework/core/Module.h>
12 #include <framework/datastore/StoreArray.h>
13 #include <arich/dbobjects/ARICHGeometryConfig.h>
14 #include <arich/dbobjects/ARICHSimulationPar.h>
15 #include <arich/dbobjects/ARICHModulesInfo.h>
16 #include <arich/dbobjects/ARICHChannelMask.h>
17 #include <arich/dbobjects/ARICHChannelMapping.h>
18 #include <framework/database/DBObjPtr.h>
19 
20 #include <string>
21 
22 namespace Belle2 {
27  class ARICHDigit;
28  class ARICHSimHit;
29 
36  class ARICHDigitizerModule : public Module {
37 
38  public:
39 
44 
48  virtual ~ARICHDigitizerModule();
49 
55  virtual void initialize() override;
56 
62  virtual void beginRun() override;
63 
69  virtual void event() override;
70 
76  void magFieldDistorsion(TVector2& hit, int copyno);
77 
78  private:
79 
80  std::string m_inColName;
81  std::string m_outColName;
83  bool m_bgOverlay = false;
94  /* Other members.*/
95  double m_maxQE;
96  double m_timeWindow;
98  double m_bkgLevel;
99  int m_bdistort;
101  };
102 
104 } // Belle2 namespace
double m_maxQE
QE at 400nm (from QE curve applied in SensitveDetector)
std::string m_outColName
Output collection name: digitized photons hits.
double m_bkgLevel
Number of background hits ped hapd per readout (electronics noise)
DBObjPtr< ARICHSimulationPar > m_simPar
simulation parameters from the DB
StoreArray< ARICHSimHit > m_ARICHSimHits
StoreArray containing the ARICHSimHits.
DBObjPtr< ARICHModulesInfo > m_modInfo
information on installed modules from the DB (QEs etc.)
DBObjPtr< ARICHGeometryConfig > m_geoPar
geometry configuration parameters from the DB
bool m_bgOverlay
True if BG overlay detected.
double m_timeWindow
Readout time window width in ns.
StoreArray< ARICHDigit > m_ARICHDigits
StoreArray containing the ARICHDigits.
int m_bdistort
apply distorsion due to magnetic field
std::string m_inColName
Input collection name from simulation.
DBObjPtr< ARICHChannelMapping > m_chnMap
HAPD (x,y) to asic channel mapping.
double m_timeWindowStart
Readout time window shift w.r.t.
DBObjPtr< ARICHChannelMask > m_chnMask
list of dead channels from the DB
Class for accessing objects in the database.
Definition: DBObjPtr.h:21
Base class for Modules.
Definition: Module.h:72
Accessor to arrays stored in the data store.
Definition: StoreArray.h:113
virtual void initialize() override
Initialize the Module.
virtual void event() override
Event processor.
virtual ~ARICHDigitizerModule()
Destructor.
virtual void beginRun() override
Called when entering a new run.
void magFieldDistorsion(TVector2 &hit, int copyno)
Apply correction to hit position due to non-perpendicular component of magnetic field.
Abstract base class for different kinds of events.