11 #ifndef LARDATA_RECOBASEPROXY_PROXYBASE_PROXYASAUXPROXYMAKER_H 12 #define LARDATA_RECOBASEPROXY_PROXYBASE_PROXYASAUXPROXYMAKER_H 43 template <
typename Main,
typename AuxProxy,
typename AuxTag = AuxProxy>
73 template <
typename Event,
typename Handle,
typename MainArgs,
typename... AuxArgs>
80 auto auxProxy =
makeAuxiliaryProxy(event, auxProxyTag, std::forward<AuxArgs>(args)...);
81 return makeProxyAsParallelData<data_tag, util::collection_value_t<decltype(auxProxy)>>(
87 template <
typename Event,
typename... AuxArgs>
92 return getCollection<aux_proxy_t>(event, auxProxyTag, std::forward<AuxArgs>(args)...);
129 template <
typename Main,
140 #endif // LARDATA_RECOBASEPROXY_PROXYBASE_PROXYASAUXPROXYMAKER_H Tag data_tag
Tag labelling the associated data we are going to produce.
AuxProxy aux_proxy_t
Tag-type of the auxiliary proxy (not the type of the proxy!).
static auto makeAuxiliaryProxy(Event const &event, art::InputTag const &auxProxyTag, AuxArgs &&...args)
Creates the proxy to be used as parallel data.
Main main_element_t
Type of the main datum.
Creates an auxiliary proxy wrapper for the specified proxy.
Encloses LArSoft data product proxy objects and utilities.See this doxygen module for an introduction...
Data encapsulating a collection proxy as auxiliary data.
Creates a proxy wrapper for merging into another proxy ("main").
static auto make(Event const &event, Handle &&, MainArgs const &, art::InputTag const &auxProxyTag, AuxArgs &&...args)
Create a parallel data proxy collection using the specified tag.
Creation of a collection proxy.
Event finding and building.