Belle II Software  release-05-01-25
ECLLocalMaximum.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2016 - Belle II Collaboration *
4  * *
5  * A local maximum is defined by its energy and the number and energy of *
6  * its neighbours. It holds a relation to to an ECLConnectedRegion and *
7  * a list of ECLCalDigits (set in SplitterN1). *
8  * *
9  * Author: The Belle II Collaboration *
10  * Contributors: Torben Ferber *
11  * *
12  * This software is provided "as is" without any warranty. *
13  **************************************************************************/
14 
15 #ifndef ECLLOCALMAXIMUM_H
16 #define ECLLOCALMAXIMUM_H
17 
18 #include <framework/datastore/RelationsObject.h>
19 
20 namespace Belle2 {
29  class ECLLocalMaximum : public RelationsObject {
30  public:
31 
33  enum {
34  c_photon = 1,
35  c_electron = 2,
36  c_mergedpi0 = 3,
37  };
38 
40  static const size_t c_nTypes = 3;
41 
44  {
45  m_LMId = -1;
46  m_Type = -1;
47  m_CellId = -1;
48  }
49 
50  // setters
53  void setLMId(int LMId) { m_LMId = LMId; }
54 
57  void setCellId(int cellid) { m_CellId = cellid; }
58 
61  void setType(int type) { m_Type = type; }
62 
63  // getters
67  int getLMId() const { return m_LMId; }
68 
72  int getType() const { return m_Type; }
73 
77  int getCellId() const { return m_CellId; }
78 
79  private:
80  int m_LMId;
81  int m_Type;
82  int m_CellId;
84  // 1: Initial version.
85  // 2: Added identifier for LM type (photon, electron, merged pi0...).
86  // 2: Removed bulky extra information and added CellId.
89  };
90 
92 } // end namespace Belle2
93 
94 #endif
Belle2::ECLLocalMaximum::setLMId
void setLMId(int LMId)
Set LM identifier.
Definition: ECLLocalMaximum.h:65
Belle2::ECLLocalMaximum::m_CellId
int m_CellId
Cell Id.
Definition: ECLLocalMaximum.h:94
Belle2::ECLLocalMaximum::getLMId
int getLMId() const
Get LM identifier.
Definition: ECLLocalMaximum.h:79
Belle2::ECLLocalMaximum::c_photon
@ c_photon
photon
Definition: ECLLocalMaximum.h:46
Belle2::ECLLocalMaximum::getCellId
int getCellId() const
Get CellId.
Definition: ECLLocalMaximum.h:89
Belle2::ECLLocalMaximum::ClassDef
ClassDef(ECLLocalMaximum, 3)
ClassDef.
Belle2::ECLLocalMaximum::m_LMId
int m_LMId
LM ID.
Definition: ECLLocalMaximum.h:92
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::ECLLocalMaximum::c_electron
@ c_electron
electron
Definition: ECLLocalMaximum.h:47
Belle2::ECLLocalMaximum::getType
int getType() const
Get type.
Definition: ECLLocalMaximum.h:84
Belle2::ECLLocalMaximum::setType
void setType(int type)
Set type.
Definition: ECLLocalMaximum.h:73
Belle2::ECLLocalMaximum::m_Type
int m_Type
LM type (photon, electron, merged pi0...)
Definition: ECLLocalMaximum.h:93
Belle2::ECLLocalMaximum
Class to store local maxima (LM)
Definition: ECLLocalMaximum.h:41
Belle2::ECLLocalMaximum::setCellId
void setCellId(int cellid)
Set CellId.
Definition: ECLLocalMaximum.h:69
Belle2::RelationsObject
RelationsInterface< TObject > RelationsObject
Provides interface for getting/adding relations to objects in StoreArrays.
Definition: RelationsObject.h:443
Belle2::ECLLocalMaximum::c_nTypes
static const size_t c_nTypes
Number of different types.
Definition: ECLLocalMaximum.h:52
Belle2::ECLLocalMaximum::c_mergedpi0
@ c_mergedpi0
merged pi0
Definition: ECLLocalMaximum.h:48
Belle2::ECLLocalMaximum::ECLLocalMaximum
ECLLocalMaximum()
default constructor for ROOT
Definition: ECLLocalMaximum.h:55