16 Shaper(
const unsigned int n,
const double tau,
const double g,
17 std::string shaperType);
22 double Shape(
const double t)
const;
34 bool IsUnipolar()
const {
return (m_type == ShaperType::Unipolar); }
36 bool IsBipolar()
const {
return (m_type == ShaperType::Bipolar); }
44 std::string m_className =
"Shaper";
47 enum class ShaperType { Unipolar = 0, Bipolar };
48 ShaperType m_type = ShaperType::Unipolar;
56 double m_prefactor = 1.;
60 double m_transfer_func_sq = -1.;
Class for signal processing.
bool IsUnipolar() const
Is it a unipolar shaper?
double BipolarShaper(const double t) const
Transfer function for a bipolar shaper.
Shaper()=delete
Default constructor.
double PeakingTime() const
Time for the transfer function to rise from zero to peak height.
double TransferFuncSq() const
Return the integral of the transfer function squared.
void GetParameters(unsigned int &n, double &tp)
Retrieve the parameters.
double Shape(const double t) const
Evaluate the transfer function.
bool IsBipolar() const
Is it a bipolar shaper?
double UnipolarShaper(const double t) const
Transfer function for a unipolar shaper.