Belle II Software development
ARICHAerogelMap.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#include <TObject.h>
11#include <TTimeStamp.h>
12#include <string>
13
14namespace Belle2 {
22 class ARICHAerogelMap: public TObject {
23 public:
27 enum {c_layers = 2,
28 };
29
33 ARICHAerogelMap(): m_id(""), m_ring(0), m_column(0), m_timeStamp(0, 0, 0, kTRUE, 0), m_comment("")
34 {
35 for (unsigned ii = 0; ii < c_layers; ii++) m_layer[ii] = 0;
36 };
37
41 ARICHAerogelMap(const std::string& id, int ring, int column, unsigned int* layer, TTimeStamp timeStamp,
42 const std::string& comment): m_id(id),
43 m_ring(ring), m_column(column), m_timeStamp(timeStamp), m_comment(comment)
44 {
45 for (unsigned ii = 0; ii < c_layers; ii++) m_layer[ii] = layer[ii];
46 }
47
48
53
57 std::string getAerogelSN() const {return m_id; }
58
62 void setAerogelSN(const std::string& agelid) {m_id = agelid; }
63
68 int getAerogelRingID() const {return m_ring;}
69
74 void setAerogelRingID(int ring) {m_ring = ring;}
75
80 int getAerogelColumnID() const {return m_column;}
81
86 void setAerogelColumnID(int column) {m_column = column;}
87
92 unsigned int getAerogelLayer(unsigned i) const { if (i < c_layers) { return m_layer[i]; } return 0; }
93
99 void setAerogelLayer(unsigned int i, unsigned int layer);
100
101
105 TTimeStamp getAerogelTimeStamp() const {return m_timeStamp; }
106
110 void setTimeStamp(TTimeStamp timeStamp) {m_timeStamp = timeStamp; }
111
115 std::string getAerogelMapComment() const {return m_comment; }
116
120 void setAerogelMapComment(const std::string& comment) {m_comment = comment; }
121
122
123 private:
124 std::string m_id;
125 int m_ring;
127 unsigned int m_layer[c_layers];
128 TTimeStamp m_timeStamp;
129 std::string m_comment;
130
132 };
133
134} // end namespace Belle2
std::string m_comment
optional comment
@ c_layers
number of layers
TTimeStamp m_timeStamp
Installation Date.
int m_column
Aerogel Column identifier.
ClassDef(ARICHAerogelMap, 2)
ClassDef.
std::string m_id
Aerogel Identifier.
std::string getAerogelMapComment() const
Return comment.
void setAerogelSN(const std::string &agelid)
Set Aerogel serial number.
void setAerogelRingID(int ring)
Set Aerogel Ring Identifier.
ARICHAerogelMap(const std::string &id, int ring, int column, unsigned int *layer, TTimeStamp timeStamp, const std::string &comment)
Constructor.
int getAerogelColumnID() const
Return Aerogel Column Identifier.
void setTimeStamp(TTimeStamp timeStamp)
Set Aerogel installation date.
void setAerogelMapComment(const std::string &comment)
Set comment.
int m_ring
Aerogel Ring Identifier.
std::string getAerogelSN() const
Return Aerogel serial number.
void setAerogelColumnID(int column)
Set Aerogel Column Identifier.
ARICHAerogelMap()
Default constructor.
unsigned int getAerogelLayer(unsigned i) const
Return Aerogel Layer Identifier.
int getAerogelRingID() const
Return Aerogel Ring Identifier.
unsigned int m_layer[c_layers]
Aerogel Layers.
TTimeStamp getAerogelTimeStamp() const
Return Aerogel installation date.
void setAerogelLayer(unsigned int i, unsigned int layer)
Set aerogel info of layer i.
Abstract base class for different kinds of events.