Belle II Software development
MicrotpcMetaEDataHit.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#ifndef MICROTPCMETAEDATAHIT_H
10#define MICROTPCMETAEDATAHIT_H
11
12#include <simulation/dataobjects/SimHitBase.h>
13//#include <framework/datastore/RelationsObject.h>
14
15namespace Belle2 {
28 public:
30 //MicrotpcMetaEDataHit(): m_column(0), m_row(0), m_BCID(0), m_TOT(0), m_detNb(0) {}
34 m_IHER(0), m_PHER(0), m_tHER(0), m_flagHER(0),
35 m_ILER(0), m_PLER(0), m_tLER(0), m_flagLER(0) {}
36
57 /*
58 MicrotpcMetaEDataHit(int column, int row, int BCID, int TOT, int detNb):
59 m_column(column), m_row(row), m_BCID(BCID), m_TOT(TOT), m_detNb(detNb)
60 {
61 }
62 */
63 MicrotpcMetaEDataHit(int detNb, int pixNb,
64 int ts_nb, const double ts_start[10], const double ts_stop[10],
65 const float Temperature[4], const float Pressure[2], const float Flow[2], float SetFlow, float GetFlow,
66 double IHER, double PHER, double tHER, int flagHER,
67 double ILER, double PLER, double tLER, int flagLER):
68 m_detNb(detNb), m_pixNb(pixNb), m_ts_nb(ts_nb), m_SetFlow(SetFlow), m_GetFlow(GetFlow),
69 m_IHER(IHER), m_PHER(PHER), m_tHER(tHER), m_flagHER(flagHER),
70 m_ILER(ILER), m_PLER(PLER), m_tLER(tLER), m_flagLER(flagLER)
71 {
72 std::copy(ts_start, ts_start + 10, m_ts_start);
73 std::copy(ts_stop, ts_stop + 10, m_ts_stop);
74 std::copy(Temperature, Temperature + 4, m_Temperature);
75 std::copy(Pressure, Pressure + 2, m_Pressure);
76 std::copy(Flow, Flow + 2, m_Flow);
77 }
78
79
81 void setcolumn(std::vector<int>& column)
82 {
83 m_column.clear();
84 std::swap(m_column, column);
85 }
87 void setrow(std::vector<int>& row)
88 {
89 m_row.clear();
90 std::swap(m_row, row);
91 }
93 void setBCID(std::vector<int>& BCID)
94 {
95 m_BCID.clear();
96 std::swap(m_BCID, BCID);
97 }
99 void setTOT(std::vector<int>& TOT)
100 {
101 m_TOT.clear();
102 std::swap(m_TOT, TOT);
103 }
104
106 //int getcolumn() const { return m_column; }
107 std::vector<int > getcolumn() const;
109 //int getrow() const { return m_row; }
110 std::vector<int > getrow() const;
112 //int getBCID() const { return m_BCID; }
113 std::vector<int > getBCID() const;
115 //int getTOT() const { return m_TOT; }
116 std::vector<int > getTOT() const;
118 int getdetNb() const { return m_detNb; }
120 int getpixNb() const { return m_pixNb; }
122 int getts_nb() const { return m_ts_nb; }
124 const double* getts_start() const { return m_ts_start; }
126 const double* getts_stop() const { return m_ts_stop; }
128 const float* getTemperature() const { return m_Temperature; }
130 const float* getPressure() const { return m_Pressure; }
132 const float* getFlow() const { return m_Flow; }
134 float getSetFlow() const { return m_SetFlow; }
136 float getGetFlow() const { return m_GetFlow; }
138 double getIHER() const { return m_IHER; }
140 double getPHER() const { return m_PHER; }
142 double gettHER() const { return m_tHER; }
144 double getflagHER() const { return m_flagHER; }
146 double getILER() const { return m_ILER; }
148 double getPLER() const { return m_PLER; }
150 double gettLER() const { return m_tLER; }
152 double getflagLER() const { return m_flagLER; }
153
154 private:
155
157 //int m_column;
158 std::vector<int> m_column;
160 //int m_row;
161 std::vector<int> m_row;
163 //int m_BCID;
164 std::vector<int> m_BCID;
166 //int m_TOT;
167 std::vector<int> m_TOT;
175 double m_ts_start[10];
177 double m_ts_stop[10];
181 float m_Pressure[2];
183 float m_Flow[2];
189 double m_IHER;
191 double m_PHER;
193 double m_tHER;
195 double m_flagHER;
197 double m_ILER;
199 double m_PLER;
201 double m_tLER;
203 double m_flagLER;
204
206 };
207
209} // end namespace Belle2
210
211#endif
ClassMicrotpcDataHit - digitization simulated datahit for the Microtpc detector.
std::vector< int > getrow() const
Return row vector.
double getflagHER() const
Return HER injection flag.
double getIHER() const
Return HER current.
std::vector< int > m_column
Column.
void setBCID(std::vector< int > &BCID)
Set bc into a vector array.
float getGetFlow() const
Return TPC slow control get flow.
void setTOT(std::vector< int > &TOT)
Set tot into a vector array.
float getSetFlow() const
Return TPC slow control set flow.
MicrotpcMetaEDataHit(int detNb, int pixNb, int ts_nb, const double ts_start[10], const double ts_stop[10], const float Temperature[4], const float Pressure[2], const float Flow[2], float SetFlow, float GetFlow, double IHER, double PHER, double tHER, int flagHER, double ILER, double PLER, double tLER, int flagLER)
Standard constructor.
double gettHER() const
Return HER beam life time.
double m_ts_stop[10]
Stop time stamp.
const float * getTemperature() const
Return TPC temperature.
double getflagLER() const
Return HER injection flag.
void setcolumn(std::vector< int > &column)
Set column into a vector array.
int getdetNb() const
Return the TPC number.
int getts_nb() const
Return the number of time stamp.
std::vector< int > m_BCID
BCID.
const float * getFlow() const
Return TPC flow.
const float * getPressure() const
Return TPC pressure.
const double * getts_stop() const
Return stop readout time stamp.
std::vector< int > getcolumn() const
Return column vector.
const double * getts_start() const
Return start readout time stamp.
float m_Temperature[4]
Temperature.
int getpixNb() const
Return the pixel number firing.
std::vector< int > getBCID() const
Return BCID vector.
std::vector< int > getTOT() const
Return TOT vector.
double getPHER() const
Return HER average pressure.
double m_flagLER
LER injection flag.
void setrow(std::vector< int > &row)
Set row into a vector array.
double m_ts_start[10]
Start time stamp.
double getPLER() const
Return LER average pressure.
MicrotpcMetaEDataHit()
default constructor for ROOT
double m_flagHER
HER injection flag.
double gettLER() const
Return HER beam life time.
double getILER() const
Return LER current.
ClassDef(RelationsInterface, 0)
defines interface for accessing relations of objects in StoreArray.
Class SimHitBase - A common base for subdetector SimHits.
Definition: SimHitBase.h:28
Abstract base class for different kinds of events.