Belle II Software  release-08-01-10
KLMScintillatorFirmware.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 /* ROOT headers. */
12 #include <TObject.h>
13 
14 namespace Belle2 {
23  class KLMScintillatorFirmware : public TObject {
24 
25  public:
26 
30  enum FirmwareVersion : unsigned int {
31 
33  c_Invalid = 0,
34 
36  c_Phase2 = 1,
37 
39  c_Run1 = 2,
40 
42  c_Run2 = 3,
43 
44  };
45 
50 
54  explicit KLMScintillatorFirmware(FirmwareVersion firmwareVersion) :
55  m_FirmwareVersion{firmwareVersion}
56  {
57  };
58 
63 
67  void setFirmwareVersion(FirmwareVersion firmwareVersion)
68  {
69  m_FirmwareVersion = firmwareVersion;
70  };
71 
76  {
77  return m_FirmwareVersion;
78  };
79 
80  private:
81 
84 
87 
88  };
89 
91 }
FirmwareVersion getFirmwareVersion() const
Get firmware version.
void setFirmwareVersion(FirmwareVersion firmwareVersion)
Set firmware version.
FirmwareVersion m_FirmwareVersion
KLM scintillator firmware version.
~KLMScintillatorFirmware()=default
Destructor.
ClassDef(KLMScintillatorFirmware, 1)
Class version.
FirmwareVersion
Enumerator for the scintillator firmware version.
@ c_Run2
Flag for Run 1 (from 2023c).
@ c_Invalid
Flag for marking an invalid version.
@ c_Run1
Flag for Run 1 (from 2019a to 2022b)
@ c_Phase2
Flag for Phase 2 version.
KLMScintillatorFirmware(FirmwareVersion firmwareVersion)
Specialized constructor.
KLMScintillatorFirmware()=default
Constructor.
Abstract base class for different kinds of events.