BmnRoot
Loading...
Searching...
No Matches
WfmProcessor.h
Go to the documentation of this file.
1#ifndef WfmProcessor_H
2#define WfmProcessor_H
3
4#include "BmnDigiContainerTemplate.h"
5#include "FairLogger.h"
6#include "PronyFitter.h"
7
8#include <iostream>
9#include <numeric>
10
12{
13
14 public:
16 : fdigiPars{false, 0, 0, 0.0f, 0, false, false, {}}
17 , fSignalLength(0)
18 , fAZik(nullptr)
19 {}
20
21 virtual ~WfmProcessor();
22
23 protected:
24 struct digiPars
25 {
29 float threshold;
32
33 bool isfit;
34 std::vector<std::complex<float>> harmonics;
35 } fdigiPars;
36
37 void ProcessWfm(std::vector<float>& wfm, BmnDigiContainerTemplate* digi);
39 std::complex<float>** fAZik; // Inverse Harmo matrix for fit
40
41 private:
42 void MeanRMScalc(std::vector<float> wfm, float* Mean, float* RMS, int begin, int end, int step = 1);
43 ClassDef(WfmProcessor, 1);
44};
45#endif /* WfmProcessor_H */
Data class for Bmn digi container template.
std::complex< float > ** fAZik
struct WfmProcessor::digiPars fdigiPars
std::vector< std::complex< float > > harmonics