Blender  V3.3
Classes | Namespaces
BLI_hash_tables.hh File Reference
#include <algorithm>
#include <cmath>
#include "BLI_allocator.hh"
#include "BLI_array.hh"
#include "BLI_math_base.h"
#include "BLI_memory_utils.hh"
#include "BLI_string.h"
#include "BLI_string_ref.hh"
#include "BLI_utildefines.h"
#include "BLI_vector.hh"

Go to the source code of this file.

Classes

class  blender::LoadFactor
 
struct  blender::TemplatedKeyInfo< Key, EmptyValue, RemovedValue >
 
struct  blender::PointerKeyInfo< Pointer >
 
class  blender::HashTableStats
 
struct  blender::DefaultEquality
 

Namespaces

 blender
 

Functions

Constexpr Utility Functions

Those should eventually be de-duplicated with functions in BLI_math_base.h.

constexpr int64_t blender::is_power_of_2_constexpr (const int64_t x)
 
constexpr int64_t blender::log2_floor_constexpr (const int64_t x)
 
constexpr int64_t blender::log2_ceil_constexpr (const int64_t x)
 
constexpr int64_t blender::power_of_2_max_constexpr (const int64_t x)
 
template<typename IntT >
constexpr IntT blender::ceil_division (const IntT x, const IntT y)
 
template<typename IntT >
constexpr IntT blender::floor_division (const IntT x, const IntT y)
 
constexpr int64_t blender::ceil_division_by_fraction (const int64_t x, const int64_t numerator, const int64_t denominator)
 
constexpr int64_t blender::floor_multiplication_with_fraction (const int64_t x, const int64_t numerator, const int64_t denominator)
 
constexpr int64_t blender::total_slot_amount_for_usable_slots (const int64_t min_usable_slots, const int64_t max_load_factor_numerator, const int64_t max_load_factor_denominator)
 

Detailed Description

This file contains code that can be shared between different hash table implementations.

Definition in file BLI_hash_tables.hh.