ACloudViewer  3.9.4
A Modern Library for 3D Data Processing
cloudViewer::core::SlabNodeManagerImpl Class Reference

#include <SlabNodeManager.h>

Collaboration diagram for cloudViewer::core::SlabNodeManagerImpl:

Public Member Functions

 SlabNodeManagerImpl ()
 
__device__ __forceinline__ uint32_t * get_unit_ptr_from_slab (const buf_index_t &next_slab_ptr, const uint32_t &lane_id)
 
__device__ __forceinline__ uint32_t * get_ptr_for_bitmap (const uint32_t super_block_idx, const uint32_t bitmap_idx)
 
__device__ void Init (uint32_t &tid, uint32_t &lane_id)
 
__device__ uint32_t WarpAllocate (const uint32_t &lane_id)
 
__device__ void FreeUntouched (buf_index_t ptr)
 

Public Attributes

uint32_t * super_blocks_
 A pointer to each super-block. More...
 
uint32_t hash_coef_
 hash_coef (register): used as (16 bits, 16 bits) for hashing. More...
 

Detailed Description

Definition at line 48 of file SlabNodeManager.h.

Constructor & Destructor Documentation

◆ SlabNodeManagerImpl()

cloudViewer::core::SlabNodeManagerImpl::SlabNodeManagerImpl ( )
inline

Definition at line 50 of file SlabNodeManager.h.

Member Function Documentation

◆ FreeUntouched()

__device__ void cloudViewer::core::SlabNodeManagerImpl::FreeUntouched ( buf_index_t  ptr)
inline

◆ get_ptr_for_bitmap()

__device__ __forceinline__ uint32_t* cloudViewer::core::SlabNodeManagerImpl::get_ptr_for_bitmap ( const uint32_t  super_block_idx,
const uint32_t  bitmap_idx 
)
inline

Definition at line 61 of file SlabNodeManager.h.

References cloudViewer::core::kUIntsPerSuperBlock, and super_blocks_.

◆ get_unit_ptr_from_slab()

__device__ __forceinline__ uint32_t* cloudViewer::core::SlabNodeManagerImpl::get_unit_ptr_from_slab ( const buf_index_t next_slab_ptr,
const uint32_t &  lane_id 
)
inline

◆ Init()

◆ WarpAllocate()

Member Data Documentation

◆ hash_coef_

uint32_t cloudViewer::core::SlabNodeManagerImpl::hash_coef_

hash_coef (register): used as (16 bits, 16 bits) for hashing.

Definition at line 206 of file SlabNodeManager.h.

Referenced by cloudViewer::core::SlabNodeManager::SlabNodeManager().

◆ super_blocks_


The documentation for this class was generated from the following file: