Belle II Software  release-05-02-19
trggdlUnpackerModule.h
1 //---------------------------------------------------------------
2 // $Id$
3 //---------------------------------------------------------------
4 // Filename : trggdlUnpackerModule.h
5 // Section : TRG TRG
6 // Owner :
7 // Email :
8 //---------------------------------------------------------------
9 // Description : TRG TRG Unpacker Module
10 //---------------------------------------------------------------
11 // 1.00 : 2017/07/28 : First version
12 //---------------------------------------------------------------
13 
14 #ifndef TRGGDLUNPACKER_H
15 #define TRGGDLUNPACKER_H
16 
17 #include <string>
18 #include <vector>
19 
20 #include "rawdata/dataobjects/RawTRG.h"
21 #include "trg/gdl/dataobjects/TRGGDLUnpackerStore.h"
22 
23 #include <framework/datastore/StoreArray.h>
24 #include <framework/core/Module.h>
25 #include <framework/database/DBObjPtr.h>
26 #include <mdst/dbobjects/TRGGDLDBBadrun.h>
27 #include <trg/gdl/dbobjects/TRGGDLDBUnpacker.h>
28 
29 namespace Belle2 {
35  namespace GDL {
36 
38  enum EGDLTimingType {
39  e_tt_non,
40  e_tt_cdc,
41  e_tt_ecl,
42  e_tt_top,
43  e_tt_psnm,
44  e_tt_rand,
45  e_tt_dphy
46  };
47 
48 
49 
51  class TRGGDLUnpackerModule : public Module {
52 
53  public:
54 
57 
59  virtual ~TRGGDLUnpackerModule() {}
60 
62  virtual void initialize() override;
63 
65  virtual void event() override;
66 
68  virtual void terminate() override {}
69 
71  virtual void beginRun() override {}
72 
74  virtual void endRun() override {}
75 
77  std::string version() const;
78 
79  virtual void fillTreeGDLDB(int* buf, int evt);
80 
81  private:
82 
85 
88 
90 
91  //condition database for unpacer
92  DBObjPtr<TRGGDLDBUnpacker> m_dbunpacker;
93  //condition database for badrun
94  DBObjPtr<TRGGDLDBBadrun> m_dbbadrun;
95 
96  //variables to store database
97  int LeafBitMap[320];
98  char LeafNames[320][100];
99  int nword_header;
100  int n_clocks;
101  int nBits;
102  int n_leafs;
103  int n_leafsExtra;
104  int conf;
105  int bad_flag;
106  int unpack_flag;
107  std::vector<std::vector<int>> BitMap;
108  std::vector<std::vector<int>> BitMap_extra;
109  int conf_map;
110  int evt_map;
111  int clk_map;
112  };
113  }
115 } // end namespace Belle2
116 
117 #endif // TRGGDLUnpackerModule_H
Belle2::GDL::TRGGDLUnpackerModule::TRGGDLUnpackerModule
TRGGDLUnpackerModule()
Constructor.
Definition: trggdlUnpackerModule.cc:30
Belle2::GDL::TRGGDLUnpackerModule::event
virtual void event() override
Called event by event.
Definition: trggdlUnpackerModule.cc:146
Belle2::GDL::TRGGDLUnpackerModule::initialize
virtual void initialize() override
Initilizes TRGGDLUnpackerModuel.
Definition: trggdlUnpackerModule.cc:43
Belle2::GDL::TRGGDLUnpackerModule::terminate
virtual void terminate() override
Called when processing ended.
Definition: trggdlUnpackerModule.h:68
Belle2::DBObjPtr
Class for accessing objects in the database.
Definition: DBObjPtr.h:31
Belle2::Module
Base class for Modules.
Definition: Module.h:74
Belle2::GDL::TRGGDLUnpackerModule::~TRGGDLUnpackerModule
virtual ~TRGGDLUnpackerModule()
Destructor.
Definition: trggdlUnpackerModule.h:59
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::GDL::TRGGDLUnpackerModule::endRun
virtual void endRun() override
Called when run ended.
Definition: trggdlUnpackerModule.h:74
Belle2::GDL::TRGGDLUnpackerModule::beginRun
virtual void beginRun() override
Called when new run started.
Definition: trggdlUnpackerModule.h:71
Belle2::GDL::TRGGDLUnpackerModule::m_trgReadoutBoardSearch
bool m_trgReadoutBoardSearch
flag to select board search mode
Definition: trggdlUnpackerModule.h:87
Belle2::GDL::TRGGDLUnpackerModule::version
std::string version() const
returns version of TRGGDLUnpackerModule.
Definition: trggdlUnpackerModule.cc:25
Belle2::StoreArray
Accessor to arrays stored in the data store.
Definition: ECLMatchingPerformanceExpertModule.h:33
Belle2::GDL::TRGGDLUnpackerModule::m_print_dbmap
bool m_print_dbmap
flag to dump data base map
Definition: trggdlUnpackerModule.h:84
Belle2::GDL::TRGGDLUnpackerModule
A module of TRG TRG Unpacker.
Definition: trggdlUnpackerModule.h:51