Belle II Software  release-08-01-10
ProcessingSignalListener.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 #pragma once
9 
10 #include <string>
11 
12 namespace Belle2 {
17  namespace TrackFindingCDC {
18 
21 
22  public:
25 
28 
31 
33  virtual ~ProcessingSignalListener();
34 
36  virtual void initialize();
37 
39  virtual void beginRun();
40 
42  virtual void beginEvent();
43 
45  virtual void endRun();
46 
48  virtual void terminate();
49 
50  private:
52  bool m_initialized = false;
53 
55  bool m_terminated = false;
56 
58  std::string m_initializedAs;
59  };
60  }
62 }
Interface for an algorithm part that needs to receive the module processing signals.
virtual void beginEvent()
Receive signal for the start of a new event.
virtual void initialize()
Receive signal before the start of the event processing.
virtual void beginRun()
Receive signal for the beginning of a new run.
bool m_initialized
Flag to keep track whether initialization happend before.
ProcessingSignalListener()
Allow default construction.
std::string m_initializedAs
Name of the type during initialisation.
virtual void terminate()
Receive Signal for termination of the event processing.
virtual void endRun()
Receive signal for the end of the run.
virtual ~ProcessingSignalListener()
Make destructor of interface virtual.
ProcessingSignalListener & operator=(const ProcessingSignalListener &)=delete
Disallow assignment.
bool m_terminated
Flag to keep track whether termination happend before.
ProcessingSignalListener(const ProcessingSignalListener &)=delete
Disallow copies.
Abstract base class for different kinds of events.