Mantid
Loading...
Searching...
No Matches
Classes | Namespaces | Functions
BitInterleaving.h File Reference
#include <cinttypes>
#include <cstddef>
#include "Types.h"

Go to the source code of this file.

Classes

struct  morton_index::Interleaver< ND, IntT, MortonT >
 
struct  morton_index::Interleaver< ND, IntT, Morton96 >
 

Namespaces

namespace  morton_index
 

Functions

template<size_t N, typename IntT , typename MortonT >
IntT morton_index::compact (MortonT)
 Compacts (removes padding from) an integer with a given number of padding bits. More...
 
template<>
uint16_t morton_index::compact< 1, uint16_t, uint32_t > (uint32_t x)
 
template<>
uint16_t morton_index::compact< 1, uint16_t, uint64_t > (uint64_t x)
 
template<>
uint32_t morton_index::compact< 1, uint32_t, uint128_t > (uint128_t x)
 
template<>
uint16_t morton_index::compact< 2, uint16_t, uint64_t > (uint64_t x)
 
template<>
uint32_t morton_index::compact< 2, uint32_t, uint128_t > (uint128_t x)
 
template<>
uint64_t morton_index::compact< 2, uint64_t, uint256_t > (uint256_t x)
 
template<>
uint8_t morton_index::compact< 2, uint8_t, uint32_t > (uint32_t x)
 
template<>
uint16_t morton_index::compact< 3, uint16_t, uint64_t > (uint64_t x)
 
template<>
uint32_t morton_index::compact< 3, uint32_t, uint128_t > (uint128_t x)
 
template<>
uint64_t morton_index::compact< 3, uint64_t, uint256_t > (uint256_t x)
 
template<size_t ND, typename IntT >
IntArray< ND, IntT > morton_index::deinterleave (const Morton96 &z)
 
template<size_t ND, typename IntT , typename MortonT >
IntArray< ND, IntT > morton_index::deinterleave (const MortonT z)
 Deinterleaves a Morton number into an integer coordinate. More...
 
template<size_t ND, typename IntT >
Morton96 morton_index::interleave (const IntArray< 3, uint32_t > &coord)
 
template<size_t ND, typename IntT , typename MortonT >
MortonT morton_index::interleave (const IntArray< ND, IntT > &coord)
 Interleaves an integer coordinate. More...
 
template<size_t N, typename IntT , typename MortonT >
MortonT morton_index::pad (IntT)
 Pad an integer with a given number of padding bits. More...
 
template<>
uint32_t morton_index::pad< 1, uint16_t, uint32_t > (uint16_t v)
 
template<>
uint64_t morton_index::pad< 1, uint16_t, uint64_t > (uint16_t v)
 
template<>
uint128_t morton_index::pad< 1, uint32_t, uint128_t > (uint32_t v)
 
template<>
uint64_t morton_index::pad< 2, uint16_t, uint64_t > (uint16_t v)
 
template<>
uint128_t morton_index::pad< 2, uint32_t, uint128_t > (uint32_t v)
 
template<>
uint256_t morton_index::pad< 2, uint64_t, uint256_t > (uint64_t v)
 
template<>
uint32_t morton_index::pad< 2, uint8_t, uint32_t > (uint8_t v)
 
template<>
uint64_t morton_index::pad< 3, uint16_t, uint64_t > (uint16_t v)
 
template<>
uint128_t morton_index::pad< 3, uint32_t, uint128_t > (uint32_t v)
 
template<>
uint256_t morton_index::pad< 3, uint64_t, uint256_t > (uint64_t v)