Belle II Software  release-08-01-10
TRGECLBGTCHitModule.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 <string>
12 #include <framework/core/Module.h>
13 #include <framework/datastore/StoreArray.h>
14 #include <framework/database/DBArray.h>
15 
16 #include "trg/ecl/TrgEclMapping.h"
17 #include "ecl/dataobjects/ECLHit.h"
18 #include "trg/ecl/dataobjects/TRGECLBGTCHit.h"
19 #include "trg/ecl/dataobjects/TRGECLUnpackerStore.h"
20 
21 namespace Belle2 {
30  class TRGECLBGTCHitModule : public Module {
31  public:
32 
35 
37  virtual ~TRGECLBGTCHitModule();
39  virtual void initialize() override;
41  virtual void beginRun() override;
43  virtual void event() override;
45  virtual void endRun() override;
47  virtual void terminate() override;
48 
49  public:
50 
52  std::string version(void) const;
53 
54  private:
56  // generate simulation TCHit data objection
57  void genSimulationObj();
58  // generate random trigger data TCHit data objection
59  void genRandomTrgObj();
60  // TC energy cut (GeV)
61  double m_TCEnergyCut;
62  // TC timing cut (ns) for lower timing
63  double m_TCTimingCutLow;
64  // TC timing cut (ns) for high timing
65  double m_TCTimingCutHigh;
66  // Debug level
67  int m_debugLevel;
68 
69  protected:
70 
71  private:
72  // hardware configuration
73  TrgEclMapping* m_TCMap;
74  // ECL data object
75  StoreArray<ECLHit> m_eclHits;
76  // ecl trigger ETM dataobject
77  StoreArray<TRGECLUnpackerStore> m_trgeclUnpackerStores;
78  // ecl trigger BG TC dataobject
79  StoreArray<TRGECLBGTCHit> m_trgeclBGTCHits;
80  };
81 
83 } // namespace Belle2
Base class for Modules.
Definition: Module.h:72
Accessor to arrays stored in the data store.
Definition: StoreArray.h:113
A class of TC Mapping.
Definition: TrgEclMapping.h:26
virtual void initialize() override
Initilizes TRGECLBGTCHitModule.
virtual void event() override
Called event by event.
virtual void endRun() override
Called when run ended.
virtual void terminate() override
Called when processing ended.
virtual void beginRun() override
Called when new run started.
virtual ~TRGECLBGTCHitModule()
Destructor.
std::string version(void) const
returns version of TRGECLBGTCHitModule.
Abstract base class for different kinds of events.