aether::morton Namespace Reference

Namespaces

 detail
 

Classes

struct  AABB
 
struct  aabb_merger
 
struct  code_traits
 
struct  dimension_traits
 
struct  dimension_traits< 2 >
 
struct  dimension_traits< 3 >
 
struct  morton_code
 
struct  operations
 
struct  operations< uint64_t, 2 >
 
struct  operations< uint64_t, 3 >
 
struct  region
 
struct  tree_cell
 

Functions

template<typename MortonCode >
std::ostream & operator<< (std::ostream &o, const tree_cell< MortonCode > &c)
 
template<size_t Dimension, size_t BitsPerDimension>
std::ostream & operator<< (std::ostream &o, const morton_code< Dimension, BitsPerDimension > &c)
 
template<typename MortonCode >
uint64_t squared_absolute_distance (const MortonCode &lhs, const MortonCode &rhs)
 
morton_code< 3, 21 > morton_3_encode (const aether::vec3f &v)
 
aether::vec3f morton_3_decode (const morton_code< 3, 21 > &m)
 
aether::vec2f morton_2_decode (const morton_code< 2, 32 > &m)
 
morton_code< 2, 32 > morton_2_encode (const aether::vec2f &v)
 
template<typename MortonCode , typename T >
std::ostream & operator<< (std::ostream &o, const region< MortonCode, T > &r)
 
uint64_t fast_log2 (const uint64_t x)
 
template<uint32_t Dimension>
uint64_t get_max_align_level (const uint64_t code)
 
template<uint32_t Dimension>
uint64_t get_unifying_level (const uint64_t a, const uint64_t b)
 
template<uint32_t Dimension>
uint64_t get_morton_code (const uint64_t level)
 
template<uint32_t Dimension>
uint64_t get_align_max_level (const uint64_t min, const uint64_t max)
 
template<uint32_t Dimension>
uint64_t get_align_max (const uint64_t min, const uint64_t max)
 

Function Documentation

uint64_t aether::morton::fast_log2 ( const uint64_t  x)
inline
template<uint32_t Dimension>
uint64_t aether::morton::get_align_max ( const uint64_t  min,
const uint64_t  max 
)
template<uint32_t Dimension>
uint64_t aether::morton::get_align_max_level ( const uint64_t  min,
const uint64_t  max 
)
template<uint32_t Dimension>
uint64_t aether::morton::get_max_align_level ( const uint64_t  code)
template<uint32_t Dimension>
uint64_t aether::morton::get_morton_code ( const uint64_t  level)
template<uint32_t Dimension>
uint64_t aether::morton::get_unifying_level ( const uint64_t  a,
const uint64_t  b 
)
aether::vec2f aether::morton::morton_2_decode ( const morton_code< 2, 32 > &  m)
inline
morton_code<2, 32> aether::morton::morton_2_encode ( const aether::vec2f &  v)
inline
aether::vec3f aether::morton::morton_3_decode ( const morton_code< 3, 21 > &  m)
inline
morton_code<3, 21> aether::morton::morton_3_encode ( const aether::vec3f &  v)
inline
template<typename MortonCode >
std::ostream & aether::morton::operator<< ( std::ostream &  o,
const tree_cell< MortonCode > &  c 
)
template<size_t Dimension, size_t BitsPerDimension>
std::ostream& aether::morton::operator<< ( std::ostream &  o,
const morton_code< Dimension, BitsPerDimension > &  c 
)
template<typename MortonCode , typename T >
std::ostream & aether::morton::operator<< ( std::ostream &  o,
const region< MortonCode, T > &  r 
)
template<typename MortonCode >
uint64_t aether::morton::squared_absolute_distance ( const MortonCode &  lhs,
const MortonCode &  rhs 
)