20 #ifndef LARCORE_COREUTILS_SERVICEPROVIDERWRAPPERS_H 21 #define LARCORE_COREUTILS_SERVICEPROVIDERWRAPPERS_H 1 35 namespace art {
class ActivityRegistry; }
36 namespace fhicl {
class ParameterSet; }
87 template <
class PROVIDER>
100 : prov(std::make_unique<provider_type>(
config()))
110 std::unique_ptr<provider_type>
prov;
131 template <
class PROVIDER>
234 template <
typename PROVIDER,
typename INTERFACE>
255 : prov(std::make_unique<concrete_provider_type>(
config()))
260 std::unique_ptr<concrete_provider_type>
prov;
264 {
return prov.get(); }
272 #endif // LARCORE_COREUTILS_SERVICEPROVIDERWRAPPERS_H PROVIDER concrete_provider_type
type of service provider implementation
typename service_interface_type::provider_type provider_type
type of service provider interface
INTERFACE service_interface_type
art service interface class
PROVIDER provider_type
type of the service provider
virtual provider_type const * do_provider() const override
Returns a constant pointer to the service provider.
LArSoft-specific namespace.
provider_type const * provider() const
Returns a constant pointer to the service provider interface.
provider_type const * provider() const
Returns a constant pointer to the service provider.
std::unique_ptr< concrete_provider_type > prov
service provider
std::unique_ptr< provider_type > prov
service provider
Service implementation returning a provider.
Service returning a provider interface.
Service returning a provider.
PROVIDER provider_type
type of the service provider