34 #include <cugar/basic/cuda/hash.h> 65 uint32
sample(
const uint32 cell_slot,
const float z,
float*
pdf, uint32* cluster_idx)
const;
70 float pdf(
const uint32 cell_slot,
const uint32 index)
const;
75 void update(
const uint32 cell_slot,
const uint32 cluster_idx,
const float val,
const float alpha = 0.05f);
80 const uint32* cluster_offsets;
93 uint64 needed_bytes(
const uint32 _hash_size,
const uint32 _n_clusters)
const;
96 const uint32 _hash_size,
97 const uint32 _n_clusters,
98 const uint32* _cluster_offsets);
101 const uint32 _hash_size,
102 const uint32 _n_clusters,
103 const uint32* _cluster_offsets);
105 void update(
const float bias = 0.1f);
115 const uint32* cluster_offsets;
116 uint32 old_hash_size;
138 uint32
sample(
const uint32 cell_slot,
const float z,
float*
pdf, uint32* cluster_idx)
const;
143 float pdf(
const uint32 cell_slot,
const uint32 index)
const;
148 void update(
const uint32 cell_slot,
const uint32 cluster_idx,
const float val,
const float alpha = 0.05f);
153 const uint32* cluster_ends;
154 const uint32* cluster_counts;
155 uint32 init_cluster_count;
167 uint64 needed_bytes(
const uint32 _hash_size,
const uint32 _n_clusters)
const;
170 const uint32 _hash_size,
172 const uint32* _parents,
173 const uint2* _ranges,
174 const uint32 _n_clusters,
175 const uint32* _cluster_indices,
176 const uint32* _cluster_offsets);
178 void update(
bool adaptive =
true);
187 const uint32* parents;
193 uint32 init_cluster_count;
194 const uint32* init_cluster_indices;
195 const uint32* init_cluster_offsets;
203 #include <clustered_rl_inline.h> Entry point to the generic Bounding Volume Hierarchy library.
Definition: bvh_node.h:80
Definition: clustered_rl.h:161
FERMAT_DEVICE float pdf(const uint32 cell_slot, const uint32 index) const
Definition: clustered_rl_inline.h:79
FERMAT_DEVICE void update(const uint32 cell_slot, const uint32 cluster_idx, const float val, const float alpha=0.05f)
Definition: clustered_rl_inline.h:99
Defines some general purpose algorithms.
Definition: clustered_rl.h:123
Definition: clustered_rl.h:87
FERMAT_DEVICE uint32 sample(const uint32 cell_slot, const float z, float *pdf, uint32 *cluster_idx) const
Definition: clustered_rl_inline.h:46
Definition: clustered_rl.h:50
FERMAT_DEVICE uint32 find_slot(const uint64 key)
Definition: clustered_rl_inline.h:36