LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
SIOVChannelStatusService_service.cc
Go to the documentation of this file.
7 #include "larevt/CalibrationDBI/Interface/ChannelStatusService.h"
9 
10 namespace lariov {
11 
18  class SIOVChannelStatusService : public ChannelStatusService,
19  private lar::EnsureOnlyOneSchedule<SIOVChannelStatusService> {
20 
21  public:
23 
25 
26  private:
27  const ChannelStatusProvider& DoGetProvider() const override { return fProvider; }
28 
29  const ChannelStatusProvider* DoGetProviderPtr() const override { return &fProvider; }
30 
32  };
33 } //end namespace lariov
34 
36  lariov::ChannelStatusService,
37  SHARED)
38 
39 namespace lariov {
40 
43  : fProvider(pset.get<fhicl::ParameterSet>("ChannelStatusProvider"))
44  {
45 
46  //register callback to update local database cache before each event is processed
48  }
49 
51  {
52 
53  //First grab an update from the database
55  }
56 
57 } //end namespace lariov
58 
const ChannelStatusProvider & DoGetProvider() const override
SIOVChannelStatusService(fhicl::ParameterSet const &pset, art::ActivityRegistry &reg)
void UpdateTimeStamp(DBTimeStamp_t ts)
Update event time stamp.
constexpr TimeValue_t value() const
Definition: Timestamp.h:23
void PreProcessEvent(const art::Event &evt, art::ScheduleContext)
Class providing information about the quality of channels.
T get(std::string const &key) const
Definition: ParameterSet.h:314
GlobalSignal< detail::SignalResponseType::FIFO, void(Event const &, ScheduleContext)> sPreProcessEvent
const ChannelStatusProvider * DoGetProviderPtr() const override
Filters for channels, events, etc.
Type whose constructor throws if more than one art schedule is configured.
Channel quality provider with information from configuration file.
Timestamp time() const
Definition: Event.cc:47
TCEvent evt
Definition: DataStructs.cxx:8
DECLARE_ART_SERVICE_INTERFACE_IMPL(lariov::SIOVChannelStatusService, lariov::ChannelStatusService, SHARED) namespace lariov
#define DEFINE_ART_SERVICE_INTERFACE_IMPL(svc, iface)