ATLAS Offline Software
Loading...
Searching...
No Matches
TBScintillator.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#ifndef TBEVENT_TBSCINTILLATOR_H
6#define TBEVENT_TBSCINTILLATOR_H
8// //
9// Templated class for represenetation of scintillator signals (pulse //
10// heights). Typical implementation: //
11// //
12// TBScintillator<unsigned short> theRawSignal; // raw signal //
13// TBScintillator<double> theRecoSignal; // reconstructed signal //
14// Modified: Jan 29th 2004 by Malachi Schram //
16
17
19
21
22
23
25{
26 public:
27
29 // Constructors and Destructor //
31
33 , m_signal(0)
34 , m_time_signal(0)
35 , m_signal_overflow(false)
36 , m_time_overflow(false)
37 { }
38
39 TBScintillator(const std::string& scintillatorName) : TBBeamDetector(scintillatorName,false)
40 , m_signal(0)
41 , m_time_signal(0)
42 , m_signal_overflow(false)
43 , m_time_overflow(false)
44 { }
45
46
47
48 TBScintillator(const std::string& scintillatorName,
49 bool overflow,
50 float theSignal)
51 : TBBeamDetector(scintillatorName, overflow)
52 , m_signal(theSignal)
53 , m_time_signal(0)
54 , m_signal_overflow(false)
55 , m_time_overflow(false)
56 { }
57
59 { }
60
62 // Data Manipulation //
64
65 virtual void setSignal(float theSignal)
66 { m_signal = theSignal; }
67 virtual float getSignal() const
68 { return m_signal; }
69 virtual void setSignalOverflow(bool signal_overflow)
70 { m_signal_overflow = signal_overflow; }
71 virtual bool isSignalOverflow() const
72 { return m_signal_overflow; }
73
74
75 virtual void setTimeSignal(float theSignal)
76 { m_time_signal = theSignal; }
77 virtual float getTimeSignal() const
78 { return m_time_signal; }
79 virtual void setTimeOverflow(bool time_overflow)
80 { m_time_overflow = time_overflow; }
81 virtual bool isTimeOverflow() const
82 { return m_time_overflow; }
83
84
86 // Data //
88
89 protected:
90
93
94};
95
96
97
98
99CLASS_DEF( TBScintillator , 132535898 , 1 )
100
101#endif
macros to associate a CLID to a type
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
virtual bool isSignalOverflow() const
virtual bool isTimeOverflow() const
TBScintillator(const std::string &scintillatorName)
virtual float getTimeSignal() const
virtual void setSignal(float theSignal)
TBScintillator(const std::string &scintillatorName, bool overflow, float theSignal)
virtual void setSignalOverflow(bool signal_overflow)
virtual void setTimeOverflow(bool time_overflow)
virtual float getSignal() const
virtual void setTimeSignal(float theSignal)
virtual ~TBScintillator()