CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Types | Public Member Functions | Private Attributes
edm::ValidHandle< T > Class Template Reference

#include <ValidHandle.h>

Public Types

using element_type = T
 

Public Member Functions

ProductID const & id () const noexcept(true)
 
T const & operator* () const noexcept(true)
 
T const * operator-> () const noexcept(true)
 
ValidHandle< T > & operator= (ValidHandle< T > const &rhs)=default
 
T const * product () const noexcept(true)
 
 ValidHandle ()=delete
 
 ValidHandle (T const *prod, ProductID id) noexcept(false)
 
 ValidHandle (T const &prod, ProductID id) noexcept(true)
 
 ValidHandle (const ValidHandle< T > &)=default
 
 ~ValidHandle ()=default
 

Private Attributes

ProductID id_
 
T const * product_
 

Detailed Description

template<typename T>
class edm::ValidHandle< T >

Definition at line 20 of file ValidHandle.h.

Member Typedef Documentation

template<typename T>
using edm::ValidHandle< T >::element_type = T

Definition at line 22 of file ValidHandle.h.

Constructor & Destructor Documentation

template<typename T>
edm::ValidHandle< T >::ValidHandle ( )
delete
template<typename T>
edm::ValidHandle< T >::ValidHandle ( T const *  prod,
ProductID  id 
)
inlinenoexcept

Definition at line 25 of file ValidHandle.h.

References edm::vhhelper::throwIfNotValid().

25  : product_(prod), id_(id) {
27  }
ProductID id_
Definition: ValidHandle.h:44
T const * product_
Definition: ValidHandle.h:43
void throwIfNotValid(const void *) noexcept(false)
Definition: ValidHandle.cc:5
template<typename T>
edm::ValidHandle< T >::ValidHandle ( T const &  prod,
ProductID  id 
)
inlinenoexcept

Definition at line 30 of file ValidHandle.h.

30 : product_(&prod), id_(id) {}
ProductID id_
Definition: ValidHandle.h:44
T const * product_
Definition: ValidHandle.h:43
template<typename T>
edm::ValidHandle< T >::ValidHandle ( const ValidHandle< T > &  )
default
template<typename T>
edm::ValidHandle< T >::~ValidHandle ( )
default

Member Function Documentation

template<typename T>
ProductID const& edm::ValidHandle< T >::id ( ) const
inlinenoexcept

Definition at line 35 of file ValidHandle.h.

References edm::ValidHandle< T >::id_.

35 { return id_; }
ProductID id_
Definition: ValidHandle.h:44
template<typename T>
T const& edm::ValidHandle< T >::operator* ( ) const
inlinenoexcept

Definition at line 40 of file ValidHandle.h.

References edm::ValidHandle< T >::product().

40 { return *product(); }
T const * product() const noexcept(true)
Definition: ValidHandle.h:37
template<typename T>
T const* edm::ValidHandle< T >::operator-> ( ) const
inlinenoexcept

Definition at line 39 of file ValidHandle.h.

References edm::ValidHandle< T >::product().

39 { return product(); }
T const * product() const noexcept(true)
Definition: ValidHandle.h:37
template<typename T>
ValidHandle<T>& edm::ValidHandle< T >::operator= ( ValidHandle< T > const &  rhs)
default
template<typename T>
T const* edm::ValidHandle< T >::product ( ) const
inlinenoexcept

Definition at line 37 of file ValidHandle.h.

References edm::ValidHandle< T >::product_.

Referenced by edm::ValidHandle< T >::operator*(), and edm::ValidHandle< T >::operator->().

37 { return product_; }
T const * product_
Definition: ValidHandle.h:43

Member Data Documentation

template<typename T>
ProductID edm::ValidHandle< T >::id_
private

Definition at line 44 of file ValidHandle.h.

Referenced by edm::ValidHandle< T >::id().

template<typename T>
T const* edm::ValidHandle< T >::product_
private

Definition at line 43 of file ValidHandle.h.

Referenced by edm::ValidHandle< T >::product().