All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
IGenNoise.h
Go to the documentation of this file.
1 ///////////////////////////////////////////////////////////////////////
2 ///
3 /// \file IGenNoise.h
4 ///
5 /// \brief This is the interface class for a tool to handle a GenNoise
6 /// for the overall response
7 ///
8 /// \author T. Usher
9 ///
10 ////////////////////////////////////////////////////////////////////////
11 
12 #ifndef IGenNoise_H
13 #define IGenNoise_H
14 
15 #include "fhiclcpp/ParameterSet.h"
16 #include "CLHEP/Random/RandomEngine.h"
18 
19 namespace detinfo {
20  class DetectorPropertiesData;
21 }
22 
23 namespace geo {
24  struct PlaneID;
25 }
26 
27 class TComplex;
28 
29 namespace icarus_tool
30 {
31  class IGenNoise
32  {
33  public:
34  virtual ~IGenNoise() noexcept = default;
35 
36  virtual void configure(const fhicl::ParameterSet& pset) = 0;
37 
38  virtual void nextEvent() = 0;
39 
40  virtual void generateNoise(CLHEP::HepRandomEngine& noise_engine,
41  CLHEP::HepRandomEngine& cornoise_engine,
44  double,
45  const geo::PlaneID&, // Gives Cryostat, TPC and Plane
46  unsigned int = 0) = 0; // board ID
47  };
48 }
49 
50 #endif
virtual void nextEvent()=0
The data type to uniquely identify a Plane.
Definition: geo_types.h:472
virtual void generateNoise(CLHEP::HepRandomEngine &noise_engine, CLHEP::HepRandomEngine &cornoise_engine, icarusutil::TimeVec &, detinfo::DetectorPropertiesData const &detProp, double, const geo::PlaneID &, unsigned int=0)=0
virtual ~IGenNoise() noexcept=default
IDparameter< geo::PlaneID > PlaneID
Member type of validated geo::PlaneID parameter.
std::vector< SigProcPrecision > TimeVec
virtual void configure(const fhicl::ParameterSet &pset)=0
Useful definitions.
auto const detProp