All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Namespaces | Typedefs
withAssociated.h File Reference

Functions to add associated data to a collection proxy. More...

#include "lardata/RecoBaseProxy/ProxyBase/WithAssociatedStructBase.h"
#include "lardata/RecoBaseProxy/ProxyBase/AssociatedDataProxyMaker.h"
#include <tuple>
#include <utility>

Go to the source code of this file.

Namespaces

 proxy
 
 proxy::details
 

Typedefs

template<typename Aux , typename Metadata , typename ArgTuple , typename AuxTag = Aux>
using proxy::details::WithAssociatedStruct = WithAssociatedStructBase< Aux, Metadata, ArgTuple, AssociatedDataProxyMakerWrapper< Aux, Metadata, AuxTag >::template maker_t, AuxTag >
 

Functions

One-to-many sequential associations

These functions allow to merge into a data collection proxy auxiliary data via an art association fulfilling the one-to-many sequential association requirement.

Two categories of functions are available depending on the data source:

Variants of proxy::withAssociated() called proxy::withAssociatedMeta() allow merging the metadata of an association too. The proxy::wrapAssociated() functions always merge the metadata if the wrapped association has it.

Also, variants are available to customize the tag class.

The implementation of this feature is documented in its own doxygen module.

template<typename Aux , typename Metadata , typename AuxTag , typename... Args>
auto proxy::withAssociatedMetaAs (Args &&...args)
 Helper function to merge associated data with metadata. More...
 
template<typename Aux , typename AuxTag , typename... Args>
auto proxy::withAssociatedAs (Args &&...args)
 Helper function to merge associated data with no metadata. More...
 
template<typename Aux , typename Metadata , typename... Args>
auto proxy::withAssociatedMeta (Args &&...args)
 Helper function to merge associated data. More...
 
template<typename Aux , typename... Args>
auto proxy::withAssociated (Args &&...args)
 Helper function to merge associated data with no metadata. More...
 
template<typename AuxTag , typename Assns >
auto proxy::wrapAssociatedAs (Assns const &assns)
 Helper function to merge associated data from a given association. More...
 
template<typename Assns >
auto proxy::wrapAssociated (Assns const &assns)
 Helper function to merge associated data from a given association. More...
 
template<typename AuxTag , typename Assns >
auto proxy::wrapAssociated (Assns const &assns)
 Helper function to merge associated data from a given association. More...
 

Detailed Description

Functions to add associated data to a collection proxy.

Author
Gianluca Petrillo (petri.nosp@m.llo@.nosp@m.fnal..nosp@m.gov)
Date
July 27, 2017
See Also
lardata/RecoBaseProxy/ProxyBase.h

This library is header-only. It provides two classes of functions:

Definition in file withAssociated.h.