LArSoft
v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
|
#include "SignalShaper.h"
Public Member Functions | |
SignalShaper (int fftsize, std::string fftopt) | |
virtual | ~SignalShaper () |
const std::vector< double > & | Response () const |
const std::vector< double > & | Response_save () const |
const std::vector< std::complex< double > > & | ConvKernel () const |
const std::vector< std::complex< double > > & | Filter () const |
const std::vector< std::complex< double > > & | DeconvKernel () const |
template<class T > | |
void | Convolute (std::vector< T > &func) const |
template<class T > | |
void | Deconvolute (std::vector< T > &func) const |
void | Reset () |
void | save_response () |
void | set_normflag (bool flag) |
void | AddResponseFunction (const std::vector< double > &resp, bool ResetResponse=false) |
void | ShiftResponseTime (double ticks) |
void | SetPeakResponseTime (double tick) |
void | AddFilterFunction (const std::vector< std::complex< double >> &filt) |
void | SetDeconvKernelPolarity (int pol) |
void | LockResponse () const |
void | CalculateDeconvKernel () const |
Private Attributes | |
bool | fResponseLocked |
bool | fFilterLocked |
std::vector< double > | fResponse |
std::vector< double > | fResponse_save |
std::vector< std::complex< double > > | fConvKernel |
std::vector< std::complex< double > > | fFilter |
std::vector< std::complex< double > > | fDeconvKernel |
int | fDeconvKernelPolarity |
bool | fNorm |
int | fFFTSize |
const void * | fPlan |
const void * | rPlan |
std::unique_ptr< util::LArFFTWPlan > | fFFTPlan |
std::unique_ptr< util::LArFFTW > | fFFT |
Definition at line 13 of file SignalShaper.h.
util::SignalShaper::SignalShaper | ( | int | fftsize, |
std::string | fftopt | ||
) |
Definition at line 8 of file SignalShaper.cxx.
|
virtual |
Definition at line 20 of file SignalShaper.cxx.
void util::SignalShaper::AddFilterFunction | ( | const std::vector< std::complex< double >> & | filt | ) |
Definition at line 127 of file SignalShaper.cxx.
References fFFTSize, fFilter, fFilterLocked, filt, and n.
Referenced by set_normflag().
void util::SignalShaper::AddResponseFunction | ( | const std::vector< double > & | resp, |
bool | ResetResponse = false |
||
) |
Definition at line 38 of file SignalShaper.cxx.
References fConvKernel, fFFT, fFFTSize, fResponse, and fResponseLocked.
Referenced by set_normflag().
void util::SignalShaper::CalculateDeconvKernel | ( | ) | const |
Definition at line 199 of file SignalShaper.cxx.
References util::abs(), fConvKernel, fDeconvKernel, fDeconvKernelPolarity, fFFT, fFFTSize, fFilter, fFilterLocked, fNorm, fResponse, LockResponse(), and n.
Referenced by set_normflag().
|
inline |
Definition at line 22 of file SignalShaper.h.
References fConvKernel.
void util::SignalShaper::Convolute | ( | std::vector< T > & | func | ) | const |
Referenced by DeconvKernel().
|
inline |
Definition at line 24 of file SignalShaper.h.
References Convolute(), Deconvolute(), fDeconvKernel, and Reset().
void util::SignalShaper::Deconvolute | ( | std::vector< T > & | func | ) | const |
Referenced by DeconvKernel().
|
inline |
Definition at line 23 of file SignalShaper.h.
References fFilter.
void util::SignalShaper::LockResponse | ( | ) | const |
Definition at line 167 of file SignalShaper.cxx.
References fConvKernel, fFFTSize, fResponse, fResponseLocked, and n.
Referenced by CalculateDeconvKernel(), and set_normflag().
void util::SignalShaper::Reset | ( | ) |
Definition at line 24 of file SignalShaper.cxx.
References fConvKernel, fDeconvKernel, fDeconvKernelPolarity, fFilter, fFilterLocked, fResponse, and fResponseLocked.
Referenced by DeconvKernel().
|
inline |
|
inline |
|
inline |
|
inline |
Definition at line 46 of file SignalShaper.h.
References AddFilterFunction(), AddResponseFunction(), CalculateDeconvKernel(), fNorm, LockResponse(), SetDeconvKernelPolarity(), SetPeakResponseTime(), ShiftResponseTime(), and lar::dump::vector().
void util::SignalShaper::SetDeconvKernelPolarity | ( | int | pol | ) |
Definition at line 151 of file SignalShaper.cxx.
References fDeconvKernelPolarity.
Referenced by set_normflag().
void util::SignalShaper::SetPeakResponseTime | ( | double | tick | ) |
Definition at line 105 of file SignalShaper.cxx.
References fFFT, fFFTSize, fResponse, fResponseLocked, and ShiftResponseTime().
Referenced by set_normflag().
void util::SignalShaper::ShiftResponseTime | ( | double | ticks | ) |
Definition at line 88 of file SignalShaper.cxx.
References fConvKernel, fFFT, fResponse, and fResponseLocked.
Referenced by set_normflag(), and SetPeakResponseTime().
|
private |
Definition at line 87 of file SignalShaper.h.
Referenced by AddResponseFunction(), CalculateDeconvKernel(), ConvKernel(), LockResponse(), Reset(), and ShiftResponseTime().
|
mutableprivate |
Definition at line 93 of file SignalShaper.h.
Referenced by CalculateDeconvKernel(), DeconvKernel(), and Reset().
|
private |
Definition at line 98 of file SignalShaper.h.
Referenced by CalculateDeconvKernel(), Reset(), and SetDeconvKernelPolarity().
|
private |
Definition at line 107 of file SignalShaper.h.
Referenced by AddResponseFunction(), CalculateDeconvKernel(), SetPeakResponseTime(), and ShiftResponseTime().
|
private |
Definition at line 106 of file SignalShaper.h.
|
private |
Definition at line 103 of file SignalShaper.h.
Referenced by AddFilterFunction(), AddResponseFunction(), CalculateDeconvKernel(), LockResponse(), and SetPeakResponseTime().
|
private |
Definition at line 90 of file SignalShaper.h.
Referenced by AddFilterFunction(), CalculateDeconvKernel(), Filter(), and Reset().
|
mutableprivate |
Definition at line 80 of file SignalShaper.h.
Referenced by AddFilterFunction(), CalculateDeconvKernel(), and Reset().
|
private |
Definition at line 101 of file SignalShaper.h.
Referenced by CalculateDeconvKernel(), and set_normflag().
|
private |
Definition at line 104 of file SignalShaper.h.
|
private |
Definition at line 83 of file SignalShaper.h.
Referenced by AddResponseFunction(), CalculateDeconvKernel(), LockResponse(), Reset(), Response(), save_response(), SetPeakResponseTime(), and ShiftResponseTime().
|
private |
Definition at line 84 of file SignalShaper.h.
Referenced by Response_save(), and save_response().
|
mutableprivate |
Definition at line 79 of file SignalShaper.h.
Referenced by AddResponseFunction(), LockResponse(), Reset(), SetPeakResponseTime(), and ShiftResponseTime().
|
private |
Definition at line 105 of file SignalShaper.h.