14 #ifndef BSEMCBWENDCAPNOISEADDER_HH 15 #define BSEMCBWENDCAPNOISEADDER_HH 18 #include "RtypesCore.h" 27 class TMemberInspector;
38 BSEmcBwEndcapNoiseAdder(Int_t t_mode, Double_t t_sampling_rate,
const Double_t *t_ps_freq,
const Double_t *t_ps_power, Int_t t_ps_size, Double_t t_adc_noise, Double_t t_fe_noise,
39 Double_t t_sigma_ps, Double_t t_sigma_ges, Int_t t_seed, Int_t t_verbose);
44 Int_t fTraceLength{128};
45 Int_t fBufferPosition{0};
46 Int_t fWaveformLength{0};
47 Int_t fPowerSpecSample{0};
48 Double_t fSamplingRate{0};
49 Double_t fAdcNoise{0};
52 Double_t fSigmaGes{0};
53 Double_t fInputScale{0};
54 const Double_t *fPSFreq{
nullptr};
55 const Double_t *fPSPower{
nullptr};
56 TVirtualFFT *fft{
nullptr};
60 Int_t fPSNoiseMode{1};
61 Double_t fBufferUseRate{0};
62 Bool_t fBufferIsEmpty{kTRUE};
63 Double_t *fPSNoiseBuffer{
nullptr};
64 Double_t *fBandNoiseBuffer{
nullptr};
65 Double_t *fFFTFreqBuffer{
nullptr};
66 Double_t *fFFTReCoeffBuffer{
nullptr};
67 Double_t *fFFTImCoeffBuffer{
nullptr};
69 void expand_buffer(Int_t t_wf_size);
72 void generate_ps_noise();
73 void generate_band_noise(Double_t t_min_freq, Double_t t_max_freq);
virtual ~BSEmcBwEndcapNoiseAdder()
waveform modifier to add noise to waveform
BSEmcBwEndcapNoiseAdder()
virtual void Modify(BSEmcWaveform *t_wf)