CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Public Attributes
edm::eventsetup::produce::ProductHolder< T1, TArgs > Struct Template Reference

#include <ESProducts.h>

Public Types

using head_type = parent_type
 
using parent_type = ProductHolder< TArgs... >
 
using tail_type = T1
 

Public Member Functions

void moveTo (T1 &oValue)
 
template<typename T >
void moveToRecursive (T &iValuesTo)
 
ProductHolder< T1, TArgs... > & operator= (ProductHolder< T1, TArgs... > &&)=default
 
ProductHolder< T1, TArgs... > & operator= (ProductHolder< T1, TArgs... > const &)=default
 
 ProductHolder ()
 
 ProductHolder (ProductHolder< T1, TArgs... > &&)=default
 
 ProductHolder (ProductHolder< T1, TArgs... > const &)=default
 
template<typename T >
void setAllValues (T &iValuesFrom)
 
void setFrom (T1 &iValue)
 
void setFrom (T1 &&iValue)
 
template<typename T >
void setFromRecursive (T &iValuesTo)
 

Public Attributes

T1 value
 

Detailed Description

template<typename T1, typename... TArgs>
struct edm::eventsetup::produce::ProductHolder< T1, TArgs >

Definition at line 34 of file ESProducts.h.

Member Typedef Documentation

template<typename T1, typename... TArgs>
using edm::eventsetup::produce::ProductHolder< T1, TArgs >::head_type = parent_type

Definition at line 68 of file ESProducts.h.

template<typename T1, typename... TArgs>
using edm::eventsetup::produce::ProductHolder< T1, TArgs >::parent_type = ProductHolder<TArgs...>

Definition at line 35 of file ESProducts.h.

template<typename T1, typename... TArgs>
using edm::eventsetup::produce::ProductHolder< T1, TArgs >::tail_type = T1

Definition at line 67 of file ESProducts.h.

Constructor & Destructor Documentation

template<typename T1, typename... TArgs>
edm::eventsetup::produce::ProductHolder< T1, TArgs >::ProductHolder ( )
inline
template<typename T1, typename... TArgs>
edm::eventsetup::produce::ProductHolder< T1, TArgs >::ProductHolder ( ProductHolder< T1, TArgs... > &&  )
default
template<typename T1, typename... TArgs>
edm::eventsetup::produce::ProductHolder< T1, TArgs >::ProductHolder ( ProductHolder< T1, TArgs... > const &  )
default

Member Function Documentation

template<typename T1, typename... TArgs>
void edm::eventsetup::produce::ProductHolder< T1, TArgs >::moveTo ( T1 &  oValue)
inline

Definition at line 48 of file ESProducts.h.

48 { oValue = std::move(value); }
Definition: value.py:1
def move(src, dest)
Definition: eostools.py:511
template<typename T1, typename... TArgs>
template<typename T >
void edm::eventsetup::produce::ProductHolder< T1, TArgs >::moveToRecursive ( T iValuesTo)
inline

Definition at line 61 of file ESProducts.h.

61  {
62  iValuesTo.moveTo(value);
64  }
Definition: value.py:1
template<typename T1, typename... TArgs>
ProductHolder<T1, TArgs...>& edm::eventsetup::produce::ProductHolder< T1, TArgs >::operator= ( ProductHolder< T1, TArgs... > &&  )
default
template<typename T1, typename... TArgs>
ProductHolder<T1, TArgs...>& edm::eventsetup::produce::ProductHolder< T1, TArgs >::operator= ( ProductHolder< T1, TArgs... > const &  )
default
template<typename T1, typename... TArgs>
template<typename T >
void edm::eventsetup::produce::ProductHolder< T1, TArgs >::setAllValues ( T iValuesFrom)
inline

Definition at line 44 of file ESProducts.h.

44  {
45  iValuesFrom.setFromRecursive(*this);
46  }
template<typename T1, typename... TArgs>
void edm::eventsetup::produce::ProductHolder< T1, TArgs >::setFrom ( T1 &  iValue)
inline

Definition at line 51 of file ESProducts.h.

Referenced by edm::ESProducts< TArgs >::ESProducts().

51 { value = iValue; }
Definition: value.py:1
template<typename T1, typename... TArgs>
void edm::eventsetup::produce::ProductHolder< T1, TArgs >::setFrom ( T1 &&  iValue)
inline

Definition at line 52 of file ESProducts.h.

52 { value = std::move(iValue); }
Definition: value.py:1
def move(src, dest)
Definition: eostools.py:511
template<typename T1, typename... TArgs>
template<typename T >
void edm::eventsetup::produce::ProductHolder< T1, TArgs >::setFromRecursive ( T iValuesTo)
inline

Definition at line 55 of file ESProducts.h.

55  {
56  iValuesTo.setFrom(value);
58  }
Definition: value.py:1

Member Data Documentation

template<typename T1, typename... TArgs>
T1 edm::eventsetup::produce::ProductHolder< T1, TArgs >::value