Belle II Software  release-05-02-19
ARICHPackerModule.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2010 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Luka Santelj *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 #ifndef ARICHPACKERMODULE_H
12 #define ARICHPACKERMODULE_H
13 
14 // mappers
15 #include <arich/dbobjects/ARICHMergerMapping.h>
16 #include <arich/dbobjects/ARICHCopperMapping.h>
17 
18 #include <framework/database/DBObjPtr.h>
19 
20 #include <framework/core/Module.h>
21 #include <string>
22 #include <arich/modules/arichUnpacker/ARICHRawDataHeader.h>
23 
24 namespace Belle2 {
36  class ARICHPackerModule : public Module {
37 
38  public:
39 
44 
48  virtual ~ARICHPackerModule();
49 
54  virtual void initialize() override;
55 
60  virtual void beginRun() override;
61 
65  virtual void event() override;
66 
71  virtual void endRun() override;
72 
77  virtual void terminate() override;
78 
79  void writeHeader(int* buffer, unsigned& ibyte, const ARICHRawHeader& head);
80 
81  private:
82 
83  unsigned m_nonSuppressed;
84  unsigned m_version;
85  unsigned m_bitMask;
86  int m_debug;
87  std::string m_inputDigitsName;
88  std::string m_outputRawDataName;
93  };
94 
96 } // Belle2 namespace
97 
98 #endif
Belle2::ARICHPackerModule::terminate
virtual void terminate() override
Termination action.
Definition: ARICHPackerModule.cc:261
Belle2::ARICHPackerModule::m_mergerMap
DBObjPtr< ARICHMergerMapping > m_mergerMap
mapping of modules to mergers
Definition: ARICHPackerModule.h:98
Belle2::ARICHPackerModule::m_bitMask
unsigned m_bitMask
bitmask for hit detection (4bit/hit)
Definition: ARICHPackerModule.h:93
Belle2::ARICHPackerModule::m_outputRawDataName
std::string m_outputRawDataName
name of RawARICH store array
Definition: ARICHPackerModule.h:96
Belle2::ARICHPackerModule::event
virtual void event() override
Event processor.
Definition: ARICHPackerModule.cc:80
Belle2::ARICHPackerModule::m_nonSuppressed
unsigned m_nonSuppressed
type of data (1 nonsuppressed, 0 suppressed)
Definition: ARICHPackerModule.h:91
Belle2::DBObjPtr
Class for accessing objects in the database.
Definition: DBObjPtr.h:31
Belle2::ARICHPackerModule::m_inputDigitsName
std::string m_inputDigitsName
name of ARICHDigit store array
Definition: ARICHPackerModule.h:95
Belle2::ARICHPackerModule::m_copperMap
DBObjPtr< ARICHCopperMapping > m_copperMap
mapping of mergers to coppers
Definition: ARICHPackerModule.h:99
Belle2::ARICHPackerModule::endRun
virtual void endRun() override
End-of-run action.
Definition: ARICHPackerModule.cc:257
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::ARICHPackerModule::m_debug
int m_debug
debug
Definition: ARICHPackerModule.h:94
Belle2::ARICHPackerModule::ARICHPackerModule
ARICHPackerModule()
Constructor.
Definition: ARICHPackerModule.cc:46
Belle2::ARICHPackerModule::initialize
virtual void initialize() override
Initialize the Module.
Definition: ARICHPackerModule.cc:66
Belle2::ARICHPackerModule::~ARICHPackerModule
virtual ~ARICHPackerModule()
Destructor.
Definition: ARICHPackerModule.cc:62
Belle2::ARICHRawHeader
Definition: ARICHRawDataHeader.h:17
Belle2::ARICHPackerModule::beginRun
virtual void beginRun() override
Called when entering a new run.
Definition: ARICHPackerModule.cc:76