2 #ifndef BSEMCSHAPINGNOISEADDER_HH     3 #define BSEMCSHAPINGNOISEADDER_HH     8 #include "RtypesCore.h"    16 class TMemberInspector;
    26   BSEmcShapingNoiseAdder(Double_t t_shapingTime, Double_t t_sampleRate, Double_t t_noiseWidth, Double_t t_inputScale);
    32   Double_t fShapingTime{0};
    33   Double_t fNoiseWidth{0};
    34   Double_t fInputScale{0};
    36   Double_t fSingleNoiseWidth{0};
    40     std::vector<Double_t> fBuffer{};
    45     MA(UInt_t t_size) : fBuffer(t_size, 0.0), fBPointer(0), fSum(0){};
    47     Double_t operator()(Double_t t_xN)
    49       fSum += t_xN - fBuffer[fBPointer];
    50       fBuffer[fBPointer] = t_xN;
    52       fBPointer %= fBuffer.size();
    54       return fSum / fBuffer.size();
    56     UInt_t GetSize() { 
return fBuffer.size(); };
 
virtual void Modify(BSEmcWaveform *t_wf)
 
waveform modifier to add noise to waveform