A random-access input wrapper for transforming dereferenced values. More...
A random-access input wrapper for transforming dereferenced values.
ConversionOp
and a random-access input iterator of type InputIteratorT
, using the former to produce references of type ValueType
from the latter.TransformInputIteratorTto
dereference an array of integers, tripling the values and converting them to doubles. ValueType | The value type of this iterator |
ConversionOp | Unary functor type for mapping objects of type InputType to type ValueType . Must have member ValueType operator()(const InputType &datum) . |
InputIteratorT | The type of the wrapped input iterator |
OffsetT | The difference type of this iterator (Default: ptrdiff_t ) |
Definition at line 117 of file transform_input_iterator.cuh.
Public Types | |
typedef TransformInputIterator | self_type |
My own type. | |
typedef OffsetT | difference_type |
Type to express the result of subtracting one iterator from another. | |
typedef ValueType | value_type |
The type of the element the iterator can point to. | |
typedef ValueType * | pointer |
The type of a pointer to an element the iterator can point to. | |
typedef ValueType | reference |
The type of a reference to an element the iterator can point to. | |
typedef std::random_access_iterator_tag | iterator_category |
The iterator category. | |
Public Member Functions | |
__host__ __device__ __forceinline__ | TransformInputIterator (InputIteratorT input_itr, ConversionOp conversion_op) |
Constructor. | |
__host__ __device__ __forceinline__ self_type | operator++ (int) |
Postfix increment. | |
__host__ __device__ __forceinline__ self_type | operator++ () |
Prefix increment. | |
__host__ __device__ __forceinline__ reference | operator* () const |
Indirection. | |
template<typename Distance > | |
__host__ __device__ __forceinline__ self_type | operator+ (Distance n) const |
Addition. | |
template<typename Distance > | |
__host__ __device__ __forceinline__ self_type & | operator+= (Distance n) |
Addition assignment. | |
template<typename Distance > | |
__host__ __device__ __forceinline__ self_type | operator- (Distance n) const |
Subtraction. | |
template<typename Distance > | |
__host__ __device__ __forceinline__ self_type & | operator-= (Distance n) |
Subtraction assignment. | |
__host__ __device__ __forceinline__ difference_type | operator- (self_type other) const |
Distance. | |
template<typename Distance > | |
__host__ __device__ __forceinline__ reference | operator[] (Distance n) const |
Array subscript. | |
__host__ __device__ __forceinline__ pointer | operator-> () |
Structure dereference. | |
__host__ __device__ __forceinline__ bool | operator== (const self_type &rhs) |
Equal to. | |
__host__ __device__ __forceinline__ bool | operator!= (const self_type &rhs) |
Not equal to. | |
Private Attributes | |
ConversionOp | conversion_op |
InputIteratorT | input_itr |
Friends | |
std::ostream & | operator<< (std::ostream &os, const self_type &itr) |
ostream operator | |
typedef OffsetT cub::TransformInputIterator< ValueType, ConversionOp, InputIteratorT, OffsetT >::difference_type |
Type to express the result of subtracting one iterator from another.
Definition at line 123 of file transform_input_iterator.cuh.
typedef std::random_access_iterator_tag cub::TransformInputIterator< ValueType, ConversionOp, InputIteratorT, OffsetT >::iterator_category |
The iterator category.
Definition at line 137 of file transform_input_iterator.cuh.
typedef ValueType* cub::TransformInputIterator< ValueType, ConversionOp, InputIteratorT, OffsetT >::pointer |
The type of a pointer to an element the iterator can point to.
Definition at line 125 of file transform_input_iterator.cuh.
typedef ValueType cub::TransformInputIterator< ValueType, ConversionOp, InputIteratorT, OffsetT >::reference |
The type of a reference to an element the iterator can point to.
Definition at line 126 of file transform_input_iterator.cuh.
typedef TransformInputIterator cub::TransformInputIterator< ValueType, ConversionOp, InputIteratorT, OffsetT >::self_type |
My own type.
Definition at line 122 of file transform_input_iterator.cuh.
typedef ValueType cub::TransformInputIterator< ValueType, ConversionOp, InputIteratorT, OffsetT >::value_type |
The type of the element the iterator can point to.
Definition at line 124 of file transform_input_iterator.cuh.
|
inline |
Constructor.
input_itr | Input iterator to wrap |
conversion_op | Conversion functor to wrap |
Definition at line 148 of file transform_input_iterator.cuh.
|
inline |
Not equal to.
Definition at line 235 of file transform_input_iterator.cuh.
|
inline |
Indirection.
Definition at line 172 of file transform_input_iterator.cuh.
|
inline |
Addition.
Definition at line 179 of file transform_input_iterator.cuh.
|
inline |
Prefix increment.
Definition at line 165 of file transform_input_iterator.cuh.
|
inline |
Postfix increment.
Definition at line 157 of file transform_input_iterator.cuh.
|
inline |
Addition assignment.
Definition at line 187 of file transform_input_iterator.cuh.
|
inline |
Subtraction.
Definition at line 195 of file transform_input_iterator.cuh.
|
inline |
Distance.
Definition at line 210 of file transform_input_iterator.cuh.
|
inline |
Subtraction assignment.
Definition at line 203 of file transform_input_iterator.cuh.
|
inline |
Structure dereference.
Definition at line 223 of file transform_input_iterator.cuh.
|
inline |
Equal to.
Definition at line 229 of file transform_input_iterator.cuh.
|
inline |
Array subscript.
Definition at line 217 of file transform_input_iterator.cuh.
|
friend |
ostream operator
Definition at line 241 of file transform_input_iterator.cuh.
|
private |
Definition at line 142 of file transform_input_iterator.cuh.
|
private |
Definition at line 143 of file transform_input_iterator.cuh.