Belle II Software  release-05-01-25
ARICHAerogelMap.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2015 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Rok Pestotnik, Manca Mrvar *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 #pragma once
12 #include <TObject.h>
13 #include <TTimeStamp.h>
14 #include <string>
15 
16 namespace Belle2 {
24  class ARICHAerogelMap: public TObject {
25  public:
29  enum {c_layers = 2,
30  };
31 
35  ARICHAerogelMap(): m_id(""), m_ring(0), m_column(0), m_timeStamp(0, 0, 0, kTRUE, 0), m_comment("")
36  {
37  for (unsigned ii = 0; ii < c_layers; ii++) m_layer[ii] = 0;
38  };
39 
43  ARICHAerogelMap(const std::string& id, int ring, int column, unsigned int* layer, TTimeStamp timeStamp,
44  const std::string& comment): m_id(id),
45  m_ring(ring), m_column(column), m_timeStamp(timeStamp), m_comment(comment)
46  {
47  for (unsigned ii = 0; ii < c_layers; ii++) m_layer[ii] = layer[ii];
48  }
49 
50 
54  ~ARICHAerogelMap() {};
55 
59  std::string getAerogelSN() const {return m_id; }
60 
64  void setAerogelSN(const std::string& agelid) {m_id = agelid; }
65 
70  int getAerogelRingID() const {return m_ring;}
71 
76  void setAerogelRingID(int ring) {m_ring = ring;}
77 
82  int getAerogelColumnID() const {return m_column;}
83 
88  void setAerogelColumnID(int column) {m_column = column;}
89 
94  unsigned int getAerogelLayer(unsigned i) const { if (i < c_layers) { return m_layer[i]; } return 0; }
95 
100  void setAerogelLayer(unsigned int i, unsigned int layer);
101 
102 
106  TTimeStamp getAerogelTimeStamp() const {return m_timeStamp; }
107 
111  void setTimeStamp(TTimeStamp timeStamp) {m_timeStamp = timeStamp; }
112 
116  std::string getAerogelMapComment() const {return m_comment; }
117 
121  void setAerogelMapComment(const std::string& comment) {m_comment = comment; }
122 
123 
124  private:
125  std::string m_id;
126  int m_ring;
127  int m_column;
128  unsigned int m_layer[c_layers];
129  TTimeStamp m_timeStamp;
130  std::string m_comment;
133  };
135 } // end namespace Belle2
Belle2::ARICHAerogelMap::getAerogelTimeStamp
TTimeStamp getAerogelTimeStamp() const
Return Aerogel installation date.
Definition: ARICHAerogelMap.h:114
Belle2::ARICHAerogelMap::ARICHAerogelMap
ARICHAerogelMap()
Default constructor.
Definition: ARICHAerogelMap.h:43
Belle2::ARICHAerogelMap::m_layer
unsigned int m_layer[c_layers]
Aerogel Layers.
Definition: ARICHAerogelMap.h:136
Belle2::ARICHAerogelMap::m_id
std::string m_id
Aerogel Identifier.
Definition: ARICHAerogelMap.h:133
Belle2::ARICHAerogelMap::getAerogelLayer
unsigned int getAerogelLayer(unsigned i) const
Return Aerogel Layer Identifier.
Definition: ARICHAerogelMap.h:102
Belle2::ARICHAerogelMap::setAerogelMapComment
void setAerogelMapComment(const std::string &comment)
Set comment.
Definition: ARICHAerogelMap.h:129
Belle2::ARICHAerogelMap::setAerogelRingID
void setAerogelRingID(int ring)
Set Aerogel Ring Identifier.
Definition: ARICHAerogelMap.h:84
Belle2::ARICHAerogelMap::c_layers
@ c_layers
number of layers
Definition: ARICHAerogelMap.h:37
Belle2::ARICHAerogelMap::getAerogelSN
std::string getAerogelSN() const
Return Aerogel serial number.
Definition: ARICHAerogelMap.h:67
Belle2::ARICHAerogelMap::getAerogelMapComment
std::string getAerogelMapComment() const
Return comment.
Definition: ARICHAerogelMap.h:124
Belle2::ARICHAerogelMap::~ARICHAerogelMap
~ARICHAerogelMap()
Destructor.
Definition: ARICHAerogelMap.h:62
Belle2::ARICHAerogelMap::setAerogelSN
void setAerogelSN(const std::string &agelid)
Set Aerogel serial number.
Definition: ARICHAerogelMap.h:72
Belle2::ARICHAerogelMap::getAerogelRingID
int getAerogelRingID() const
Return Aerogel Ring Identifier.
Definition: ARICHAerogelMap.h:78
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::ARICHAerogelMap
Map of the Aerogel placement.
Definition: ARICHAerogelMap.h:32
Belle2::ARICHAerogelMap::m_timeStamp
TTimeStamp m_timeStamp
Installation Date.
Definition: ARICHAerogelMap.h:137
Belle2::ARICHAerogelMap::getAerogelColumnID
int getAerogelColumnID() const
Return Aerogel Column Identifier.
Definition: ARICHAerogelMap.h:90
Belle2::ARICHAerogelMap::setTimeStamp
void setTimeStamp(TTimeStamp timeStamp)
Set Aerogel installation date.
Definition: ARICHAerogelMap.h:119
Belle2::ARICHAerogelMap::setAerogelLayer
void setAerogelLayer(unsigned int i, unsigned int layer)
Set aerogel info of layer i.
Definition: ARICHAerogelMap.cc:18
Belle2::ARICHAerogelMap::m_ring
int m_ring
Aerogel Ring Identifier.
Definition: ARICHAerogelMap.h:134
Belle2::ARICHAerogelMap::m_column
int m_column
Aerogel Column identifier.
Definition: ARICHAerogelMap.h:135
Belle2::ARICHAerogelMap::ClassDef
ClassDef(ARICHAerogelMap, 2)
ClassDef.
Belle2::ARICHAerogelMap::m_comment
std::string m_comment
optional comment
Definition: ARICHAerogelMap.h:138
Belle2::ARICHAerogelMap::setAerogelColumnID
void setAerogelColumnID(int column)
Set Aerogel Column Identifier.
Definition: ARICHAerogelMap.h:96