LArSoft  v07_13_02
Liquid Argon Software toolkit - http://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
14 #include "larcore/CoreUtils/ServiceUtil.h" // lar::providerFrom()
15 
16 
17 namespace lar {
18  /*
19  namespace details {
20 
21  } // namespace details
22  */
23 
25  template <typename... Services>
27  = lar::ProviderPack<typename Services::provider_type...>;
28 
53  template <typename... Services>
55  { return { lar::providerFrom<Services>()... }; }
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
73 
ProviderPackFromServices< Services... > extractProviders()
Returns a provider pack with providers from specified services.
Definition: ServicePack.h:54
Utilities related to art service access.
LArSoft-specific namespace.
Container for a list of pointers to providers.
Definition: ProviderPack.h:114
Data structure containing constant pointers to classes.
lar::ProviderPack< typename Services::provider_type... > ProviderPackFromServices
Type of provider pack with providers from all specified Services.
Definition: ServicePack.h:27