Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
larevt
larevt
CalibrationDBI
Interface
ElectronLifetimeService.h
Go to the documentation of this file.
1
#ifndef ELECTRONLIFETIMESERVICE_H
2
#define ELECTRONLIFETIMESERVICE_H
3
4
#include "
larcore/CoreUtils/ServiceUtil.h
"
5
#include "
art/Framework/Services/Registry/ServiceDeclarationMacros.h
"
6
7
//forward declarations
8
namespace
lariov
{
9
class
ElectronLifetimeProvider;
10
}
11
12
namespace
lariov
{
13
14
class
ElectronLifetimeService
{
15
16
public
:
17
using
provider_type
=
ElectronLifetimeProvider
;
18
19
virtual
~ElectronLifetimeService
() =
default
;
20
21
//retrieve provider
22
const
ElectronLifetimeProvider
&
GetProvider
()
const
{
23
return
this->
DoGetProvider
();
24
}
25
26
ElectronLifetimeProvider
const
*
provider
()
const
{
27
return
&
DoGetProvider
();
28
}
29
30
private
:
31
32
virtual
const
ElectronLifetimeProvider
&
DoGetProvider
()
const
= 0;
33
};
34
}
//end namespace lariov
35
36
DECLARE_ART_SERVICE_INTERFACE
(
lariov::ElectronLifetimeService
, LEGACY)
37
38
#endif
lariov::ElectronLifetimeService::~ElectronLifetimeService
virtual ~ElectronLifetimeService()=default
ServiceDeclarationMacros.h
ServiceUtil.h
lariov::ElectronLifetimeService::GetProvider
const ElectronLifetimeProvider & GetProvider() const
Definition:
ElectronLifetimeService.h:22
lariov::ElectronLifetimeService
Definition:
ElectronLifetimeService.h:14
lariov
Filters for channels, events, etc.
Definition:
ChannelStatusServiceTool.h:19
lariov::ElectronLifetimeService::DoGetProvider
virtual const ElectronLifetimeProvider & DoGetProvider() const =0
lariov::ElectronLifetimeService::provider
ElectronLifetimeProvider const * provider() const
Definition:
ElectronLifetimeService.h:26
DECLARE_ART_SERVICE_INTERFACE
#define DECLARE_ART_SERVICE_INTERFACE(svc, scope)
Definition:
ServiceDeclarationMacros.h:80
lariov::ElectronLifetimeProvider
Definition:
ElectronLifetimeProvider.h:21
Generated by
1.8.11