
Definition in file ArrayData.H.
#include "Image/Dims.H"
#include "Util/Alloc.H"
#include "Util/TypeTraits.H"
#include "Util/log.H"
#include "rutz/atomic.h"
#include <cstring>
#include <new>
Include dependency graph for ArrayData.H:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.
Classes | |
| class | ArrayData< T > |
| Implements a ref-counted 2-D array, should only be used via ArrayHandle. More... | |
| class | ArrayHandle< T > |
| This class provides ref-counting and copy-on-write for ArrayData's. More... | |
| struct | ArrayHelper< T, isTrivial > |
| This is a helper template struct for ArrayData's constructors. More... | |
| struct | ArrayHelper< T, true > |
| Specialization of ArrayHelper for builtin/trivial types. More... | |
Defines | |
| #define | CUDA_HOST_DEVICE_NUM -1 |
| Device id for the host, to distinguish from CUDA devices. | |
Enumerations | |
| enum | StoragePolicy { MAKE_OWN_COPY, WRITE_THRU } |
| Specifies what to do with the T* used to init an ArrayData. More... | |
| enum | InitPolicy { ZEROS, NO_INIT } |
| Specifies how to initialize the pixels of a new image. More... | |
| enum | MemoryPolicy { GLOBAL_DEVICE_MEMORY, TEXTURE_DEVICE_MEMORY, HOST_MEMORY } |
| Specifies where on a particular device the memory is stored. More... | |
Functions | |
| void * | wrap_invt_allocate (size_t user_nbytes, const MemoryPolicy mp, const int dev) |
| Function to wrap use of invt_allocate to allow for CUDA memory policies. | |
| void | wrap_invt_deallocate (void *mem, const MemoryPolicy mp, const int dev, const size_t nBytes) |
| Function to wrap use of invt_deallocate to allow for CUDA memory policies. | |
| void | check_acquisition (StoragePolicy s, int count) throw () |
|
|
Device id for the host, to distinguish from CUDA devices.
Definition at line 93 of file ArrayData.H. Referenced by ArrayData< T >::clone(), CudaImage< T >::CudaImage(), and CudaImage< T >::exportToImage(). |
|
|
Specifies how to initialize the pixels of a new image.
Definition at line 68 of file ArrayData.H. |
|
|
Specifies where on a particular device the memory is stored.
Definition at line 82 of file ArrayData.H. |
|
|
Specifies what to do with the T* used to init an ArrayData.
Definition at line 57 of file ArrayData.H. |
|
||||||||||||||||
|
Function to wrap use of invt_allocate to allow for CUDA memory policies.
Definition at line 97 of file ArrayData.H. References GLOBAL_DEVICE_MEMORY, HOST_MEMORY, invt_allocate(), LFATAL, and TEXTURE_DEVICE_MEMORY. |
|
||||||||||||||||||||
|
Function to wrap use of invt_deallocate to allow for CUDA memory policies.
Definition at line 120 of file ArrayData.H. References GLOBAL_DEVICE_MEMORY, HOST_MEMORY, invt_deallocate(), and TEXTURE_DEVICE_MEMORY. Referenced by ArrayData< T >::~ArrayData(). |
1.4.4