CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Classes | Namespaces | Typedefs | Functions
device_unique_ptr.h File Reference
#include <memory>
#include <functional>
#include "FWCore/Utilities/interface/Likely.h"
#include "HeterogeneousCore/CUDAUtilities/interface/allocate_device.h"
#include "HeterogeneousCore/CUDAUtilities/interface/currentDevice.h"

Go to the source code of this file.

Classes

struct  cms::cuda::device::impl::make_device_unique_selector< T[N]>::bounded_array
 
class  cms::cuda::device::impl::DeviceDeleter
 
struct  cms::cuda::device::impl::make_device_unique_selector< T >
 
struct  cms::cuda::device::impl::make_device_unique_selector< T[]>
 
struct  cms::cuda::device::impl::make_device_unique_selector< T[N]>
 

Namespaces

 cms
 Namespace of DDCMS conversion namespace.
 
 cms::cuda
 
 cms::cuda::device
 
 cms::cuda::device::impl
 

Typedefs

template<typename T >
using cms::cuda::device::unique_ptr = std::unique_ptr< T, impl::DeviceDeleter >
 

Functions

template<typename T >
device::impl::make_device_unique_selector
< T >::non_array 
cms::cuda::make_device_unique (cudaStream_t stream)
 
template<typename T >
device::impl::make_device_unique_selector
< T >::unbounded_array 
cms::cuda::make_device_unique (size_t n, cudaStream_t stream)
 
template<typename T , typename... Args>
device::impl::make_device_unique_selector
< T >::bounded_array 
cms::cuda::make_device_unique (Args &&...)=delete
 
template<typename T >
device::impl::make_device_unique_selector
< T >::non_array 
cms::cuda::make_device_unique_uninitialized (cudaStream_t stream)
 
template<typename T >
device::impl::make_device_unique_selector
< T >::unbounded_array 
cms::cuda::make_device_unique_uninitialized (size_t n, cudaStream_t stream)
 
template<typename T , typename... Args>
device::impl::make_device_unique_selector
< T >::bounded_array 
cms::cuda::make_device_unique_uninitialized (Args &&...)=delete