SpaceChargeServiceProtoDUNE.h
Go to the documentation of this file.
1 ////////////////////////////////////////////////////////////////////////
2 // \file SpaceChargeServiceProtoDUNE.h
3 //
4 // \brief header of service for storing/accessing space charge distortions for ProtoDUNE
5 //
6 // \author mrmooney@bnl.gov
7 //
8 ////////////////////////////////////////////////////////////////////////
9 #ifndef SPACECHARGESERVICEPROTODUNE_H
10 #define SPACECHARGESERVICEPROTODUNE_H
11 
12 #include "fhiclcpp/ParameterSet.h"
19 
20 
21 namespace spacecharge{
23  public:
24 
25  // this enables art to print the configuration help:
26  //using Parameters = art::ServiceTable<spacecharge::SpaceChargeProtoDUNE::ConfigurationParameters_t>;
27 
29 
30  void reconfigure(fhicl::ParameterSet const& pset);
31  void preBeginRun(const art::Run& run);
32 
33 
34  virtual const provider_type* provider() const override { return fProp.get();}
35 
36  private:
37 
38  std::unique_ptr<spacecharge::SpaceChargeProtoDUNE> fProp;
39 
40  }; // class SpaceChargeServiceProtoDUNE
41 } //namespace spacecharge
43 #endif // SPACECHARGESERVICEPROTODUNE_H
DECLARE_ART_SERVICE_INTERFACE_IMPL(MySharedService, art::test::MyServiceInterface, SHARED) DEFINE_ART_SERVICE_INTERFACE_IMPL(MySharedService
Definition: Run.h:17
virtual const provider_type * provider() const override
SpaceChargeServiceProtoDUNE(fhicl::ParameterSet const &pset, art::ActivityRegistry &reg)
std::unique_ptr< spacecharge::SpaceChargeProtoDUNE > fProp