Hydra  4.0.1
A header-only templated C++ framework to perform data analysis on massively parallel platforms.
IntegerMask.h File Reference
#include <hydra/detail/Config.h>
#include <hydra/detail/utility/Integer.h>
#include <climits>
#include <cstddef>
#include <limits>
Include dependency graph for IntegerMask.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  hydra::detail::high_bit_mask_t< Bit >
 
struct  hydra::detail::low_bits_mask_t< Bits >
 
struct  hydra::detail::low_bits_mask_t< std::numeric_limits< unsigned char >::digits >
 

Namespaces

 hydra
 Generic policies definition.
 
 hydra::detail
 

Macros

#define HYDRA_LOW_BITS_MASK_SPECIALIZE(Type)
 

Macro Definition Documentation

◆ HYDRA_LOW_BITS_MASK_SPECIALIZE

#define HYDRA_LOW_BITS_MASK_SPECIALIZE (   Type)
Value:
template < > struct low_bits_mask_t< std::numeric_limits<Type>::digits > { \
typedef std::numeric_limits<Type> limits_type; \
typedef uint_t<limits_type::digits>::least least; \
typedef uint_t<limits_type::digits>::fast fast; \
static const least sig_bits = (~( least(0u) )) ; \
static const fast sig_bits_fast = fast(sig_bits) ; \
static const std::size_t bit_count = limits_type::digits ; \
}
STL namespace.