LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
art::PutHandle< T > Class Template Reference

#include "Handle.h"

Classes

class  HandleTag
 

Public Types

using element_type = T
 

Public Member Functions

 PutHandle (T const *prod, EDProductGetter const *productGetter, ProductID id)
 
 operator ProductID () const
 
T const & operator* () const
 
T const * operator-> () const
 
T const * product () const
 
ProductID id () const
 
EDProductGetter const * productGetter () const noexcept
 

Private Attributes

T const * prod_
 
EDProductGetter const * productGetter_
 
ProductID id_
 

Detailed Description

template<typename T>
class art::PutHandle< T >

Definition at line 55 of file Handle.h.

Member Typedef Documentation

template<typename T>
using art::PutHandle< T >::element_type = T

Definition at line 464 of file Handle.h.

Constructor & Destructor Documentation

template<class T >
art::PutHandle< T >::PutHandle ( T const *  prod,
EDProductGetter const *  productGetter,
ProductID  id 
)
inlineexplicit

Definition at line 501 of file Handle.h.

References art::PutHandle< T >::id_, art::PutHandle< T >::productGetter(), and art::PutHandle< T >::productGetter_.

504  : prod_{prod}, productGetter_{productGetter}, id_{id}
505 {}
EDProductGetter const * productGetter_
Definition: Handle.h:496
T const * prod_
Definition: Handle.h:495
ProductID id_
Definition: Handle.h:497
EDProductGetter const * productGetter() const noexcept
Definition: Handle.h:543

Member Function Documentation

template<class T >
art::ProductID art::PutHandle< T >::id ( ) const
inline

Definition at line 536 of file Handle.h.

References art::PutHandle< T >::id_.

Referenced by art::PutHandle< T >::operator ProductID().

537 {
538  return id_;
539 }
ProductID id_
Definition: Handle.h:497
template<class T >
art::PutHandle< T >::operator ProductID ( ) const
inline

Definition at line 508 of file Handle.h.

References art::PutHandle< T >::id().

509 {
510  return id();
511 }
ProductID id() const
Definition: Handle.h:536
template<class T >
T const & art::PutHandle< T >::operator* ( ) const
inline

Definition at line 515 of file Handle.h.

References art::PutHandle< T >::prod_.

516 {
517  return *prod_;
518 }
T const * prod_
Definition: Handle.h:495
template<class T >
T const * art::PutHandle< T >::operator-> ( ) const
inline

Definition at line 522 of file Handle.h.

References art::PutHandle< T >::prod_.

523 {
524  return prod_;
525 }
T const * prod_
Definition: Handle.h:495
template<class T >
T const * art::PutHandle< T >::product ( ) const
inline

Definition at line 529 of file Handle.h.

References art::PutHandle< T >::prod_.

530 {
531  return prod_;
532 }
T const * prod_
Definition: Handle.h:495
template<typename T >
art::EDProductGetter const * art::PutHandle< T >::productGetter ( ) const
inlinenoexcept

Definition at line 543 of file Handle.h.

References art::PutHandle< T >::productGetter_.

Referenced by art::PutHandle< T >::PutHandle().

544 {
545  return productGetter_;
546 }
EDProductGetter const * productGetter_
Definition: Handle.h:496

Member Data Documentation

template<typename T>
ProductID art::PutHandle< T >::id_
private

Definition at line 497 of file Handle.h.

Referenced by art::PutHandle< T >::id(), and art::PutHandle< T >::PutHandle().

template<typename T>
T const* art::PutHandle< T >::prod_
private
template<typename T>
EDProductGetter const* art::PutHandle< T >::productGetter_
private

Definition at line 496 of file Handle.h.

Referenced by art::PutHandle< T >::productGetter(), and art::PutHandle< T >::PutHandle().


The documentation for this class was generated from the following file: