39 #include "../thread/thread_load.cuh"
40 #include "../thread/thread_store.cuh"
41 #include "../util_device.cuh"
42 #include "../util_namespace.cuh"
44 #if (THRUST_VERSION >= 100700)
46 #include <thrust/iterator/iterator_facade.h>
47 #include <thrust/iterator/iterator_traits.h>
48 #endif // THRUST_VERSION
93 typename OffsetT = ptrdiff_t>
105 #if (THRUST_VERSION >= 100700)
107 typedef typename thrust::detail::iterator_facade_category<
108 thrust::any_system_tag,
109 thrust::random_access_traversal_tag,
115 #endif // THRUST_VERSION
125 const ValueType &val)
152 template <
typename Distance>
160 template <
typename Distance>
168 template <
typename Distance>
176 template <
typename Distance>
186 return val - other.val;
190 template <
typename Distance>
205 return (val == rhs.val);
211 return (val != rhs.val);
217 os <<
"[" << itr.val <<
"]";