NVIDIA IndeX API nvidia_logo_transpbg.gif Up
ipipe_set_subset.h
Go to the documentation of this file.
1/******************************************************************************
2 * Copyright 2023 NVIDIA Corporation. All rights reserved.
3 *****************************************************************************/
6
7#ifndef NVIDIA_INDEX_IPIPE_SET_SUBSET_H
8#define NVIDIA_INDEX_IPIPE_SET_SUBSET_H
9
11
12namespace nv {
13namespace index {
14
18 public mi::base::Interface_declare<0x3ee3429b,0x0607,0x4b87,0xb3,0xe6,0x9e,0x94,0x57,0x60,0x54,0x41>
19{
20public:
26 //
27 virtual bool set_radius(mi::Float32 radius) = 0;
28
34 virtual void set_color(const mi::math::Color_struct& color) = 0;
35
41 virtual void set_user_flags(mi::Uint32 flags) = 0;
42
50 //
51 virtual bool set_property(const char* property_name) = 0;
52
60 //
62 const mi::Float32* property_coordinates,
63 mi::Size nb_property_coordinates) = 0;
64
76 mi::Float32 coordinate_first,
77 mi::Float32 coordinate_last) = 0;
78
90 mi::Float32 value_min,
91 mi::Float32 value_max) = 0;
92
102 virtual void set_subset_status(
103 mi::Float32 contains_start_point,
104 mi::Float32 contains_end_point) = 0;
105};
106
109 public mi::base::Interface_declare<0xea834969,0x1c60,0x4416,0xbd,0x05,0x3a,0x4b,0xbe,0x78,0xef,0x5f,
110 IDistributed_data_subset>
111{
112public:
117 virtual const mi::math::Bbox_struct<mi::Float32, 3>& get_bounding_box() const = 0;
118
129 const mi::math::Vector_struct<mi::Float32, 3>* vertices,
130 mi::Size nb_vertices) = 0;
131
139 virtual bool has_property(const char* property_name) const = 0;
140
149 virtual bool reserve_property(const char* property_name) const = 0;
150
165 virtual bool set_property_data(
166 const char* property_name,
167 const mi::Float32* property_values,
168 mi::Size nb_property_values,
169 mi::Float32 coordinate_first = 0.f,
170 mi::Float32 coordinate_last = 0.f) = 0;
171};
172
173}} // namespace
174
175#endif // NVIDIA_INDEX_ICORNER_POINT_GRID_SUBSET_H
Distributed data storage for pipe sets.
Definition: ipipe_set_subset.h:111
virtual bool set_property_data(const char *property_name, const mi::Float32 *property_values, mi::Size nb_property_values, mi::Float32 coordinate_first=0.f, mi::Float32 coordinate_last=0.f)=0
Stores the data for the given property.
virtual const mi::math::Bbox_struct< mi::Float32, 3 > & get_bounding_box() const =0
Returns the bounding box of the subset.
virtual bool has_property(const char *property_name) const =0
Returns whether data is available for the given property, or if it at least has been reserved.
virtual IPipe_subset_parameters * add_pipe(const mi::math::Vector_struct< mi::Float32, 3 > *vertices, mi::Size nb_vertices)=0
Adds a new pipe with the given vertices.
virtual bool reserve_property(const char *property_name) const =0
Tries to reserve the given property to the caller, so that it can start loading the property data.
Helper for setting the parameters of a single pipe inside a subset.
Definition: ipipe_set_subset.h:19
virtual bool set_property(const char *property_name)=0
Sets the property that should be mapped onto the pipe.
virtual bool set_property_coordinates(const mi::Float32 *property_coordinates, mi::Size nb_property_coordinates)=0
Sets the per-vertex coordinates for mapping property data onto the pipe.
virtual void set_color(const mi::math::Color_struct &color)=0
Sets the color of a pipe.
virtual void set_property_coordinates_range(mi::Float32 coordinate_first, mi::Float32 coordinate_last)=0
Specifies the domain-specific property coordinate values of the first and last vertex of the pipe.
virtual void set_property_value_range(mi::Float32 value_min, mi::Float32 value_max)=0
Sets the expected value range of the property data for the pipe.
virtual bool set_radius(mi::Float32 radius)=0
Sets the radius of the pipe.
virtual void set_user_flags(mi::Uint32 flags)=0
Sets custom user flags of a pipe.
virtual void set_subset_status(mi::Float32 contains_start_point, mi::Float32 contains_end_point)=0
Sets information about the given pipe for the current subset/subregion.
Distributed subset interaces for a large-scale distributed datasets.
Common namespace for all NVIDIA APIs.
Definition: iindex.h:349