11 #ifndef LARDATA_RECOBASEPROXY_PROXYBASE_MAKEONETO01DATAFROM_H
12 #define LARDATA_RECOBASEPROXY_PROXYBASE_MAKEONETO01DATAFROM_H
19 #include "canvas/Utilities/InputTag.h"
66 template <
typename Tag,
typename Assns>
68 {
return proxy::makeOneTo01data<Tag>(assns, minSize); }
70 template <
typename Assns>
96 typename Main,
typename Aux,
typename Metadata,
typename Tag,
typename Event
99 (Event
const& event, art::InputTag
const& tag, std::size_t minSize = 0);
101 template <
typename Main,
typename Aux,
typename Metadata,
typename Event>
103 (Event
const& event, art::InputTag
const& tag, std::size_t minSize = 0)
105 return makeOneTo01dataFrom<Main, Aux, Metadata, Aux, Event>
106 (event, tag, minSize);
134 typename Aux,
typename Metadata,
typename Tag,
135 typename Handle,
typename Event
138 (Handle&& handle, Event
const& event, art::InputTag
const& tag);
140 template <
typename Aux,
typename Metadata,
typename Handle,
typename Event>
142 (Handle&& handle, Event
const& event, art::InputTag
const& tag)
144 return makeOneTo01dataFrom<Aux, Metadata, Aux, Handle, Event>
145 (std::forward<Handle>(handle), event, tag);
163 template <
typename Tag,
typename MainColl,
typename Assns>
165 {
return proxy::makeOneTo01data<Tag>(assns, mainColl.size()); }
167 template <
typename MainColl,
typename Assns>
169 {
return proxy::makeOneTo01data<typename Assns::right_t>(mainColl, assns); }
188 typename Main,
typename Aux,
typename Metadata,
193 Event
const& event, art::InputTag
const& tag, std::size_t minSize
198 using Metadata_t = Metadata;
199 using AssociatedData_t
201 using Assns_t =
typename AssociatedData_t::assns_t;
203 return makeOneTo01dataFrom<Tag>
204 (*(
event.template getValidHandle<Assns_t>(tag)), minSize);
211 typename Aux,
typename Metadata,
213 typename Handle,
typename Event
216 (Handle&& handle, Event
const& event, art::InputTag
const& tag)
221 using Metadata_t = Metadata;
222 return makeOneTo01dataFrom<Main_t, Aux_t, Metadata_t, Tag>
223 (event, tag, handle->size());
232 #endif // LARDATA_RECOBASEPROXY_PROXYBASE_MAKEONETO01DATAFROM_H
auto makeOneTo01dataFrom(Assns const &assns, std::size_t minSize=0)
Processes and returns an one-to-(zero/one) associated data object.
auto makeOneTo01data(Assns const &assns, std::size_t minSize=0)
Processes and returns an one-to-(zero/one) associated data object.
Auxiliary data from one-to-(zero-or-one) sequential association.
Object for one-to-zero/or/one associated data interface.