This interface class represents an entry point for user-defined editing tasks that operate on the heightfield patches to modify their elevation values. More...
#include <idistributed_data_edit.h>
Inherits mi::base::Interface_declare< 0x5b1758d2, ... >.
Public Member Functions | |
virtual void | edit (IRegular_heightfield_compute_task *compute_task, mi::neuraylib::IDice_transaction *dice_transaction)=0 |
Applies the given compute task on the current heightfield patch with a given bounding box. More... | |
virtual void | get_updated_bounding_box (mi::math::Bbox_struct< mi::Float32, 3 > &bbox)=0 |
Returns the updated bounding box of the heightfield patch data associated with the compute task. More... | |
virtual void | execute_compute_task (const IData_subset_processing_task *compute_task, mi::neuraylib::IDice_transaction *dice_transaction) const =0 |
Applies the given compute task on the current sparse-volume subset. More... | |
This interface class represents an entry point for user-defined editing tasks that operate on the heightfield patches to modify their elevation values.
An instance of this class can be retrieved from IRegular_heightfield_data_locality::create_data_edit()
for a given subset of the heightfield. The computing task that actually performs the user-defined heightfield editing needs to be implemented by a class derived from the interface IRegular_heightfield_compute_task
and passed to edit().
In order to be able to process the given heightfield patch, the calling distributed rendering algorithm (e.g., IDistributed_data_job
) has to make sure to query the interface only for those heightfield patches that are available on the present cluster host where the compute unit (fragment of the fragmented job) runs on, i.e., the height field's patch data needs to be available locally on that machine.
IRegular_heightfield
is replaced by the newer tile based IHeight_field_scene_element
, then this class becomes obsolete and will be removed from the NVIDIA IndeX API.
|
pure virtual |
Applies the given compute task on the current heightfield patch with a given bounding box.
[in] | compute_task | The height field compute task performs the editing operation and can be any user-defined technique or algorithm. |
[in] | dice_transaction | The DiCE transaction used for the operation. |
|
pure virtual |
Applies the given compute task on the current sparse-volume subset.
[in] | compute_task | The height field compute task performs the operation and can be any user-defined technique or algorithm. |
[in] | dice_transaction | The DiCE transaction used for the operation. |
|
pure virtual |
Returns the updated bounding box of the heightfield patch data associated with the compute task.
The updated bounding box shall be passed to the NVIDIA IndeX system to trigger, the data updates in the cluster environment if needed.
[out] | bbox | The bounding box of the heightfield patch after running the compute algorithm. The bounding box is defined in the height field's IJK space. |