Classes | Namespaces | Typedefs | Variables
AssnsTraits.h File Reference

Traits for art associations. More...

#include "larcorealg/CoreUtils/MetaUtils.h"
#include "canvas/Persistency/Common/Assns.h"
#include "canvas/Persistency/Common/Ptr.h"
#include <utility>

Go to the source code of this file.

Classes

struct  lar::util::assns_has_metadata< Assns >
 Trait: value true if Assns (association or its node) has metadata. More...
 
struct  lar::util::assns_metadata_type< Assns >
 Trait: type is metadata in Assns (association or its node). More...
 
struct  lar::util::assns_iterator_type< Assns >
 Trait: type is iterator of Assns. More...
 
struct  lar::util::assns_traits< Assns >
 Data types for the specified association type (or its node). More...
 
struct  lar::util::details::node_of< Assns >
 
struct  lar::util::details::node_of< art::Assns< L, R, D > >
 
struct  lar::util::details::node_of< art::Assns< L, R, void > >
 
struct  lar::util::assns_metadata_type< art::Assns< L, R, D > >
 
struct  lar::util::assns_metadata_type< art::AssnsNode< L, R, D > >
 
struct  lar::util::assns_metadata_type< std::pair< art::Ptr< L >, art::Ptr< R > > >
 
struct  lar::util::assns_has_metadata< Assns >
 Trait: value true if Assns (association or its node) has metadata. More...
 
struct  lar::util::assns_iterator_type< art::Assns< L, R, D > >
 
struct  lar::util::assns_iterator_type< art::Assns< L, R, void > >
 
struct  lar::util::assns_traits< art::Assns< L, R, D > >
 
struct  lar::util::assns_traits< art::AssnsNode< L, R, D > >
 
struct  lar::util::assns_traits< std::pair< art::Ptr< L >, art::Ptr< R > > >
 

Namespaces

 lar
 LArSoft-specific namespace.
 
 lar::util
 LArSoft utility namespace.
 
 lar::util::details
 LArSoft utility implementation details.
 

Typedefs

template<typename Assns >
using lar::util::assns_metadata_t = typename assns_metadata_type< Assns >::type
 Trait: type of metadata in Assns (association or its node). More...
 
template<typename Assns >
using lar::util::assns_iterator_t = typename assns_iterator_type< Assns >::type
 Trait: type of iterator of Assns. More...
 
template<typename T >
using lar::util::details::isAssnMetadata = ::util::is_not_same< T, void >
 
template<typename Assns >
using lar::util::details::node_of_t = typename node_of< Assns >::type
 

Variables

template<typename Assns >
constexpr bool lar::util::assns_has_metadata_v = assns_has_metadata<Assns>::value
 Trait: true if Assns (association or its node) has metadata. More...
 

Detailed Description

Traits for art associations.

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.

Definition in file AssnsTraits.h.