CUB
|
#include <cfloat>
#include <iostream>
#include <iterator>
#include <limits>
#include <type_traits>
#include <cub/util_arch.cuh>
#include <cub/util_deprecated.cuh>
#include <cub/util_macro.cuh>
#include <cub/util_namespace.cuh>
Classes | |
struct | If< IF, ThenType, ElseType > |
Type selection (IF ? ThenType : ElseType ) More... | |
struct | Equals< A, B > |
Type equality test. More... | |
struct | Log2< N, CURRENT_VAL, COUNT > |
Statically determine log2(N), rounded up. More... | |
struct | PowerOfTwo< N > |
Statically determine if N is a power-of-two. More... | |
struct | IsPointer< Tp > |
Pointer vs. iterator. More... | |
struct | IsVolatile< Tp > |
Volatile modifier test. More... | |
struct | RemoveQualifiers< Tp, Up > |
Removes const and volatile qualifiers from type Tp . More... | |
Namespaces | |
detail | |
Typedefs | |
template<bool Test, class T1 , class T2 > | |
using | detail::conditional_t = typename std::conditional< Test, T1, T2 >::type |
template<typename Iterator > | |
using | detail::value_t = typename std::iterator_traits< Iterator >::value_type |
template<typename IteratorT , typename FallbackT > | |
using | detail::non_void_value_t = cub::detail::conditional_t< std::is_same< value_t< IteratorT >, void >::value, FallbackT, value_t< IteratorT >> |
Common type manipulation (metaprogramming) utilities