ResponseSys.h
Go to the documentation of this file.
1 /** Vary field response to study systematics.
2  */
3 
4 #ifndef WIRECELL_GEN_RESPONSESYS
5 #define WIRECELL_GEN_RESPONSESYS
6 
9 #include "WireCellUtil/Units.h"
10 
11 namespace WireCell {
12  namespace Gen {
13 
14  class ResponseSys : public IWaveform, public IConfigurable {
15  public:
16  ResponseSys(
17  int nticks = 10000,
18  double start = 0.0*units::us,
19  double tick = 0.5*units::us,
20  double magnitude = 1.0,
21  double time_smear = 0.0*units::us,
22  double offset = 0.0*units::us
23  );
24 
25 
26  // IConfigurable interface
27  virtual void configure(const WireCell::Configuration& cfg);
29 
30  // The starting point of the sampling
31  virtual double waveform_start() const;
32  // The sampling period aka bin width
33  virtual double waveform_period() const;
34  // The collection of samples
35  virtual const sequence_type& waveform_samples() const;
36 
37  private:
40  };
41  }
42 }
43 
44 #endif
45 
virtual WireCell::Configuration default_configuration() const
Optional, override to return a hard-coded default configuration.
Definition: ResponseSys.cxx:21
cfg
Definition: dbjson.py:29
const double tick
const int nticks
std::vector< float > sequence_type
Definition: IWaveform.h:17
virtual const sequence_type & waveform_samples() const
Definition: ResponseSys.cxx:55
virtual double waveform_period() const
Definition: ResponseSys.cxx:50
virtual void configure(const WireCell::Configuration &cfg)
Accept a configuration.
Definition: ResponseSys.cxx:25
Definition: Main.h:22
virtual double waveform_start() const
Definition: ResponseSys.cxx:45
realseq_t magnitude(const compseq_t &seq)
Return the magnitude or absolute value of the sequence.
Definition: Waveform.cxx:65
Json::Value Configuration
Definition: Configuration.h:50
static const double us
Definition: Units.h:105
ResponseSys(int nticks=10000, double start=0.0 *units::us, double tick=0.5 *units::us, double magnitude=1.0, double time_smear=0.0 *units::us, double offset=0.0 *units::us)
Definition: ResponseSys.cxx:12