LArSoft
v07_13_02
Liquid Argon Software toolkit - http://larsoft.org/
|
Class to assemble the required proxy. More...
#include "CollectionProxyMaker.h"
Public Types | |
using | traits_t = CollectionProxyMakerTraits< CollProxy > |
Traits of the collection proxy for the collection proxy maker. More... | |
using | main_collection_proxy_t = typename traits_t::main_collection_proxy_t |
Type of main collection proxy. More... | |
using | main_element_t = typename traits_t::main_element_t |
Type returned by the main collection indexing operator. More... | |
using | main_collection_t = typename traits_t::main_collection_t |
Type of element of the main collection. More... | |
Static Public Member Functions | |
template<typename Event , typename... WithArgs> | |
static auto | make (Event const &event, art::InputTag const &tag, WithArgs &&...withArgs) |
Creates and returns a collection proxy based on CollProxy and with the requested associated data. More... | |
Class to assemble the required proxy.
CollProxy | a type characterizing the produced proxy |
This is a base class suitable for deriving CollectionProxyMaker
, which is used by getCollection()
to create the requested proxy. Deriving a specialization of CollectionProxyMaker
from CollectionProxyMakerBase
provides some basic definitions and functionality that might be tedious to copy.
In this, which can be considered as the default implementation of CollectionProxyMaker
, the template argument CollProxy
is expected to have the interface of CollectionProxy
. The arguments required are documented in the implementation of the make()
function. Note that the type of proxy returned does not need to be CollProxy
, but is in fact an instance of proxy::CollectionProxy
.
Definition at line 84 of file CollectionProxyMaker.h.
using proxy::CollectionProxyMakerBase< CollProxy >::main_collection_proxy_t = typename traits_t::main_collection_proxy_t |
Type of main collection proxy.
Definition at line 90 of file CollectionProxyMaker.h.
using proxy::CollectionProxyMakerBase< CollProxy >::main_collection_t = typename traits_t::main_collection_t |
Type of element of the main collection.
Definition at line 96 of file CollectionProxyMaker.h.
using proxy::CollectionProxyMakerBase< CollProxy >::main_element_t = typename traits_t::main_element_t |
Type returned by the main collection indexing operator.
Definition at line 93 of file CollectionProxyMaker.h.
using proxy::CollectionProxyMakerBase< CollProxy >::traits_t = CollectionProxyMakerTraits<CollProxy> |
Traits of the collection proxy for the collection proxy maker.
Definition at line 87 of file CollectionProxyMaker.h.
|
static |
Creates and returns a collection proxy based on CollProxy
and with the requested associated data.
Event | type of the event to read the information from |
WithArgs | type of arguments for associated data |
event | event to read the information from |
tag | input tag of the main data product |
withArgs | optional associated objects to be included |
tag
For each argument in withArgs
, an action is taken. Usually that is to add an association to the proxy.
Only a few associated data collections are supported:
withAssociated<Aux>()
(optional argument: hit-track association tag, as track by default): adds to the proxy an association to the Aux
data product (see withAssociated()
) Definition at line 281 of file CollectionProxyMaker.h.
Referenced by proxy::details::createCollectionProxyFromTraits(), and proxy::getCollection().