Class muda::spatial_hash::details::SparseSpatialHashImpl
template <typename Hash>
ClassList > muda > spatial_hash > details > SparseSpatialHashImpl
Public Types
Type | Name |
---|---|
typedef SpatialPartitionCell | Cell |
typedef int32_t | I32 |
typedef uint32_t | U32 |
typedef Eigen::Vector3f | Vector3 |
typedef Eigen::Vector3< I32 > | Vector3i |
typedef Eigen::Vector3< U32 > | Vector3u |
Public Attributes
Public Functions
Type | Name |
---|---|
SparseSpatialHashImpl (muda::Stream & stream=muda::Stream::Default()) |
|
void | alloc_collision_pair_list (DeviceBuffer< CollisionPair > & collisionPairs, int totalCollisionPairCount) |
void | balanced_setup_collision_pairs (bool append, DeviceBuffer< CollisionPair > & collisionPairs, Pred && pred) |
void | calculate_hash_table_basic_info () |
void | count_object_per_cell () |
void | detect (CBufferView< BoundingSphere > boundingSphereList, bool append, DeviceBuffer< CollisionPair > & collisionPairs, Pred && pred) |
void | fill_hash_cells () |
void | setup_hash_table () |
void | simple_count_collision_pairs (Pred && pred) |
void | simple_fill_collision_pair_list (DeviceBuffer< CollisionPair > & collisionPairs, Pred && pred) |
void | simple_setup_collision_pairs (Pred && pred, DeviceBuffer< CollisionPair > & collisionPairs) |
Public Types Documentation
typedef Cell
typedef I32
typedef U32
typedef Vector3
typedef Vector3i
typedef Vector3u
Public Attributes Documentation
variable allCoords
variable allRadius
variable cellArrayKey
variable cellArrayKeySorted
variable cellArrayValue
DeviceBuffer<SpatialPartitionCell> muda::spatial_hash::details::SparseSpatialHashImpl< Hash >::cellArrayValue;
variable cellArrayValueSorted
DeviceBuffer<SpatialPartitionCell> muda::spatial_hash::details::SparseSpatialHashImpl< Hash >::cellArrayValueSorted;
variable cellCount
variable cellToCollisionPairUpperBound
DeviceBuffer<int> muda::spatial_hash::details::SparseSpatialHashImpl< Hash >::cellToCollisionPairUpperBound;
variable cellToCollisionPairUpperBoundPrefixSum
DeviceBuffer<int> muda::spatial_hash::details::SparseSpatialHashImpl< Hash >::cellToCollisionPairUpperBoundPrefixSum;
variable collisionPairBuffer
DeviceBuffer<CollisionPair> muda::spatial_hash::details::SparseSpatialHashImpl< Hash >::collisionPairBuffer;
variable collisionPairCount
variable collisionPairPrefixSum
DeviceBuffer<int> muda::spatial_hash::details::SparseSpatialHashImpl< Hash >::collisionPairPrefixSum;
variable empty_level
variable h_spatialHashConfig
SpatialHashTableInfo<Hash> muda::spatial_hash::details::SparseSpatialHashImpl< Hash >::h_spatialHashConfig;
variable level
variable m_stream
variable maxRadius
variable minCoord
variable objCountInCell
variable objCountInCellPrefixSum
DeviceBuffer<int> muda::spatial_hash::details::SparseSpatialHashImpl< Hash >::objCountInCellPrefixSum;
variable pairCount
variable pairListOffset
variable potentialCollisionPairIdToCellIndex
DeviceBuffer<int> muda::spatial_hash::details::SparseSpatialHashImpl< Hash >::potentialCollisionPairIdToCellIndex;
variable potentialCollisionPairIdToCellIndexBuffer
DeviceBuffer<int> muda::spatial_hash::details::SparseSpatialHashImpl< Hash >::potentialCollisionPairIdToCellIndexBuffer;
variable spatialHashConfig
DeviceVar<SpatialHashTableInfo<Hash> > muda::spatial_hash::details::SparseSpatialHashImpl< Hash >::spatialHashConfig;
variable spheres
variable sum
variable uniqueKey
variable uniqueKeyCount
variable validCellCount
variable validCollisionPairCount
Public Functions Documentation
function SparseSpatialHashImpl
inline muda::spatial_hash::details::SparseSpatialHashImpl::SparseSpatialHashImpl (
muda::Stream & stream=muda::Stream::Default()
)
function alloc_collision_pair_list
void muda::spatial_hash::details::SparseSpatialHashImpl::alloc_collision_pair_list (
DeviceBuffer < CollisionPair > & collisionPairs,
int totalCollisionPairCount
)
function balanced_setup_collision_pairs
template<typename Pred>
void muda::spatial_hash::details::SparseSpatialHashImpl::balanced_setup_collision_pairs (
bool append,
DeviceBuffer < CollisionPair > & collisionPairs,
Pred && pred
)
function calculate_hash_table_basic_info
function count_object_per_cell
function detect
template<typename Pred>
void muda::spatial_hash::details::SparseSpatialHashImpl::detect (
CBufferView < BoundingSphere > boundingSphereList,
bool append,
DeviceBuffer < CollisionPair > & collisionPairs,
Pred && pred
)
function fill_hash_cells
function setup_hash_table
function simple_count_collision_pairs
template<typename Pred>
void muda::spatial_hash::details::SparseSpatialHashImpl::simple_count_collision_pairs (
Pred && pred
)
function simple_fill_collision_pair_list
template<typename Pred>
void muda::spatial_hash::details::SparseSpatialHashImpl::simple_fill_collision_pair_list (
DeviceBuffer < CollisionPair > & collisionPairs,
Pred && pred
)
function simple_setup_collision_pairs
template<typename Pred>
void muda::spatial_hash::details::SparseSpatialHashImpl::simple_setup_collision_pairs (
Pred && pred,
DeviceBuffer < CollisionPair > & collisionPairs
)
The documentation for this class was generated from the following file src/muda/ext/geo/spatial_hash/sparse_spatial_hash_impl.h