All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
IElectronicsResponse.h
Go to the documentation of this file.
1 ///////////////////////////////////////////////////////////////////////
2 ///
3 /// \file IElectronicsResponse.h
4 ///
5 /// \brief This is the interface class for a tool to handle the
6 /// electronics response.
7 ///
8 /// \author T. Usher
9 ///
10 ////////////////////////////////////////////////////////////////////////
11 
12 #ifndef IElectronicsResponse_H
13 #define IElectronicsResponse_H
14 
15 #include "fhiclcpp/ParameterSet.h"
17 
18 namespace art
19 {
20  class TFileDirectory;
21 }
22 
23 namespace icarus_tool
24 {
26  {
27  public:
28  virtual ~IElectronicsResponse() noexcept = default;
29 
30  virtual void configure(const fhicl::ParameterSet& pset) = 0;
31  virtual void setResponse(size_t numBins, double binWidth) = 0;
32  virtual void outputHistograms(art::TFileDirectory&) const = 0;
33 
34  virtual size_t getPlane() const = 0;
35  virtual double getFCperADCMicroS() const = 0;
36  virtual double getASICShapingTime() const = 0;
37  virtual const icarusutil::TimeVec& getResponseVec() const = 0;
38  virtual const icarusutil::FrequencyVec& getResponseFFTVec() const = 0;
39  };
40 }
41 
42 #endif
virtual size_t getPlane() const =0
std::vector< ComplexVal > FrequencyVec
virtual void setResponse(size_t numBins, double binWidth)=0
std::vector< SigProcPrecision > TimeVec
virtual const icarusutil::FrequencyVec & getResponseFFTVec() const =0
virtual void outputHistograms(art::TFileDirectory &) const =0
virtual ~IElectronicsResponse() noexcept=default
virtual double getFCperADCMicroS() const =0
virtual const icarusutil::TimeVec & getResponseVec() const =0
virtual void configure(const fhicl::ParameterSet &pset)=0
Useful definitions.
virtual double getASICShapingTime() const =0