#include <DuneDPhaseDeconvolutionService.h>
Definition at line 17 of file DuneDPhaseDeconvolutionService_service.cc.
19 const string myname =
"DuneDPhaseDeconvolutionService::ctor: ";
20 pset.get_if_present<
int>(
"LogLevel",
m_LogLevel);
std::ostream & print(std::ostream &out=std::cout, std::string prefix="") const
std::ostream & DuneDPhaseDeconvolutionService::print |
( |
std::ostream & |
out = std::cout , |
|
|
std::string |
prefix = "" |
|
) |
| const |
|
virtual |
Implements AdcDeconvolutionService.
Definition at line 27 of file DuneDPhaseDeconvolutionService_service.cc.
29 const string myname =
"DuneDPhaseDeconvolutionService::update: ";
32 unsigned int nsam = samples.size();
33 if (
m_LogLevel >= 2 ) cout << myname <<
"Deconvoluting channel " << chan
34 <<
" with " << nsam <<
" samples." <<
endl;
37 unsigned int fftsize = hFFT->
FFTSize();
38 if ( nsam > fftsize ) {
39 cout << myname <<
"ERROR: Data has too many ticks for FFT: " 40 << nsam <<
" > " << fftsize <<
"." <<
endl;
44 bool pad = fftsize > nsam;
46 if (
m_LogLevel >= 3 ) cout << myname <<
" Padding sample vector to " << fftsize <<
endl;
47 samples.resize(fftsize);
48 for (
unsigned int isam=nsam; isam<fftsize; ++isam ) {
49 samples[isam] = samples[isam-nsam];
54 if (
m_LogLevel >= 3 ) cout << myname <<
" Deconvoluting." <<
endl;
56 if ( pad ) samples.resize(nsam);
59 if (
m_LogLevel >= 3 ) cout << myname <<
" Scale factor: " << norm <<
endl;
double GetDeconNorm() const override
auto norm(Vector const &v)
Return norm of the specified vector.
std::vector< AdcSignal > AdcSignalVector
QTextStream & endl(QTextStream &s)
void Deconvolute(unsigned int channel, std::vector< T > &func) const
int DuneDPhaseDeconvolutionService::m_LogLevel |
|
private |
The documentation for this class was generated from the following files: