PandaRoot
BSEmcAbsWaveformModifier.h
Go to the documentation of this file.
1
//****************************************************************************
2
//* This file is part of PandaRoot. *
3
//* *
4
//* PandaRoot is distributed under the terms of the *
5
//* GNU General Public License (GPL) version 3, *
6
//* copied verbatim in the file "LICENSE". *
7
//* *
8
//* Copyright (C) 2006 - 2024 FAIR GmbH and copyright holders of PandaRoot *
9
//* The copyright holders are listed in the file "COPYRIGHTHOLDERS". *
10
//* The authors are listed in the file "AUTHORS". *
11
//****************************************************************************
12
13
#ifndef BSEMCABSWAVEFORMMODIFIER_HH
14
#define BSEMCABSWAVEFORMMODIFIER_HH
15
16
#include "TObject.h"
17
18
#include "
BSEmcMultiWaveform.h
"
19
#include "
BSEmcWaveform.h
"
20
27
class
BSEmcAbsWaveformModifier
:
public
TObject {
28
public
:
29
virtual
void
Modify
(
BSEmcWaveform
*t_wf) = 0;
30
virtual
Double_t
GetScale
() {
return
1.; };
31
32
virtual
~BSEmcAbsWaveformModifier
(){};
33
34
protected
:
35
std::vector<Double_t> &
GetWaveformReference
(
BSEmcWaveform
*t_wf)
36
{
37
if
(
BSEmcMultiWaveform
*multiWf = dynamic_cast<BSEmcMultiWaveform *>(t_wf)) {
38
Int_t activeWf = multiWf->GetActiveWaveform();
39
return
multiWf->fSignals.at(activeWf);
40
}
41
return
t_wf->
fSignal
;
42
}
43
44
ClassDef
(
BSEmcAbsWaveformModifier
, 1);
45
};
46
47
#endif
/*BSEMCABSWAVEFORMMODIFIER_HH*/
BSEmcWaveform
represents a simulated waveform in an emc crystal
Definition:
BSEmcWaveform.h:75
BSEmcMultiWaveform.h
BSEmcAbsWaveformModifier::~BSEmcAbsWaveformModifier
virtual ~BSEmcAbsWaveformModifier()
Definition:
BSEmcAbsWaveformModifier.h:32
BSEmcAbsWaveformModifier::Modify
virtual void Modify(BSEmcWaveform *t_wf)=0
BSEmcAbsWaveformModifier
interface for waveform modifiers
Definition:
BSEmcAbsWaveformModifier.h:27
BSEmcAbsWaveformModifier::ClassDef
ClassDef(BSEmcAbsWaveformModifier, 1)
BSEmcAbsWaveformModifier::GetScale
virtual Double_t GetScale()
Definition:
BSEmcAbsWaveformModifier.h:30
BSEmcWaveform.h
BSEmcMultiWaveform
Class to hold multiple waveforms from one Emc Hit / ADC readout.
Definition:
BSEmcMultiWaveform.h:46
BSEmcWaveform::fSignal
std::vector< Double_t > fSignal
Definition:
BSEmcWaveform.h:130
BSEmcAbsWaveformModifier::GetWaveformReference
std::vector< Double_t > & GetWaveformReference(BSEmcWaveform *t_wf)
Definition:
BSEmcAbsWaveformModifier.h:35
home
gitlab-runner
builds
Vxspf1vo
0
PandaRootGroup
PandaRoot
detectors
emc_restructured
Base
Timebased
WaveformGeneration
BSEmcAbsWaveformModifier.h
Generated on Fri Nov 29 2024 06:04:38 for PandaRoot by
1.8.13