ATLAS Offline Software
Loading...
Searching...
No Matches
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
27class ZdcDigits : public ZdcRawData
28{
29public:
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
69private:
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
unsigned int m_nSamples
Definition ZdcDigits.h:47
const std::vector< int > & get_digits_gain0_delay0(void) const
Definition ZdcDigits.h:58
virtual ~ZdcDigits()
Definition ZdcDigits.h:41
void set_digits_gain0_delay1(const std::vector< int > &v)
const std::vector< int > & get_digits_gain1_delay1(void) const
Definition ZdcDigits.h:61
std::string whoami(void) const
Definition ZdcDigits.h:63
void print(void) const
Definition ZdcDigits.cxx:61
std::vector< int > m_digits_gain0_delay1
Definition ZdcDigits.h:74
void set_digits_gain0_delay0(const std::vector< int > &v)
const std::vector< int > & get_digits_gain1_delay0(void) const
Definition ZdcDigits.h:60
int NtimeSamples(void) const
Definition ZdcDigits.h:45
void set_digits_gain1_delay1(const std::vector< int > &v)
void set_digits_gain1_delay0(const std::vector< int > &v)
std::vector< int > m_digits_gain1_delay1
Definition ZdcDigits.h:76
const std::vector< int > & get_digits_gain0_delay1(void) const
Definition ZdcDigits.h:59
std::vector< int > m_digits_gain0_delay0
Definition ZdcDigits.h:73
std::vector< int > m_digits_gain1_delay0
Definition ZdcDigits.h:75