1 #ifndef CalibCalorimetry_HcalAlgos_QIE8Simulator_h_ 2 #define CalibCalorimetry_HcalAlgos_QIE8Simulator_h_ 22 bool interpolateCubic =
false,
23 double preampOutputCut = -1.0e100,
24 double inputGain = 1.0,
25 double outputGain = 1.0);
70 template <
class Signal>
122 unsigned run(
double dt,
double tstop,
double tDigitize,
double* TS,
unsigned lenTS);
168 #endif // CalibCalorimetry_HcalAlgos_QIE8Simulator_h_ const AbsElectronicODERHS & getRHS() const
double getInputGain() const
double getParameter(const unsigned which) const
std::vector< double > initialConditions_
double getInputStartTime() const
void setStartTime(const double newStartTime)
const AbsODERHS * getRHS() const
bool integrateToGetCharge_
void setInputSignal(const Signal &inputSignal)
double interpolateCoordinate(unsigned which, double t, bool cubic=false) const
void setInputAmplitude(const double a)
double totalIntegratedCharge(double t) const
unsigned nParameters() const
double getStartTime() const
double getInputAmplitude() const
static double adcTSWidth()
void setShape(const Real *values, const unsigned len)
double getIntegral() const
The Signals That Services Can Subscribe To This is based on ActivityRegistry and is current per Services can connect to the signals distributed by the ActivityRegistry in order to monitor the activity of the application Each possible callback has some defined which we here list in angle e g
std::vector< double > historyBuffer_
void setInitialConditions(const double *values, const unsigned len)
void scaleInputSignal(const double s)
const HcalInterpolatedPulse & inputPulse() const
void setInputIntegral(const double d)
void setLeadingParameters(const double *values, const unsigned len)
double interpolateIntegrated(unsigned which, double t, bool cubic=false) const
void setPreampOutputCut(const double p)
void setParameter(const unsigned which, const double value)
double getPreampOutputCut() const
void setRHS(const AbsElectronicODERHS &rhs, unsigned chargeNode, bool interpolateCubic=false)
AbsElectronicODERHS & modifiableRHS()
double controlOutput(double t) const
double preampOutput(double t) const
void setInputPulse(const Pulse &pulse)
void setParameter(const unsigned which, const double p)
double getInputIntegral() const
double lastStopTime() const
double getPeakValue() const
void setInputShape(const Real *values, const unsigned len)
double preampPeakTime() const
void setInputStartTime(const double newStartTime)
double getCharge(const double t) const
void validateGain() const
const HcalInterpolatedPulse & getInputSignal() const
void setPeakValue(const double newValue)
unsigned run(double dt, double tstop, double tDigitize, double *TS, unsigned lenTS)
virtual unsigned nParameters() const =0
void setInputGain(const double g)
unsigned long getRunCount() const
void zeroInitialConditions()
double getParameter(const unsigned which) const
double getOutputGain() const
void setIntegral(const double newValue)
void setLeadingParameters(const double *values, const unsigned len)
static const unsigned maxlen
void setOutputGain(const double g)