Diana Software
QPulse.hh
Go to the documentation of this file.
1 
10 #ifndef _QPULSE_HH_
11 #define _QPULSE_HH_
12 
13 #include "QDiana.hh"
14 #include "QVector.hh"
15 #include "QVectorI.hh"
16 #include "QSampleInfo.hh"
17 #include "QObject.hh"
18 
19 class QPulseFiller;
20 
21 
22 class QPulse : public Diana::QObject {
23 
24  public:
25 
27  QPulse();
28 
30  QPulse(const QPulse& other);
31 
33  virtual ~QPulse();
34 
36  const Diana::QVector& GetSamples() const;
37 
39  void SetSamplesADC(const Diana::QVectorI& samples);
40 
42  const Diana::QVectorI& GetSamplesADC() const;
43 
45  void SetPulseFiller(const QPulseFiller& filler);
46 
48  const QPulseFiller* GetPulseFiller() const {return fFiller_ptr; }
49 
52 
54  void Consolidate();
55 
57  void DeleteADC();
58 
60  void Clear();
61 
62  const QPulse& operator=(const QPulse&);
63 
64  void Dump(std::ostream& o) const;
65 
66  protected:
68  mutable Diana::QVector* fSamples;
69 
71  mutable bool fSamplesAreSet;
72 
74  Diana::QVectorI fSamplesADC;
75 
78 
80 };
81 
82 #endif
coordinates to filla QPulse from a continuous file
Definition: QPulseFiller.hh:19
Raw event: sampled waveform.
Definition: QPulse.hh:22
void Dump(std::ostream &o) const
Definition: QPulse.cc:106
QPulse()
default constructor
Diana::QVectorI fSamplesADC
Acquired Samples.
Definition: QPulse.hh:74
QObjectDef(QPulse, 5)
const QPulseFiller * GetPulseFiller() const
Get QPulseFiller.
Definition: QPulse.hh:48
QPulseFiller * GetPulseFiller()
Get QPulseFiller.
Definition: QPulse.hh:51
const QPulse & operator=(const QPulse &)
Definition: QPulse.cc:35
bool fSamplesAreSet
boolean for samples caching mechanism
Definition: QPulse.hh:71
void DeleteADC()
Consolidate. Store samples from the fFiller into fSamplesADC
Definition: QPulse.cc:98
const Diana::QVectorI & GetSamplesADC() const
Get Samples acquired from ADC. Beware that fSamplesADC may by empty if fFiller is valid
Definition: QPulse.cc:69
void Clear()
Clear()
Definition: QPulse.cc:13
void SetSamplesADC(const Diana::QVectorI &samples)
Set Samples acquired from ADC.
Definition: QPulse.cc:74
Diana::QVector * fSamples
Acquired Samples casted to double.
Definition: QPulse.hh:68
const Diana::QVector & GetSamples() const
Get Samples casted to double (QVector instead of QVectorI). Use this method in place of GetSamplesADC...
Definition: QPulse.cc:49
void Consolidate()
Consolidate. Store samples from the fFiller into fSamplesADC
Definition: QPulse.cc:90
QPulseFiller * fFiller_ptr
pulse filler
Definition: QPulse.hh:77
virtual ~QPulse()
destructor
Definition: QPulse.cc:28
void SetPulseFiller(const QPulseFiller &filler)
Set QPulseFiller as input from continuous files.
Definition: QPulse.cc:81