| FairRoot/PandaRoot
    | 
FADC FIR (finite impulse response) filter. More...
#include <PndEmcFadcFilter.h>
 
  
 | Public Types | |
| enum | type { arbitrary = 0, symmetric = 1, antisymmetric = -1 } | 
| Public Member Functions | |
| PndEmcFadcFilter () | |
| virtual | ~PndEmcFadcFilter () | 
| virtual void | Filter (const std::vector< Double_t > &in, std::vector< Double_t > &out) const | 
| void | SetData (Double_t data[], Int_t i_size, Int_t i_offset) | 
| Int_t | MinIndex () const | 
| Int_t | MaxIndex () const | 
| Int_t | Size () const | 
| void | Convolute (const PndEmcFadcFilter &filt) | 
| void | Convolute (const PndEmcFadcFilter &lhs, const PndEmcFadcFilter &rhs) | 
| void | Clear () | 
| void | SetupMA (Int_t i_width) | 
| void | SetupMWD (Int_t i_width, Double_t tau) | 
| void | SetupMatchedFilter (Int_t i_width, PndEmcAbsPulseshape *pulseshape, Double_t sampleRate) | 
| void | SetupBipolarTrapez (Int_t i_rise, Int_t i_flat, Int_t i_width) | 
| void | SetupTrapez (Int_t i_rise, Int_t i_flat) | 
| void | SetupBipolarTriangle (Int_t i_rise) | 
| void | SetupDifferentiator (Int_t i_lag=0, Int_t i_width=1) | 
| void | SetupDoubleDifferentiator (Int_t i_npos=1, Int_t i_nneg=1, Int_t i_nzero=0) | 
| void | SetupPZDifferentiator (Int_t i_lag=0, Double_t d_fac=1.) | 
| void | SetNormalizeFloating (Double_t d_norm=1.) | 
| void | SetNormalizeInteger (Int_t i_shift=0) | 
| std::vector< Double_t > | GetWeights () const | 
| Private Attributes | |
| std::vector< Double_t > | fCoeff | 
| Int_t | fOffset | 
| Int_t | fType | 
| Bool_t | fIntegerize | 
| Double_t | fNormFactor | 
| Int_t | fShiftCount | 
FADC FIR (finite impulse response) filter.
Definition at line 21 of file PndEmcFadcFilter.h.
| Enumerator | |
|---|---|
| arbitrary | |
| symmetric | |
| antisymmetric | |
Definition at line 24 of file PndEmcFadcFilter.h.
| PndEmcFadcFilter::PndEmcFadcFilter | ( | ) | 
Definition at line 29 of file PndEmcFadcFilter.cxx.
References fCoeff.
| 
 | virtual | 
Definition at line 40 of file PndEmcFadcFilter.cxx.
| void PndEmcFadcFilter::Clear | ( | ) | 
Definition at line 389 of file PndEmcFadcFilter.cxx.
References arbitrary, fCoeff, fOffset, and fType.
Referenced by Convolute(), SetData(), SetupBipolarTrapez(), SetupBipolarTriangle(), SetupDifferentiator(), SetupDoubleDifferentiator(), SetupMA(), SetupMatchedFilter(), SetupMWD(), SetupPZDifferentiator(), and SetupTrapez().
| void PndEmcFadcFilter::Convolute | ( | const PndEmcFadcFilter & | filt | ) | 
Definition at line 83 of file PndEmcFadcFilter.cxx.
| void PndEmcFadcFilter::Convolute | ( | const PndEmcFadcFilter & | lhs, | 
| const PndEmcFadcFilter & | rhs | ||
| ) | 
Definition at line 91 of file PndEmcFadcFilter.cxx.
References arbitrary, Clear(), Double_t, fCoeff, fIntegerize, fNormFactor, fOffset, fShiftCount, fType, i, and Size().
| 
 | virtual | 
Definition at line 44 of file PndEmcFadcFilter.cxx.
References Double_t, fCoeff, fIntegerize, fNormFactor, i, MaxIndex(), and MinIndex().
Referenced by PndEmcPSATrapDigiFilter::Process(), PndEmcPSAMatchedDigiFilter::Process(), and testFilter().
| 
 | inline | 
| Int_t PndEmcFadcFilter::MaxIndex | ( | ) | const | 
Definition at line 378 of file PndEmcFadcFilter.cxx.
References fCoeff, and fOffset.
Referenced by Filter().
| Int_t PndEmcFadcFilter::MinIndex | ( | ) | const | 
| void PndEmcFadcFilter::SetData | ( | Double_t | data[], | 
| Int_t | i_size, | ||
| Int_t | i_offset | ||
| ) | 
Definition at line 128 of file PndEmcFadcFilter.cxx.
References antisymmetric, arbitrary, Clear(), Double_t, fCoeff, fOffset, fType, i, and symmetric.
Referenced by testFilter().
| void PndEmcFadcFilter::SetNormalizeFloating | ( | Double_t | d_norm = 1. | ) | 
Definition at line 353 of file PndEmcFadcFilter.cxx.
References fIntegerize, fNormFactor, and fShiftCount.
| void PndEmcFadcFilter::SetNormalizeInteger | ( | Int_t | i_shift = 0 | ) | 
Definition at line 362 of file PndEmcFadcFilter.cxx.
References fIntegerize, fNormFactor, fShiftCount, and i.
| void PndEmcFadcFilter::SetupBipolarTrapez | ( | Int_t | i_rise, | 
| Int_t | i_flat, | ||
| Int_t | i_width | ||
| ) | 
Definition at line 217 of file PndEmcFadcFilter.cxx.
References Clear(), fCoeff, fType, i, and symmetric.
| void PndEmcFadcFilter::SetupBipolarTriangle | ( | Int_t | i_rise | ) | 
Definition at line 264 of file PndEmcFadcFilter.cxx.
References antisymmetric, Clear(), fCoeff, fOffset, fType, and i.
| void PndEmcFadcFilter::SetupDifferentiator | ( | Int_t | i_lag = 0, | 
| Int_t | i_width = 1 | ||
| ) | 
Definition at line 284 of file PndEmcFadcFilter.cxx.
References antisymmetric, Clear(), fCoeff, fOffset, fType, and i.
| void PndEmcFadcFilter::SetupDoubleDifferentiator | ( | Int_t | i_npos = 1, | 
| Int_t | i_nneg = 1, | ||
| Int_t | i_nzero = 0 | ||
| ) | 
Definition at line 303 of file PndEmcFadcFilter.cxx.
References Clear(), fCoeff, fOffset, fType, i, max(), and symmetric.
| void PndEmcFadcFilter::SetupMA | ( | Int_t | i_width | ) | 
Definition at line 160 of file PndEmcFadcFilter.cxx.
References Clear(), fCoeff, fType, i, and symmetric.
| void PndEmcFadcFilter::SetupMatchedFilter | ( | Int_t | i_width, | 
| PndEmcAbsPulseshape * | pulseshape, | ||
| Double_t | sampleRate | ||
| ) | 
Definition at line 193 of file PndEmcFadcFilter.cxx.
References arbitrary, Clear(), Double_t, fCoeff, fType, i, t, val, and PndEmcAbsPulseshape::value().
Referenced by PndEmcPSAMatchedDigiFilter::Process().
| void PndEmcFadcFilter::SetupMWD | ( | Int_t | i_width, | 
| Double_t | tau | ||
| ) | 
Definition at line 175 of file PndEmcFadcFilter.cxx.
References arbitrary, Clear(), fCoeff, fType, and i.
| void PndEmcFadcFilter::SetupPZDifferentiator | ( | Int_t | i_lag = 0, | 
| Double_t | d_fac = 1. | ||
| ) | 
Definition at line 336 of file PndEmcFadcFilter.cxx.
References arbitrary, Clear(), fCoeff, fOffset, fType, and i.
| void PndEmcFadcFilter::SetupTrapez | ( | Int_t | i_rise, | 
| Int_t | i_flat | ||
| ) | 
Definition at line 244 of file PndEmcFadcFilter.cxx.
References Clear(), fCoeff, fOffset, fType, i, and symmetric.
Referenced by PndEmcPSATrapDigiFilter::Process(), and testFilter().
| Int_t PndEmcFadcFilter::Size | ( | ) | const | 
| 
 | private | 
Definition at line 61 of file PndEmcFadcFilter.h.
Referenced by Clear(), Convolute(), Filter(), GetWeights(), MaxIndex(), PndEmcFadcFilter(), SetData(), SetupBipolarTrapez(), SetupBipolarTriangle(), SetupDifferentiator(), SetupDoubleDifferentiator(), SetupMA(), SetupMatchedFilter(), SetupMWD(), SetupPZDifferentiator(), SetupTrapez(), and Size().
| 
 | private | 
Definition at line 64 of file PndEmcFadcFilter.h.
Referenced by Convolute(), Filter(), SetNormalizeFloating(), and SetNormalizeInteger().
| 
 | private | 
Definition at line 65 of file PndEmcFadcFilter.h.
Referenced by Convolute(), Filter(), SetNormalizeFloating(), and SetNormalizeInteger().
| 
 | private | 
Definition at line 62 of file PndEmcFadcFilter.h.
Referenced by Clear(), Convolute(), MaxIndex(), MinIndex(), SetData(), SetupBipolarTriangle(), SetupDifferentiator(), SetupDoubleDifferentiator(), SetupPZDifferentiator(), and SetupTrapez().
| 
 | private | 
Definition at line 66 of file PndEmcFadcFilter.h.
Referenced by Convolute(), SetNormalizeFloating(), and SetNormalizeInteger().
| 
 | private | 
Definition at line 63 of file PndEmcFadcFilter.h.
Referenced by Clear(), Convolute(), SetData(), SetupBipolarTrapez(), SetupBipolarTriangle(), SetupDifferentiator(), SetupDoubleDifferentiator(), SetupMA(), SetupMatchedFilter(), SetupMWD(), SetupPZDifferentiator(), and SetupTrapez().
 1.8.5
 1.8.5