CMS 3D CMS Logo

Namespaces | Functions
get_underlying_safe.h File Reference
#include <memory>
#include "FWCore/Utilities/interface/propagate_const.h"
#include "FWCore/Utilities/interface/propagate_const_array.h"

Go to the source code of this file.

Namespaces

 edm
 HLT enums.
 

Functions

template<typename T >
constexpr std::shared_ptr< T > & edm::get_underlying_safe (propagate_const< std::shared_ptr< T >> &iP)
 
template<typename T >
constexpr std::shared_ptr< T const > edm::get_underlying_safe (propagate_const< std::shared_ptr< T >> const &iP)
 
template<typename T >
constexpr std::unique_ptr< T > & edm::get_underlying_safe (propagate_const< std::unique_ptr< T >> &iP)
 
template<typename T >
constexpr std::unique_ptr< T const > edm::get_underlying_safe (propagate_const< std::unique_ptr< T >> const &iP)
 
template<typename T >
constexpr T *& edm::get_underlying_safe (propagate_const< T * > &iP)
 
template<typename T >
constexpr T const * edm::get_underlying_safe (propagate_const< T * > const &iP)
 
template<typename T >
constexpr std::shared_ptr< T[]> & edm::get_underlying_safe (propagate_const_array< std::shared_ptr< T[]>> &iP)
 
template<typename T >
constexpr std::shared_ptr< T const[]> edm::get_underlying_safe (propagate_const_array< std::shared_ptr< T[]>> const &iP)
 
template<typename T >
constexpr std::unique_ptr< T[]> & edm::get_underlying_safe (propagate_const_array< std::unique_ptr< T[]>> &iP)
 
template<typename T >
constexpr std::unique_ptr< T const[]> edm::get_underlying_safe (propagate_const_array< std::unique_ptr< T[]>> const &iP)
 
template<typename T >
constexpr Tedm::get_underlying_safe (propagate_const_array< T[]> &iP)
 
template<typename T >
constexpr T const * edm::get_underlying_safe (propagate_const_array< T[]> const &iP)