1234567891011121314151617181920212223242526272829303132333435 |
- #ifndef BOOST_COMPUTE_DETAIL_ITERATOR_TRAITS_HPP
- #define BOOST_COMPUTE_DETAIL_ITERATOR_TRAITS_HPP
- #include <iterator>
- #include <boost/compute/detail/is_contiguous_iterator.hpp>
- #include <boost/compute/type_traits/is_device_iterator.hpp>
- namespace boost {
- namespace compute {
- namespace detail {
- template<class Iterator>
- struct iterator_traits : public std::iterator_traits<Iterator>
- {
- static const bool is_contiguous = is_contiguous_iterator<Iterator>::value;
- static const bool is_on_device = is_device_iterator<Iterator>::value;
- static const bool is_on_host = !is_on_device;
- };
- }
- }
- }
- #endif
|