PerChannelResponse.h
Go to the documentation of this file.
1 /** This component provides per-channel responses based on a
2  * configuration data file. */
3 
4 #ifndef WIRECELLSIGPROC_PERCHANNELRESPONSE
5 #define WIRECELLSIGPROC_PERCHANNELRESPONSE
6 
9 #include "WireCellUtil/Units.h"
10 
11 #include <string>
12 #include <unordered_map>
13 
14 namespace WireCell {
15  namespace SigProc {
17  public:
18  PerChannelResponse(const char* filename="");
19 
20  virtual ~PerChannelResponse();
21 
22  // IChannelResponse
23  virtual const Waveform::realseq_t& channel_response(int channel_ident) const;
24  virtual Binning channel_response_binning() const;
25 
26 
27  // IConfigurable
28  virtual void configure(const WireCell::Configuration& config);
30 
31  private:
33  std::unordered_map<int,Waveform::realseq_t> m_cr;
35  };
36 
37  }
38 
39 }
40 #endif
virtual Binning channel_response_binning() const
Return the binning that the channel_response follows.
PerChannelResponse(const char *filename="")
Sequence< real_t > realseq_t
Definition: Waveform.h:31
std::string string
Definition: nybbler.cc:12
string filename
Definition: train.py:213
std::unordered_map< int, Waveform::realseq_t > m_cr
virtual WireCell::Configuration default_configuration() const
Optional, override to return a hard-coded default configuration.
static Config * config
Definition: config.cpp:1054
virtual const Waveform::realseq_t & channel_response(int channel_ident) const
Definition: Main.h:22
Json::Value Configuration
Definition: Configuration.h:50
def channel_ident(G, wire)
Definition: apa.py:445
virtual void configure(const WireCell::Configuration &config)
Accept a configuration.