7#ifndef NVIDIA_INDEX_IDISTRIBUTED_DATA_ACCESS_H
8#define NVIDIA_INDEX_IDISTRIBUTED_DATA_ACCESS_H
11#include <mi/base/interface_declare.h>
58 public mi::base::Interface_declare<0xd9ff4bf,0xa458,0x44f4,0x8f,0x44,0xd4,0x16,0x4c,0x14,0x4d,0x99>
80 const mi::math::Bbox_struct<mi::Float32, 3>& query_bbox,
81 mi::neuraylib::IDice_transaction* dice_transaction) = 0;
156 public mi::base::Interface_declare<0x5f7ac66c,0x5af7,0x4af9,0xa3,0xe8,0x8f,0xac,0xf0,0x08,0x9f,0x4c>
177 const mi::math::Bbox_struct<mi::Uint32, 2>& query_bbox,
178 mi::neuraylib::IDice_transaction* dice_transaction) = 0;
239 public mi::base::Interface_declare<0xc77ead83,0xf351,0x4160,0x8c,0x15,0x40,0xbc,0x86,0x21,0x4e,0xf0,
240 mi::neuraylib::IElement>
257 mi::neuraylib::Tag_struct scene_element_tag)
const = 0;
276 const mi::base::Uuid& dataset_type,
277 mi::neuraylib::Tag_struct scene_element_tag)
const = 0;
303 mi::neuraylib::Tag_struct scene_element_tag)
const
Interface class that exposes distributed data access interfaces for specific scene element.
Definition: idistributed_data_access.h:241
virtual IRegular_heightfield_data_access * create_regular_heightfield_data_access(mi::neuraylib::Tag_struct scene_element_tag) const =0
Exposes an interface class that allows accessing distributed heightfield data.
virtual IDistributed_data_access * create_distributed_data_access(const mi::base::Uuid &dataset_type, mi::neuraylib::Tag_struct scene_element_tag) const =0
Creates an data access functionality specific for a distributed data type.
IDistributed_data_access * create_distributed_data_access(mi::neuraylib::Tag_struct scene_element_tag) const
Convenience function for creating data access for a given distributed dataset type.
Definition: idistributed_data_access.h:302
Interface class enabling custom distributed data accesses.
Definition: idistributed_data_access.h:59
virtual const IDistributed_data_subset * get_distributed_data_subset() const =0
Returns the accessed and assembled distributed data subset.
virtual const mi::math::Bbox_struct< mi::Float32, 3 > & get_bounding_box() const =0
Get the determined bounding box that bounds the accessed distributed data.
virtual mi::neuraylib::Tag_struct get_scene_element() const =0
The volume scene element that corresponds to the accessed distributed dataset.
virtual mi::Sint32 access(const mi::math::Bbox_struct< mi::Float32, 3 > &query_bbox, mi::neuraylib::IDice_transaction *dice_transaction)=0
Accessing a subset of a distributed dataset.
A data subset represent the unique entity representing a distributed dataset inside a single subregio...
Definition: idistributed_data_subset.h:157
Interface class for accessing the distributed heightfield data.
Definition: idistributed_data_access.h:157
virtual mi::neuraylib::Tag_struct get_scene_element() const =0
The scene element that corresponds to the accessed data.
virtual mi::math::Vector_struct< mi::Float32, 3 > * get_normal_values() const =0
The accessed heightfield normal vector values that correspond to the heightfield's elevation values.
virtual mi::Sint32 access(const mi::math::Bbox_struct< mi::Uint32, 2 > &query_bbox, mi::neuraylib::IDice_transaction *dice_transaction)=0
Querying the elevation values of a heightfield dataset.
virtual mi::Float32 * get_elevation_values() const =0
The accessed heightfield elevation values stored locally.
virtual const mi::math::Bbox_struct< mi::Uint32, 2 > & get_patch_bounding_box() const =0
Getting the computed 2D bounding box in which the accessed elevation data is defined.
Distributed subset interaces for a large-scale distributed datasets.
Distributed subsets of height fields.
Common namespace for all NVIDIA APIs.
Definition: iindex.h:349