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;
132 };
134} // end namespace Belle2
Map of the Aerogel placement.
std::string m_comment
optional comment
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()
Destructor.
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.
@ c_layers
number of layers
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.