Belle II Software  release-08-01-10
TRGGDLDBAlgs.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 <TObject.h>
11 #include <vector>
12 
13 namespace Belle2 {
25  class TRGGDLDBAlgs: public TObject {
26  public:
27 
30 
32  TRGGDLDBAlgs(const TRGGDLDBAlgs&) = default;
33 
35  TRGGDLDBAlgs& operator=(const TRGGDLDBAlgs&) = default;
36 
38  void setalg(const std::string& s)
39  {
40  m_algs.push_back(s);
41  }
42 
44  void clear(void)
45  {
46  m_algs.clear();
47  }
48 
50  std::string getalg(int i) const
51  {
52  return m_algs.at(i);
53  }
54 
56  int getnalgs() const
57  {
58  return m_algs.size();
59  }
60 
61  private:
62 
64  std::vector<std::string> m_algs;
65 
67  };
68 
70 } // end of namespace Belle2
The payload class for GDL algorithm.
Definition: TRGGDLDBAlgs.h:25
int getnalgs() const
Getter of the number of algorithms.
Definition: TRGGDLDBAlgs.h:56
std::string getalg(int i) const
Getter for a GDL logic alghrithm.
Definition: TRGGDLDBAlgs.h:50
std::vector< std::string > m_algs
Algorithm strings of GDL logic.
Definition: TRGGDLDBAlgs.h:64
TRGGDLDBAlgs(const TRGGDLDBAlgs &)=default
copy constructor
ClassDef(TRGGDLDBAlgs, 1)
ClassDef, must be the last term before the closing {}.
TRGGDLDBAlgs & operator=(const TRGGDLDBAlgs &)=default
assignment operator
TRGGDLDBAlgs()
Default constructor.
Definition: TRGGDLDBAlgs.h:29
void setalg(const std::string &s)
Setter for a GDL logic alghrithm.
Definition: TRGGDLDBAlgs.h:38
void clear(void)
clear vector
Definition: TRGGDLDBAlgs.h:44
Abstract base class for different kinds of events.