7#ifndef MI_NEURAYLIB_IVOLUME_H
8#define MI_NEURAYLIB_IVOLUME_H
35 public base::Interface_declare<0xdc35e746,0x3410,0x46b4,0x91,0x31,0xba,0xde,0x70,0x7d,0xa1,0xe3,
36 neuraylib::IScene_element>
87 public base::Interface_declare<0xe0ce059f,0x51cf,0x4fef,0x8c,0x87,0x91,0x93,0x16,0x59,0xa5,0x44,
88 neuraylib::IScene_element>
120 IReader* reader,
const char* format,
const char* selector = 0) = 0;
197 public base::Interface_declare<0xe0ce059f,0x51cf,0x4fef,0x8c,0x87,0x91,0x93,0x16,0x59,0xa5,0x45>
This interface represents static arrays, i.e., arrays with a fixed number of elements.
Definition: iarray.h:37
Mixin class template for deriving new interface declarations.
Definition: interface_declare.h:43
Axis-aligned N-dimensional bounding box class template of fixed dimension.
Definition: bbox.h:74
A reader supports binary block reads and string-oriented line reads that zero-terminate the result.
Definition: ireader.h:27
Interface representing a volume data set.
Definition: ivolume.h:89
virtual Sint32 export_file(const char *filename, const char *selector=0) const =0
Writes the loaded data set to the provided path.
virtual const char * get_selector() const =0
Returns the name of the file's data selector selected via reset_file().
virtual Sint32 reset_reader(IReader *reader, const char *format, const char *selector=0)=0
Sets the volume data to the data provided by a reader.
virtual const char * get_filename() const =0
Returns the resolved file name of the file containing the volume data.
virtual Sint32 reset_file(const char *filename, const char *selector=0)=0
Sets the volume data to a file identified by filename.
virtual Voxel_block_struct get_data_bounds() const =0
Returns the bounding box stored in the current data set.
virtual const IArray * list_contents(IReader *reader, const char *format)=0
Lists the data sets contained in a file.
virtual const IArray * list_contents(const char *path)=0
Lists the data sets contained in a file.
virtual Float32_4_4_struct get_transform() const =0
Returns the internal transformation from voxel space to world space.
virtual const char * get_original_filename() const =0
Returns the unresolved file as passed to reset_file().
Basic information about one of the data sets contained in a volume data file.
Definition: ivolume.h:198
virtual const char * get_name() const =0
Retrieves the name of the data set.
virtual const char * get_value_type() const =0
Retrieves the type of each data element.
virtual const Voxel_block_struct & get_data_bounds() const =0
Retrieves the internal bounds of the data set.
virtual const Float32_4_4_struct & get_transform() const =0
Retrieves the transformation associated with the data set.
Interface representing a top-level volume.
Definition: ivolume.h:37
virtual Bbox3_struct get_bounds() const =0
Retrieves the bounds of this object.
void set_bounds(const Bbox3 &box, const Float32_4_4_struct &tf=Float32_4_4(1))
This inline method exists for the user's convenience since mi::math::Bbox is not derived from mi::mat...
Definition: ivolume.h:67
virtual void set_bounds(const Bbox3_struct &box, const Float32_4_4_struct &tf=Float32_4_4(1))=0
Sets the bounds of this object.
virtual Float32_4_4_struct get_transform() const =0
Retrieves the bounds transform of this object.
signed int Sint32
32-bit signed integer.
Definition: types.h:46
math::Matrix<Float32, 4, 4> Float32_4_4
4 x 4 matrix of Float32.
Definition: matrix_typedefs.h:265
Base class for all scene elements.
Common namespace for APIs of NVIDIA Advanced Rendering Center GmbH.
Definition: neuraylib.h:179
math::Bbox<Sint32, 3> Voxel_block
Integer bounding box for voxel grids.
Definition: ivolume.h:18
math::Bbox_struct<Sint32, 3> Voxel_block_struct
Storage format for grid space volume bounding boxes.
Definition: ivolume.h:16
Storage class for an axis-aligned N-dimensional bounding box class template of fixed dimension.
Definition: bbox.h:47
Storage class for a NxM-dimensional matrix class template of fixed dimensions.
Definition: matrix.h:90
Typedefs for types from the math API.