RISA
glados::cuda::HostMemoryManager< T, CopyPolicy > Class Template Reference

#include <HostMemoryManager.h>

Inheritance diagram for glados::cuda::HostMemoryManager< T, CopyPolicy >:
Collaboration diagram for glados::cuda::HostMemoryManager< T, CopyPolicy >:

Public Types

using value_type = T
 
using pointer_type_1D = host_ptr< T, CopyPolicy >
 
using pointer_type_2D = pitched_host_ptr< T, CopyPolicy, std::false_type >
 
using pointer_type_3D = pitched_host_ptr< T, CopyPolicy, std::true_type >
 
using size_type = std::size_t
 

Protected Member Functions

auto make_ptr (size_type size) -> pointer_type_1D
 
auto make_ptr (size_type width, size_type height) -> pointer_type_2D
 
auto make_ptr (size_type width, size_type height, size_type depth) -> pointer_type_3D
 
template<typename Source >
auto copy (pointer_type_1D &dest, Source &src, size_type size) -> void
 
template<typename Source >
auto copy (pointer_type_2D &dest, Source &src, size_type width, size_type height) -> void
 
template<typename Source >
auto copy (pointer_type_3D &dest, Source &src, size_type width, size_type height, size_type depth) -> void
 
 ~HostMemoryManager ()=default
 

Detailed Description

template<class T, class CopyPolicy = sync_copy_policy>
class glados::cuda::HostMemoryManager< T, CopyPolicy >

Definition at line 37 of file HostMemoryManager.h.

Member Typedef Documentation

template<class T , class CopyPolicy = sync_copy_policy>
using glados::cuda::HostMemoryManager< T, CopyPolicy >::pointer_type_1D = host_ptr<T, CopyPolicy>

Definition at line 41 of file HostMemoryManager.h.

template<class T , class CopyPolicy = sync_copy_policy>
using glados::cuda::HostMemoryManager< T, CopyPolicy >::pointer_type_2D = pitched_host_ptr<T, CopyPolicy, std::false_type>

Definition at line 42 of file HostMemoryManager.h.

template<class T , class CopyPolicy = sync_copy_policy>
using glados::cuda::HostMemoryManager< T, CopyPolicy >::pointer_type_3D = pitched_host_ptr<T, CopyPolicy, std::true_type>

Definition at line 43 of file HostMemoryManager.h.

template<class T , class CopyPolicy = sync_copy_policy>
using glados::cuda::HostMemoryManager< T, CopyPolicy >::size_type = std::size_t

Definition at line 44 of file HostMemoryManager.h.

template<class T , class CopyPolicy = sync_copy_policy>
using glados::cuda::HostMemoryManager< T, CopyPolicy >::value_type = T

Definition at line 40 of file HostMemoryManager.h.

Constructor & Destructor Documentation

template<class T , class CopyPolicy = sync_copy_policy>
glados::cuda::HostMemoryManager< T, CopyPolicy >::~HostMemoryManager ( )
protecteddefault

Member Function Documentation

template<class T , class CopyPolicy = sync_copy_policy>
template<typename Source >
auto glados::cuda::HostMemoryManager< T, CopyPolicy >::copy ( pointer_type_1D dest,
Source &  src,
size_type  size 
) -> void
inlineprotected

Definition at line 63 of file HostMemoryManager.h.

template<class T , class CopyPolicy = sync_copy_policy>
template<typename Source >
auto glados::cuda::HostMemoryManager< T, CopyPolicy >::copy ( pointer_type_2D dest,
Source &  src,
size_type  width,
size_type  height 
) -> void
inlineprotected

Definition at line 69 of file HostMemoryManager.h.

template<class T , class CopyPolicy = sync_copy_policy>
template<typename Source >
auto glados::cuda::HostMemoryManager< T, CopyPolicy >::copy ( pointer_type_3D dest,
Source &  src,
size_type  width,
size_type  height,
size_type  depth 
) -> void
inlineprotected

Definition at line 75 of file HostMemoryManager.h.

template<class T , class CopyPolicy = sync_copy_policy>
auto glados::cuda::HostMemoryManager< T, CopyPolicy >::make_ptr ( size_type  size) -> pointer_type_1D
inlineprotected

Definition at line 47 of file HostMemoryManager.h.

template<class T , class CopyPolicy = sync_copy_policy>
auto glados::cuda::HostMemoryManager< T, CopyPolicy >::make_ptr ( size_type  width,
size_type  height 
) -> pointer_type_2D
inlineprotected

Definition at line 52 of file HostMemoryManager.h.

template<class T , class CopyPolicy = sync_copy_policy>
auto glados::cuda::HostMemoryManager< T, CopyPolicy >::make_ptr ( size_type  width,
size_type  height,
size_type  depth 
) -> pointer_type_3D
inlineprotected

Definition at line 57 of file HostMemoryManager.h.


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