OpenFPM_pdata  4.1.0
Project that contain the implementation of distributed structures
util_type.cuh File Reference
#include <iostream>
#include <limits>
#include <cfloat>
#include "util_macro.cuh"
#include "util_arch.cuh"
#include "util_namespace.cuh"

Go to the source code of this file.

Data Structures

struct  cub::If< IF, ThenType, ElseType >
 Type selection (IF ? ThenType : ElseType) More...
 
struct  cub::If< false, ThenType, ElseType >
 
struct  cub::Equals< A, B >
 Type equality test. More...
 
struct  cub::Equals< A, A >
 
struct  cub::Log2< N, CURRENT_VAL, COUNT >
 Statically determine log2(N), rounded up. More...
 
struct  cub::Log2< N, 0, COUNT >
 
struct  cub::PowerOfTwo< N >
 Statically determine if N is a power-of-two. More...
 
struct  cub::IsPointer< Tp >
 Pointer vs. iterator. More...
 
struct  cub::IsPointer< Tp * >
 
struct  cub::IsVolatile< Tp >
 Volatile modifier test. More...
 
struct  cub::IsVolatile< Tp volatile >
 
struct  cub::RemoveQualifiers< Tp, Up >
 Removes const and volatile qualifiers from type Tp. More...
 
struct  cub::RemoveQualifiers< Tp, volatile Up >
 
struct  cub::RemoveQualifiers< Tp, const Up >
 
struct  cub::RemoveQualifiers< Tp, const volatile Up >
 
struct  cub::NullType
 A simple "NULL" marker type. More...
 
struct  cub::Int2Type< A >
 Allows for the treatment of an integral constant as a type at compile-time (e.g., to achieve static call dispatch based on constant integral values) More...
 
struct  cub::AlignBytes< T >
 Structure alignment. More...
 
struct  cub::AlignBytes< T >::Pad
 
struct  cub::AlignBytes< volatile T >
 
struct  cub::AlignBytes< const T >
 
struct  cub::AlignBytes< const volatile T >
 
struct  cub::UnitWord< T >
 Unit-words of data movement. More...
 
struct  cub::UnitWord< T >::IsMultiple< Unit >
 
struct  cub::UnitWord< float2 >
 
struct  cub::UnitWord< float4 >
 
struct  cub::UnitWord< char2 >
 
struct  cub::UnitWord< volatile T >
 
struct  cub::UnitWord< const T >
 
struct  cub::UnitWord< const volatile T >
 
struct  cub::CubVector< T, vec_elements >
 Exposes a member typedef Type that names the corresponding CUDA vector type if one exists. Otherwise Type refers to the CubVector structure itself, which will wrap the corresponding x, y, etc. vector fields. More...
 
struct  cub::CubVector< T, 1 >
 
struct  cub::CubVector< T, 2 >
 
struct  cub::CubVector< T, 3 >
 
struct  cub::CubVector< T, 4 >
 
struct  cub::Uninitialized< T >
 A storage-backing wrapper that allows types with non-trivial constructors to be aliased in unions. More...
 
struct  cub::KeyValuePair< _Key, _Value >
 A key identifier paired with a corresponding value. More...
 
struct  cub::ArrayWrapper< T, COUNT >
 A wrapper for passing simple static arrays as kernel parameters. More...
 
struct  cub::DoubleBuffer< T >
 Double-buffer storage wrapper for multi-pass stream transformations that require more than one storage array for streaming intermediate results back and forth. More...
 
struct  cub::EnableIf< Condition, T >
 Simple enable-if (similar to Boost) More...
 
struct  cub::EnableIf< false, T >
 
struct  cub::BinaryOpHasIdxParam< T, BinaryOp >
 Determine whether or not BinaryOp's functor is of the form bool operator()(const T& a, const T&b) or bool operator()(const T& a, const T&b, unsigned int idx) More...
 
struct  cub::BinaryOpHasIdxParam< T, BinaryOp >::SFINAE5< BinaryOpT, const >
 
struct  cub::BinaryOpHasIdxParam< T, BinaryOp >::SFINAE6< BinaryOpT, >
 
struct  cub::BinaryOpHasIdxParam< T, BinaryOp >::SFINAE7< BinaryOpT, const >
 
struct  cub::BinaryOpHasIdxParam< T, BinaryOp >::SFINAE8< BinaryOpT, >
 
struct  cub::BaseTraits< _CATEGORY, _PRIMITIVE, _NULL_TYPE, _UnsignedBits, T >
 Basic type traits. More...
 
struct  cub::BaseTraits< UNSIGNED_INTEGER, true, false, _UnsignedBits, T >
 
struct  cub::BaseTraits< SIGNED_INTEGER, true, false, _UnsignedBits, T >
 
struct  cub::FpLimits< _T >
 
struct  cub::FpLimits< float >
 
struct  cub::FpLimits< double >
 
struct  cub::BaseTraits< FLOATING_POINT, true, false, _UnsignedBits, T >
 
struct  cub::NumericTraits< T >
 Numeric type traits. More...
 
struct  cub::NumericTraits< NullType >
 
struct  cub::NumericTraits< char >
 
struct  cub::NumericTraits< signed char >
 
struct  cub::NumericTraits< short >
 
struct  cub::NumericTraits< int >
 
struct  cub::NumericTraits< long >
 
struct  cub::NumericTraits< long long >
 
struct  cub::NumericTraits< unsigned char >
 
struct  cub::NumericTraits< unsigned short >
 
struct  cub::NumericTraits< unsigned int >
 
struct  cub::NumericTraits< unsigned long >
 
struct  cub::NumericTraits< unsigned long long >
 
struct  cub::NumericTraits< float >
 
struct  cub::NumericTraits< double >
 
struct  cub::NumericTraits< bool >
 
struct  cub::Traits< T >
 Type traits. More...
 

Namespaces

 cub
 Optional outer namespace(s)
 

Macros

#define __CUB_ALIGN_BYTES(t, b)
 
#define CUB_DEFINE_VECTOR_TYPE(base_type, short_type)
 
#define CUB_DEFINE_DETECT_NESTED_TYPE(detector_name, nested_type_name)
 Defines a structure detector_name that is templated on type T. The detector_name struct exposes a constant member VALUE indicating whether or not parameter T exposes a nested type nested_type_name. More...
 

Enumerations

enum  { cub::MAX_VEC_ELEMENTS = 4 }
 
enum  cub::Category { NOT_A_NUMBER, SIGNED_INTEGER, UNSIGNED_INTEGER, FLOATING_POINT }
 Basic type traits categories.
 

Detailed Description

Common type manipulation (metaprogramming) utilities

Definition in file util_type.cuh.