Belle II Software  release-08-01-10
HistoModule.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/pcore/RbTuple.h>
13 
14 #define REG_HISTOGRAM Belle2::RbTupleManager::Instance().register_module ( this );
15 
16 namespace Belle2 {
22  // Derived Module class to replace Module class
29  class HistoModule : public Module {
30  public:
34  virtual ~HistoModule() {};
35 
36  // Member functions (for event processing)
38  virtual void initialize() override {};
40  virtual void beginRun() override {};
42  virtual void event() override {};
44  virtual void endRun() override {};
46  virtual void terminate() override {};
47 
55  virtual void defineHisto() {};
56  };
57 
59 }
HistoModule.h is supposed to be used instead of Module.h for the modules with histogram definitions t...
Definition: HistoModule.h:29
virtual void endRun() override
Function to process end_run record.
Definition: HistoModule.h:44
virtual ~HistoModule()
Destructor.
Definition: HistoModule.h:34
virtual void terminate() override
Function to terminate module.
Definition: HistoModule.h:46
virtual void event() override
Function to process event record.
Definition: HistoModule.h:42
virtual void initialize() override
Function for dynamic initialization of module.
Definition: HistoModule.h:38
virtual void beginRun() override
Function to process begin_run record.
Definition: HistoModule.h:40
virtual void defineHisto()
Function to define histograms.
Definition: HistoModule.h:55
HistoModule()
Constructor.
Definition: HistoModule.h:32
Base class for Modules.
Definition: Module.h:72
Abstract base class for different kinds of events.