CUB
|
A random-access input wrapper for dereferencing array values through texture cache. Uses older Tesla/Fermi-style texture references.
ValueType*
. References to elements are to be loaded through texture cache.UNIQUE_ID
template parameter is used to statically name the underlying texture reference. Only one TexRefInputIterator instance can be bound at any given time for a specific combination of (1) data type T
, (2) UNIQUE_ID
, (3) host thread, and (4) compilation .o unit.TexRefInputIterator
to dereference a device array of doubles through texture cache. T | The value type of this iterator |
UNIQUE_ID | A globally-unique identifier (within the compilation unit) to name the underlying texture reference |
OffsetT | The difference type of this iterator (Default: ptrdiff_t ) |
Public Types | |
typedef TexRefInputIterator | self_type |
My own type. More... | |
typedef OffsetT | difference_type |
Type to express the result of subtracting one iterator from another. More... | |
typedef T | value_type |
The type of the element the iterator can point to. More... | |
typedef T * | pointer |
The type of a pointer to an element the iterator can point to. More... | |
typedef T | reference |
The type of a reference to an element the iterator can point to. More... | |
typedef std::random_access_iterator_tag | iterator_category |
The iterator category. More... | |
Public Methods | |
template<typename QualifiedT > | |
cudaError_t | BindTexture (QualifiedT *ptr, size_t bytes, size_t tex_offset=0) |
Use this iterator to bind ptr with a texture reference. More... | |
cudaError_t | UnbindTexture () |
Unbind this iterator from its texture reference. More... | |
__host__ __device__ __forceinline__ self_type | operator++ (int) |
Postfix increment. More... | |
__host__ __device__ __forceinline__ self_type | operator++ () |
Prefix increment. More... | |
__host__ __device__ __forceinline__ reference | operator* () const |
Indirection. More... | |
template<typename Distance > | |
__host__ __device__ __forceinline__ self_type | operator+ (Distance n) const |
Addition. More... | |
template<typename Distance > | |
__host__ __device__ __forceinline__ self_type & | operator+= (Distance n) |
Addition assignment. More... | |
template<typename Distance > | |
__host__ __device__ __forceinline__ self_type | operator- (Distance n) const |
Subtraction. More... | |
template<typename Distance > | |
__host__ __device__ __forceinline__ self_type & | operator-= (Distance n) |
Subtraction assignment. More... | |
__host__ __device__ __forceinline__ difference_type | operator- (self_type other) const |
Distance. More... | |
template<typename Distance > | |
__host__ __device__ __forceinline__ reference | operator[] (Distance n) const |
Array subscript. More... | |
__host__ __device__ __forceinline__ pointer | operator-> () |
Structure dereference. More... | |
__host__ __device__ __forceinline__ bool | operator== (const self_type &rhs) |
Equal to. More... | |
__host__ __device__ __forceinline__ bool | operator!= (const self_type &rhs) |
Not equal to. More... | |
Friends | |
std::ostream & | operator<< (std::ostream &os, const self_type &) |
ostream operator More... | |
typedef TexRefInputIterator cub::TexRefInputIterator< T, UNIQUE_ID, OffsetT >::self_type |
My own type.
typedef OffsetT cub::TexRefInputIterator< T, UNIQUE_ID, OffsetT >::difference_type |
Type to express the result of subtracting one iterator from another.
typedef T cub::TexRefInputIterator< T, UNIQUE_ID, OffsetT >::value_type |
The type of the element the iterator can point to.
typedef T* cub::TexRefInputIterator< T, UNIQUE_ID, OffsetT >::pointer |
The type of a pointer to an element the iterator can point to.
typedef T cub::TexRefInputIterator< T, UNIQUE_ID, OffsetT >::reference |
The type of a reference to an element the iterator can point to.
typedef std::random_access_iterator_tag cub::TexRefInputIterator< T, UNIQUE_ID, OffsetT >::iterator_category |
The iterator category.
|
inline |
Use this iterator to bind ptr
with a texture reference.
ptr | Native pointer to wrap that is aligned to cudaDeviceProp::textureAlignment |
bytes | Number of bytes in the range |
tex_offset | OffsetT (in items) from ptr denoting the position of the iterator |
|
inline |
Unbind this iterator from its texture reference.
|
inline |
Postfix increment.
|
inline |
Prefix increment.
|
inline |
Indirection.
|
inline |
Addition.
|
inline |
Addition assignment.
|
inline |
Subtraction.
|
inline |
Subtraction assignment.
|
inline |
Distance.
|
inline |
Array subscript.
|
inline |
Structure dereference.
|
inline |
Equal to.
|
inline |
Not equal to.
|
friend |
ostream operator