LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
ServicePack.h
Go to the documentation of this file.
1 
9 #ifndef DETECTORINFOSERVICE_SERVICEPACK_H
10 #define DETECTORINFOSERVICE_SERVICEPACK_H 1
11 
12 // LArSoft libraries
13 #include "larcore/CoreUtils/ServiceUtil.h" // lar::providerFrom()
15 
16 namespace lar {
17  /*
18  namespace details {
19 
20  } // namespace details
21  */
22 
24  template <typename... Services>
25  using ProviderPackFromServices = lar::ProviderPack<typename Services::provider_type...>;
26 
51  template <typename... Services>
53  {
54  return {lar::providerFrom<Services>()...};
55  }
56 
57 } // namespace lar
58 
59 //==============================================================================
60 //=== template implementation
61 //===
62 /*
63 namespace lar {
64  namespace details {
65  //--------------------------------------------------------------------------
66 
67  //--------------------------------------------------------------------------
68  } // namespace details
69 } // namespace lar
70 */
71 
72 #endif // DETECTORINFOSERVICE_SERVICEPACK_H
ProviderPackFromServices< Services... > extractProviders()
Returns a provider pack with providers from specified services.
Definition: ServicePack.h:52
Utilities related to art service access.
LArSoft-specific namespace.
Container for a list of pointers to providers.
Definition: ProviderPack.h:111
Data structure containing constant pointers to classes.