All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
PhotonCalibratorServiceStandard.h
Go to the documentation of this file.
1 ////////////////////////////////////////////////////////////////////////
2 // \file PhotonCalibratorServiceStandard.h
3 //
4 // \brief Framework interface to PhotonCalibratorStandard
5 //
6 // \author ahimmel@fnal.gov
7 //
8 ////////////////////////////////////////////////////////////////////////
9 
10 #ifndef PHOTONCALIBRATORSERVICESTANDARD
11 #define PHOTONCALIBRATORSERVICESTANDARD
12 
13 // LArSoft Includes
16 
17 #include "art/Framework/Principal/Run.h"
18 #include "art/Framework/Services/Registry/ActivityRegistry.h"
19 #include "art/Framework/Services/Registry/ServiceDeclarationMacros.h"
20 #include "art/Framework/Services/Registry/ServiceTable.h"
21 #include "fhiclcpp/ParameterSet.h"
22 #include "fhiclcpp/types/Atom.h"
23 
24 namespace calib {
25 
27  public:
29 
31  fhicl::Atom<float> SPESize{fhicl::Name("SPESize")};
32  fhicl::Atom<float> SPEShift{fhicl::Name("SPEShift")};
33  fhicl::Atom<float> UseArea{fhicl::Name("UseArea")};
34  };
35 
36  using Parameters = art::ServiceTable<ServiceConfiguration_t>;
37 
38  PhotonCalibratorServiceStandard(Parameters const& config, art::ActivityRegistry& aReg)
39  : fProvider{config.get_PSet(), aReg}
40  {}
41 
42  private:
43  provider_type const*
44  provider() const override
45  {
46  return &fProvider;
47  }
48 
50  };
51 
52 }
53 
54 DECLARE_ART_SERVICE_INTERFACE_IMPL(calib::PhotonCalibratorServiceStandard,
56  LEGACY)
57 
58 #endif // PHOTONCALIBRATORSERVICESTANDARD
provider_type const * provider() const override
BEGIN_PROLOG vertical distance to the surface Name
PhotonCalibratorServiceStandard(Parameters const &config, art::ActivityRegistry &aReg)
art::ServiceTable< ServiceConfiguration_t > Parameters