NVIDIA IndeX API nvidia_logo_transpbg.gif Up

Data subsets represent major entities for distributed rendering and computing. More...

Classes

class  nv::index::ICorner_point_grid_subset
 Defines the vertices and attributes of a subset (sub-grid) of a corner-point grid. More...
 
class  nv::index::IDistributed_data_subset
 A data subset represent the unique entity representing a distributed dataset inside a single subregion. More...
 
class  nv::index::IData_subset_factory
 Factory for creating an empty data subset for a specific distributed dataset type. More...
 
class  nv::index::IHeight_field_subset_data_descriptor
 Subset-data descriptor for tiled height-field subsets. More...
 
class  nv::index::IHeight_field_subset
 Distributed data storage class for height-field subsets. More...
 
class  nv::index::IIrregular_volume_subset
 Distributed data storage class for irregular volume subsets. More...
 
class  nv::index::IParticle_volume_attribute_set_descriptor
 Attribute-set descriptor for particle volume subsets. More...
 
class  nv::index::IParticle_volume_subset
 Distributed data storage class for particle volume subsets. More...
 
class  nv::index::IParticle_volume_subset_device
 Distributed data storage class for particle volume subsets hosted on a GPU device. More...
 
class  nv::index::IRegular_heightfield_patch
 Distributed data storage class for regular heightfield scene elements. More...
 
class  nv::index::IVolume_device_data_buffer
 Volume device-data accessor interface. More...
 
class  nv::index::ISparse_volume_attribute_set_descriptor
 Attribute-set descriptor for sparse volume subsets. More...
 
class  nv::index::ISparse_volume_subset_data_descriptor
 Data descriptor for sparse volume data subsets. More...
 
class  nv::index::ISparse_volume_subset
 Distributed data storage class for sparse volume subsets. More...
 
class  nv::index::ITriangle_mesh_subset
 Defines the vertices and per-vertex attributes of a subset of a triangle mesh. More...
 
class  nv::index::IVDB_subset
 Distributed data storage class for VDB subsets. More...
 
class  nv::index::IVDB_subset_device
 Distributed data storage class for VDB subsets hosted on a GPU device. More...
 

Enumerations

enum  nv::index::Distributed_data_attribute_format {
  nv::index::ATTRIB_FORMAT_UINT8 = 0x00u ,
  nv::index::ATTRIB_FORMAT_UINT8_2 ,
  nv::index::ATTRIB_FORMAT_UINT8_3 ,
  nv::index::ATTRIB_FORMAT_UINT8_4 ,
  nv::index::ATTRIB_FORMAT_SINT8 ,
  nv::index::ATTRIB_FORMAT_SINT8_2 ,
  nv::index::ATTRIB_FORMAT_SINT8_3 ,
  nv::index::ATTRIB_FORMAT_SINT8_4 ,
  nv::index::ATTRIB_FORMAT_UINT16 ,
  nv::index::ATTRIB_FORMAT_UINT16_2 ,
  nv::index::ATTRIB_FORMAT_UINT16_3 ,
  nv::index::ATTRIB_FORMAT_UINT16_4 ,
  nv::index::ATTRIB_FORMAT_SINT16 ,
  nv::index::ATTRIB_FORMAT_SINT16_2 ,
  nv::index::ATTRIB_FORMAT_SINT16_3 ,
  nv::index::ATTRIB_FORMAT_SINT16_4 ,
  nv::index::ATTRIB_FORMAT_UINT32 ,
  nv::index::ATTRIB_FORMAT_UINT32_2 ,
  nv::index::ATTRIB_FORMAT_UINT32_3 ,
  nv::index::ATTRIB_FORMAT_UINT32_4 ,
  nv::index::ATTRIB_FORMAT_SINT32 ,
  nv::index::ATTRIB_FORMAT_SINT32_2 ,
  nv::index::ATTRIB_FORMAT_SINT32_3 ,
  nv::index::ATTRIB_FORMAT_SINT32_4 ,
  nv::index::ATTRIB_FORMAT_FLOAT16 ,
  nv::index::ATTRIB_FORMAT_FLOAT16_2 ,
  nv::index::ATTRIB_FORMAT_FLOAT16_3 ,
  nv::index::ATTRIB_FORMAT_FLOAT16_4 ,
  nv::index::ATTRIB_FORMAT_FLOAT32 ,
  nv::index::ATTRIB_FORMAT_FLOAT32_2 ,
  nv::index::ATTRIB_FORMAT_FLOAT32_3 ,
  nv::index::ATTRIB_FORMAT_FLOAT32_4 ,
  ATTRIB_FORMAT_COUNT ,
  ATTRIB_FORMAT_INVALID = ATTRIB_FORMAT_COUNT
}
 Attribute formats for distributed dataset types. More...
 
enum  nv::index::Sparse_volume_voxel_format {
  nv::index::SPARSE_VOLUME_VOXEL_FORMAT_UINT8 = 0x00 ,
  nv::index::SPARSE_VOLUME_VOXEL_FORMAT_UINT8_2 ,
  nv::index::SPARSE_VOLUME_VOXEL_FORMAT_UINT8_4 ,
  nv::index::SPARSE_VOLUME_VOXEL_FORMAT_SINT8 ,
  nv::index::SPARSE_VOLUME_VOXEL_FORMAT_SINT8_2 ,
  nv::index::SPARSE_VOLUME_VOXEL_FORMAT_SINT8_4 ,
  nv::index::SPARSE_VOLUME_VOXEL_FORMAT_UINT16 ,
  nv::index::SPARSE_VOLUME_VOXEL_FORMAT_UINT16_2 ,
  nv::index::SPARSE_VOLUME_VOXEL_FORMAT_UINT16_4 ,
  nv::index::SPARSE_VOLUME_VOXEL_FORMAT_SINT16 ,
  nv::index::SPARSE_VOLUME_VOXEL_FORMAT_SINT16_2 ,
  nv::index::SPARSE_VOLUME_VOXEL_FORMAT_SINT16_4 ,
  nv::index::SPARSE_VOLUME_VOXEL_FORMAT_FLOAT16 ,
  nv::index::SPARSE_VOLUME_VOXEL_FORMAT_FLOAT16_2 ,
  nv::index::SPARSE_VOLUME_VOXEL_FORMAT_FLOAT16_4 ,
  nv::index::SPARSE_VOLUME_VOXEL_FORMAT_FLOAT32 ,
  nv::index::SPARSE_VOLUME_VOXEL_FORMAT_FLOAT32_2 ,
  nv::index::SPARSE_VOLUME_VOXEL_FORMAT_FLOAT32_4 ,
  SPARSE_VOLUME_VOXEL_FORMAT_COUNT ,
  SPARSE_VOLUME_VOXEL_FORMAT_INVALID = SPARSE_VOLUME_VOXEL_FORMAT_COUNT
}
 Voxel format of sparse volume voxel data. More...
 

Functions

mi::Sint32 nv::index::get_sizeof (const nv::index::Sparse_volume_voxel_format fmt)
 Get the size in byte for a given sparse volume voxel data format. More...
 

Detailed Description

Data subsets represent major entities for distributed rendering and computing.

NVIDIA IndeX decomposes the scene into subregions. In particular the decomposition also subdivides those scene elements that represent large-scale datasets (see Distributed Datasets) into smaller-sized portions. These are called data subsets. Data subsets are contained inside subregions, i.e., each subregion that intersect part of the distributed dataset extent contains one data subset of the distributed dataset. This way, data subsets represent the major entities for data distribution to cluster hosts and
GPUs, for parallel and scalable distributed rendering on GPU clusters and for parallel and scalable distributed data processing.

For instance, the sparse volume dataset ISparse_volume_scene_element will be represented by many ISparse_volume_subset distributed to cluster nodes. Each of the volume's subsets are rendered independently for scalable volume data visualization and each of the subsets may be processed, analysed and manipulated in parallel for scalable and distributed computing.

Data subsets are distributed datatype specific and comprise tailored interfaces for efficient access of the internal type-specific data structures as well as efficient update of the internal data representation of a data subset contained in a subregion. For instance, the interface class ISparse_volume_subset exposes methods for writing new voxel values and thus updating the volume's data. Also, the interace class provides methods for querying the internal brick and level-of-detail structures and attribute descriptions.

Enumeration Type Documentation

 Distributed_data_attribute_format

Attribute formats for distributed dataset types.

Note
A distributed dataset type may support support only a subset of the types below. Please review the specific datatypes for information regarding the supported attribute types (e.g., see ISparse_volume_subset).
Enumerator
ATTRIB_FORMAT_UINT8 

Scalar attribute format with uint8 precision.

ATTRIB_FORMAT_UINT8_2 

Vector attribute format with 2 components and uint8 precision per component.

ATTRIB_FORMAT_UINT8_3 

Vector attribute format with 3 components and uint8 precision per component.

ATTRIB_FORMAT_UINT8_4 

Vector attribute format with 4 components and uint8 precision per component.

ATTRIB_FORMAT_SINT8 

Scalar attribute format with sint8 precision.

ATTRIB_FORMAT_SINT8_2 

Vector attribute format with 2 components and sint8 precision per component.

ATTRIB_FORMAT_SINT8_3 

Vector attribute format with 3 components and sint8 precision per component.

ATTRIB_FORMAT_SINT8_4 

Vector attribute format with 4 components and sint8 precision per component.

ATTRIB_FORMAT_UINT16 

Scalar attribute format with uint16 precision.

ATTRIB_FORMAT_UINT16_2 

Vector attribute format with 2 components and uint16 precision per component.

ATTRIB_FORMAT_UINT16_3 

Vector attribute format with 3 components and uint16 precision per component.

ATTRIB_FORMAT_UINT16_4 

Vector attribute format with 4 components and uint16 precision per component.

ATTRIB_FORMAT_SINT16 

Scalar attribute format with sint16 precision.

ATTRIB_FORMAT_SINT16_2 

Vector attribute format with 2 components and sint16 precision per component.

ATTRIB_FORMAT_SINT16_3 

Vector attribute format with 3 components and sint16 precision per component.

ATTRIB_FORMAT_SINT16_4 

Vector attribute format with 4 components and sint16 precision per component.

ATTRIB_FORMAT_UINT32 

Scalar attribute format with uint32 precision.

ATTRIB_FORMAT_UINT32_2 

Vector attribute format with 2 components and uint32 precision per component.

ATTRIB_FORMAT_UINT32_3 

Vector attribute format with 3 components and uint32 precision per component.

ATTRIB_FORMAT_UINT32_4 

Vector attribute format with 4 components and uint32 precision per component.

ATTRIB_FORMAT_SINT32 

Scalar attribute format with sint32 precision.

ATTRIB_FORMAT_SINT32_2 

Vector attribute format with 2 components and sint32 precision per component.

ATTRIB_FORMAT_SINT32_3 

Vector attribute format with 3 components and sint32 precision per component.

ATTRIB_FORMAT_SINT32_4 

Vector attribute format with 4 components and sint32 precision per component.

ATTRIB_FORMAT_FLOAT16 

Scalar attribute format with float16 precision.

ATTRIB_FORMAT_FLOAT16_2 

Vector attribute format with 2 components and float16 precision per component.

ATTRIB_FORMAT_FLOAT16_3 

Vector attribute format with 3 components and float16 precision per component.

ATTRIB_FORMAT_FLOAT16_4 

Vector attribute format with 4 components and float16 precision per component.

ATTRIB_FORMAT_FLOAT32 

Scalar attribute format with float32 precision.

ATTRIB_FORMAT_FLOAT32_2 

Vector attribute format with 2 components and float32 precision per component.

ATTRIB_FORMAT_FLOAT32_3 

Vector attribute format with 3 components and float32 precision per component.

ATTRIB_FORMAT_FLOAT32_4 

Vector attribute format with 4 components and float32 precision per component.

 Sparse_volume_voxel_format

Voxel format of sparse volume voxel data.

Enumerator
SPARSE_VOLUME_VOXEL_FORMAT_UINT8 

Scalar voxel format with uint8 precision.

SPARSE_VOLUME_VOXEL_FORMAT_UINT8_2 

Vector voxel format with 2 components and uint8 precision per component.

SPARSE_VOLUME_VOXEL_FORMAT_UINT8_4 

Vector voxel format with 4 components and uint8 precision per component.

SPARSE_VOLUME_VOXEL_FORMAT_SINT8 

Scalar voxel format with sint8 precision.

SPARSE_VOLUME_VOXEL_FORMAT_SINT8_2 

Vector voxel format with 2 components and sint8 precision per component.

SPARSE_VOLUME_VOXEL_FORMAT_SINT8_4 

Vector voxel format with 4 components and sint8 precision per component.

SPARSE_VOLUME_VOXEL_FORMAT_UINT16 

Scalar voxel format with uint16 precision.

SPARSE_VOLUME_VOXEL_FORMAT_UINT16_2 

Vector voxel format with 2 components and uint16 precision per component.

SPARSE_VOLUME_VOXEL_FORMAT_UINT16_4 

Vector voxel format with 4 components and uint16 precision per component.

SPARSE_VOLUME_VOXEL_FORMAT_SINT16 

Scalar voxel format with sint16 precision.

SPARSE_VOLUME_VOXEL_FORMAT_SINT16_2 

Vector voxel format with 2 components and sint16 precision per component.

SPARSE_VOLUME_VOXEL_FORMAT_SINT16_4 

Vector voxel format with 4 components and sint16 precision per component.

SPARSE_VOLUME_VOXEL_FORMAT_FLOAT16 

Scalar voxel format with float16 precision.

SPARSE_VOLUME_VOXEL_FORMAT_FLOAT16_2 

Vector voxel format with 2 components and float16 precision per component.

SPARSE_VOLUME_VOXEL_FORMAT_FLOAT16_4 

Vector voxel format with 4 components and float16 precision per component.

SPARSE_VOLUME_VOXEL_FORMAT_FLOAT32 

Scalar voxel format with float32 precision.

SPARSE_VOLUME_VOXEL_FORMAT_FLOAT32_2 

Vector voxel format with 2 components and float32 precision per component.

SPARSE_VOLUME_VOXEL_FORMAT_FLOAT32_4 

Vector voxel format with 4 components and float32 precision per component.

Function Documentation

 get_sizeof()

mi::Sint32 nv::index::get_sizeof ( const nv::index::Sparse_volume_voxel_format  fmt)
inline

Get the size in byte for a given sparse volume voxel data format.

Parameters
[in]fmtThe sparse volume voxel format
Returns
Returns the size in byte for the given voxel format.