ATLAS Offline Software
ZdcDigits.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 //***************************************************************************
6 // Filename : ZdcDigits.h
7 // Author : Peter Steinberg
8 // Created : March 2009
9 //
10 // DESCRIPTION:
11 // A ZdcDigits is the data class corresponding to the amplitude information
12 // transmitted from the digitizers to the ROD's. It contains a hardware
13 // identifier (including pmt and adc info) and nsample amplitudes corresponding
14 // to the time slices read out. Optimal filtering must be applied to these
15 // amplitudes (including pedestal subtractioin) to produce a ZdcRawChannel.
16 //
17 // HISTORY:
18 //
19 // ***************************************************************************
20 
21 #ifndef ZDCEVENT_ZDCDIGITS_H
22 #define ZDCEVENT_ZDCDIGITS_H
23 
24 #include "ZdcEvent/ZdcRawData.h"
25 #include <stdint.h>
26 
27 class ZdcDigits : public ZdcRawData
28 {
29 public:
30 
31  /* Constructors */
32 
34  m_nSamples = 0;
35  }
36 
37  ZdcDigits(const Identifier& id);
38 
39  /* Destructor */
40 
41  virtual ~ZdcDigits() { }
42 
43  /* Inline access methods */
44 
45  inline int NtimeSamples(void) const { return m_digits_gain0_delay0.size(); }
46 
47  unsigned int m_nSamples;
48 
49  void set_digits_gain0_delay0(const std::vector<int>& v);
50  void set_digits_gain0_delay1(const std::vector<int>& v);
51  void set_digits_gain1_delay0(const std::vector<int>& v);
52  void set_digits_gain1_delay1(const std::vector<int>& v);
53  void set_digits_gain0_delay0(const std::vector<uint16_t>& v);
54  void set_digits_gain0_delay1(const std::vector<uint16_t>& v);
55  void set_digits_gain1_delay0(const std::vector<uint16_t>& v);
56  void set_digits_gain1_delay1(const std::vector<uint16_t>& v);
57 
58  inline const std::vector<int>& get_digits_gain0_delay0(void) const { return m_digits_gain0_delay0; }
59  inline const std::vector<int>& get_digits_gain0_delay1(void) const { return m_digits_gain0_delay1; }
60  inline const std::vector<int>& get_digits_gain1_delay0(void) const { return m_digits_gain1_delay0; }
61  inline const std::vector<int>& get_digits_gain1_delay1(void) const { return m_digits_gain1_delay1; }
62 
63  std::string whoami (void) const { return "ZdcDigits"; }
64  void print (void) const;
65  // Convertion operator to a std::string
66  // Can be used in a cast operation : (std::string) ZdcRawChannel
67  operator std::string() const;
68 
69 private:
70 
71  /* Member variables: */
72 
73  std::vector<int> m_digits_gain0_delay0;
74  std::vector<int> m_digits_gain0_delay1;
75  std::vector<int> m_digits_gain1_delay0;
76  std::vector<int> m_digits_gain1_delay1;
77 };
78 
79 #endif //ZDCEVENT_ZDCDIGITS_H
80 
ZdcRawData
Definition: ZdcRawData.h:33
ZdcDigits::m_digits_gain1_delay0
std::vector< int > m_digits_gain1_delay0
Definition: ZdcDigits.h:75
ZdcDigits::NtimeSamples
int NtimeSamples(void) const
Definition: ZdcDigits.h:45
ZdcDigits::m_digits_gain0_delay0
std::vector< int > m_digits_gain0_delay0
Definition: ZdcDigits.h:73
ZdcDigits::m_nSamples
unsigned int m_nSamples
Definition: ZdcDigits.h:47
ZdcDigits
Definition: ZdcDigits.h:28
ZdcDigits::print
void print(void) const
Definition: ZdcDigits.cxx:61
ZdcDigits::~ZdcDigits
virtual ~ZdcDigits()
Definition: ZdcDigits.h:41
ZdcDigits::get_digits_gain1_delay1
const std::vector< int > & get_digits_gain1_delay1(void) const
Definition: ZdcDigits.h:61
ZdcDigits::set_digits_gain1_delay1
void set_digits_gain1_delay1(const std::vector< int > &v)
Definition: ZdcDigits.cxx:139
ZdcDigits::ZdcDigits
ZdcDigits()
Definition: ZdcDigits.h:33
Identifier
Definition: DetectorDescription/Identifier/Identifier/Identifier.h:32
ZdcDigits::m_digits_gain1_delay1
std::vector< int > m_digits_gain1_delay1
Definition: ZdcDigits.h:76
ZdcDigits::set_digits_gain1_delay0
void set_digits_gain1_delay0(const std::vector< int > &v)
Definition: ZdcDigits.cxx:134
ZdcDigits::get_digits_gain0_delay1
const std::vector< int > & get_digits_gain0_delay1(void) const
Definition: ZdcDigits.h:59
ZdcDigits::set_digits_gain0_delay1
void set_digits_gain0_delay1(const std::vector< int > &v)
Definition: ZdcDigits.cxx:129
ZdcRawData.h
python.PyAthena.v
v
Definition: PyAthena.py:157
ZdcDigits::set_digits_gain0_delay0
void set_digits_gain0_delay0(const std::vector< int > &v)
Definition: ZdcDigits.cxx:124
ZdcDigits::whoami
std::string whoami(void) const
Definition: ZdcDigits.h:63
ZdcDigits::get_digits_gain0_delay0
const std::vector< int > & get_digits_gain0_delay0(void) const
Definition: ZdcDigits.h:58
ZdcDigits::m_digits_gain0_delay1
std::vector< int > m_digits_gain0_delay1
Definition: ZdcDigits.h:74
ZdcDigits::get_digits_gain1_delay0
const std::vector< int > & get_digits_gain1_delay0(void) const
Definition: ZdcDigits.h:60