|
CUB
|
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 Methods | |
| __host__ __device__ __forceinline__ | TransformInputIterator (InputIteratorT input_itr, ConversionOp conversion_op) |
| Constructor. More... | |
|
__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. | |
Friends | |
| std::ostream & | operator<< (std::ostream &os, const self_type &itr) |
| ostream operator | |
|
inline |
Constructor.
| input_itr | Input iterator to wrap |
| conversion_op | Conversion functor to wrap |
Definition at line 148 of file transform_input_iterator.cuh.
1.8.4