CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
HcalLaserDigi.h
Go to the documentation of this file.
1 #ifndef DATAFORMATS_HCALDIGI_HCALLASERDIGI_H
2 #define DATAFORMATS_HCALDIGI_HCALLASERDIGI_H 1
3 
4 #include <cstddef>
5 #include <cstdint>
6 #include <vector>
7 
8 class HcalLaserDigi {
9 public:
10  HcalLaserDigi();
11  void setQADC(const std::vector<uint16_t>& values);
12  uint16_t qadc(int i) const { return ((i >= 0 && i < 32) ? (qadcraw_[i]) : (0)); }
13  void addTDCHit(int channel, int hittime);
14  size_t tdcHits() const { return tdcraw_.size(); }
15  int hitChannel(size_t ihit) const;
16  int hitRaw(size_t ihit) const;
17  double hitNS(size_t ihit) const;
18  void setLaserControl(int att1, int att2, int select);
19  int attenuator1() const { return attenuator1_; }
20  int attenuator2() const { return attenuator2_; }
21  int selector() const { return selector_; }
22 
23 private:
24  uint16_t qadcraw_[32];
25  std::vector<uint32_t> tdcraw_;
27  int32_t selector_;
28 };
29 
30 #endif // DATAFORMATS_HCALDIGI_HCALLASERDIGI_H
void setLaserControl(int att1, int att2, int select)
int32_t attenuator2_
Definition: HcalLaserDigi.h:26
void addTDCHit(int channel, int hittime)
uint16_t qadcraw_[32]
Definition: HcalLaserDigi.h:24
size_t tdcHits() const
Definition: HcalLaserDigi.h:14
void setQADC(const std::vector< uint16_t > &values)
int selector() const
Definition: HcalLaserDigi.h:21
int attenuator2() const
Definition: HcalLaserDigi.h:20
std::vector< uint32_t > tdcraw_
Definition: HcalLaserDigi.h:25
uint16_t qadc(int i) const
Definition: HcalLaserDigi.h:12
int attenuator1() const
Definition: HcalLaserDigi.h:19
int hitRaw(size_t ihit) const
double hitNS(size_t ihit) const
int32_t selector_
Definition: HcalLaserDigi.h:27
int hitChannel(size_t ihit) const
int32_t attenuator1_
Definition: HcalLaserDigi.h:26