|
| Assns () |
|
| Assns (partner_t const &other) |
|
size_type | size () const |
|
const_iterator | begin () const |
|
const_iterator | end () const |
|
const_reverse_iterator | rbegin () const |
|
const_reverse_iterator | rend () const |
|
data_t const & | data (typename std::vector< data_t >::size_type index) const |
|
data_t const & | data (const_iterator it) const |
|
void | addSingle (Ptr< left_t > const &left, Ptr< right_t > const &right, data_t const &data) |
|
template<typename Ls , typename Ds > |
void | addMany (Ls const &lefts, Ptr< right_t > const &right, Ds const &data) |
|
template<typename Rs , typename Ds > |
void | addMany (Ptr< left_t > const &left, Rs const &rights, Ds const &data) |
|
void | swap (art::Assns< L, R, D > &other) |
|
std::unique_ptr< EDProduct > | makePartner (std::type_info const &wanted_wrapper_type) const |
|
void | aggregate (Assns const &) const |
|
template<typename L, typename R, typename D>
class art::Assns< L, R, D >
Definition at line 103 of file Assns.h.
template<typename L , typename R , typename D >
template<typename Ls , typename Ds >
void art::Assns< L, R, D >::addMany |
( |
Ls const & |
lefts, |
|
|
Ptr< right_t > const & |
right, |
|
|
Ds const & |
data |
|
) |
| |
|
inline |
Definition at line 560 of file Assns.h.
References art::Assns< L, R, D >::data_.
Referenced by art::Assns< L, R, D >::addMany().
564 static_assert(std::is_same_v<typename Ds::value_type, D>,
565 "\n\nart error: The data argument must be a container whose " 566 "value_type is D corresponding\n" 567 " to an Assns<L, R, D> object.\n");
568 assert(lefts.size() ==
data.size());
constexpr auto const & right(const_AssnsIter< L, R, D, Dir > const &a, const_AssnsIter< L, R, D, Dir > const &b)
void addMany(Ls const &lefts, Ptr< right_t > const &right, Ds const &data)
data_t const & data(typename std::vector< data_t >::size_type index) const
std::vector< data_t > data_
template<typename L , typename R , typename D >
template<typename Rs , typename Ds >
void art::Assns< L, R, D >::addMany |
( |
Ptr< left_t > const & |
left, |
|
|
Rs const & |
rights, |
|
|
Ds const & |
data |
|
) |
| |
Definition at line 576 of file Assns.h.
References art::Assns< L, R, D >::addMany(), and art::Assns< L, R, D >::data_.
580 static_assert(std::is_same_v<typename Ds::value_type, D>,
581 "\n\nart error: The data argument must be a container whose " 582 "value_type is D corresponding\n" 583 " to an Assns<L, R, D> object.\n");
584 assert(rights.size() ==
data.size());
void addMany(Ls const &lefts, Ptr< right_t > const &right, Ds const &data)
data_t const & data(typename std::vector< data_t >::size_type index) const
std::vector< data_t > data_
constexpr auto const & left(const_AssnsIter< L, R, D, Dir > const &a, const_AssnsIter< L, R, D, Dir > const &b)
template<typename L , typename R , typename D >
std::unique_ptr< art::EDProduct > art::Assns< L, R, D >::makePartner_ |
( |
std::type_info const & |
wanted_wrapper_type | ) |
const |
|
overrideprivate |
Definition at line 621 of file Assns.h.
References art::detail::throwPartnerException().
Referenced by art::Assns< L, R, void >::makePartner(), and art::Assns< L, R, D >::makePartner().
625 std::unique_ptr<art::EDProduct> result;
626 if (wanted_wrapper_type ==
typeid(Wrapper<partner_t>)) {
628 std::make_unique<Wrapper<partner_t>>(std::make_unique<partner_t>(*this));
629 }
else if (wanted_wrapper_type ==
typeid(Wrapper<base>)) {
630 result = std::make_unique<Wrapper<base>>(
631 std::make_unique<base>(
static_cast<base>(*this)));
632 }
else if (wanted_wrapper_type ==
typeid(Wrapper<bp>)) {
633 result = std::make_unique<Wrapper<bp>>(
634 std::make_unique<bp>(
static_cast<base>(*this)));
void throwPartnerException(std::type_info const &generator, std::type_info const &wanted_wrapper_type)
art::Assns< right_t, left_t, data_t > partner_t
template<typename L, typename R, typename D>
Definition at line 591 of file Assns.h.
References art::Assns< L, R, D >::data_, and art::Assns< L, R, D >::swap_().
Referenced by art::Assns< L, R, void >::fill_transients(), and art::Assns< L, R, D >::swap_().
void swap(art::Assns< L, R, D > &other)
void swap_(art::Assns< L, R, void > &other) override
std::vector< data_t > data_
void swap(lar::deep_const_fwd_iterator_nested< CITER, INNERCONTEXTRACT > &a, lar::deep_const_fwd_iterator_nested< CITER, INNERCONTEXTRACT > &b)
template<typename L, typename R, typename D >
Definition at line 608 of file Assns.h.
References art::errors::LogicError, and art::Assns< L, R, D >::swap().
Referenced by art::Assns< L, R, void >::swap(), and art::Assns< L, R, D >::swap().
611 swap(
dynamic_cast<Assns<L, R, D>&
>(other));
613 catch (std::bad_cast
const&) {
615 <<
"Attempt to swap base with derived!\n";
void swap(art::Assns< L, R, D > &other)
cet::coded_exception< errors::ErrorCodes, ExceptionDetail::translate > Exception