Iray SDK API nvidia_logo_transpbg.gif Up
iscene_element.h
Go to the documentation of this file.
1/***************************************************************************************************
2 * Copyright 2025 NVIDIA Corporation. All rights reserved.
3 **************************************************************************************************/
6
7#ifndef MI_NEURAYLIB_ISCENE_ELEMENT_H
8#define MI_NEURAYLIB_ISCENE_ELEMENT_H
9
11#include <mi/neuraylib/version.h> // for MI_NEURAYLIB_DEPRECATED_ENUM_VALUE
12
13namespace mi {
14
15namespace neuraylib {
16
31{
32#ifndef MI_SKIP_WITH_MDL_SDK_DOXYGEN
38#endif // MI_SKIP_WITH_MDL_SDK_DOXYGEN
42#ifndef MI_SKIP_WITH_MDL_SDK_DOXYGEN
52#endif // MI_SKIP_WITH_MDL_SDK_DOXYGEN
59#ifndef MI_SKIP_WITH_MDL_SDK_DOXYGEN
66#endif // MI_SKIP_WITH_MDL_SDK_DOXYGEN
67 MI_NEURAYLIB_DEPRECATED_ENUM_VALUE(ELEMENT_TYPE_FORCE_32_BIT, 0xffffffffU)
68};
69
72 public base::Interface_declare<0x8a2a4da9,0xe323,0x452c,0xb8,0xda,0x92,0x45,0x67,0x85,0xd7,0x78,
73 neuraylib::IAttribute_set>
74{
75public:
77 virtual Element_type get_element_type() const = 0;
78};
79 // end group mi_neuray_scene_element
81
82} // namespace neuraylib
83
84} // namespace mi
85
86#endif // MI_NEURAYLIB_ISCENE_ELEMENT_H
Mixin class template for deriving new interface declarations.
Definition: interface_declare.h:43
Common base interface for all scene elements.
Definition: iscene_element.h:74
virtual Element_type get_element_type() const =0
Indicates the actual scene element represented by interfaces derived from this interface.
unsigned int Uint32
32-bit unsigned integer.
Definition: types.h:49
Element_type
Distinguishes scene elements.
Definition: iscene_element.h:31
@ ELEMENT_TYPE_FUNCTION_CALL
mi::neuraylib::IFunction_call
Definition: iscene_element.h:55
@ ELEMENT_TYPE_TRIANGLE_MESH
mi::neuraylib::ITriangle_mesh
Definition: iscene_element.h:43
@ ELEMENT_TYPE_CAMERA
mi::neuraylib::ICamera
Definition: iscene_element.h:36
@ ELEMENT_TYPE_PROJECTOR
mi::neuraylib::IProjector
Definition: iscene_element.h:63
@ ELEMENT_TYPE_OPTIONS
mi::neuraylib::IOptions
Definition: iscene_element.h:35
@ ELEMENT_TYPE_IRRADIANCE_PROBES
mi::neuraylib::IIrradiance_probes
Definition: iscene_element.h:60
@ ELEMENT_TYPE_PARTICLES
mi::neuraylib::IParticles
Definition: iscene_element.h:51
@ ELEMENT_TYPE_COMPILED_MATERIAL
mi::neuraylib::ICompiled_material
Definition: iscene_element.h:57
@ ELEMENT_TYPE_BSDF_MEASUREMENT
mi::neuraylib::IBsdf_measurement
Definition: iscene_element.h:58
@ ELEMENT_TYPE_DECAL
mi::neuraylib::IDecal
Definition: iscene_element.h:61
@ ELEMENT_TYPE_GROUP
mi::neuraylib::IGroup
Definition: iscene_element.h:34
@ ELEMENT_TYPE_TEXTURE
mi::neuraylib::ITexture
Definition: iscene_element.h:40
@ ELEMENT_TYPE_INSTANCE
mi::neuraylib::IInstance
Definition: iscene_element.h:33
@ ELEMENT_TYPE_ATTRIBUTE_CONTAINER
mi::neuraylib::IAttribute_container
Definition: iscene_element.h:44
@ ELEMENT_TYPE_MODULE
mi::neuraylib::IModule
Definition: iscene_element.h:53
@ ELEMENT_TYPE_LIGHT
mi::neuraylib::ILight
Definition: iscene_element.h:37
@ ELEMENT_TYPE_MATERIAL_INSTANCE
mi::neuraylib::IMaterial_instance
Definition: iscene_element.h:56
@ ELEMENT_TYPE_ON_DEMAND_MESH
mi::neuraylib::IOn_demand_mesh
Definition: iscene_element.h:62
@ ELEMENT_TYPE_LIGHTPROFILE
mi::neuraylib::ILightprofile
Definition: iscene_element.h:39
@ ELEMENT_TYPE_VOLUME
mi::neuraylib::IVolume
Definition: iscene_element.h:49
@ ELEMENT_TYPE_SECTION_OBJECT
mi::neuraylib::ISection_object
Definition: iscene_element.h:64
@ ELEMENT_TYPE_SUBDIVISION_SURFACE
mi::neuraylib::ISubdivision_surface
Definition: iscene_element.h:46
@ ELEMENT_TYPE_IMAGE
mi::neuraylib::IImage
Definition: iscene_element.h:41
@ ELEMENT_TYPE_FUNCTION_DEFINITION
mi::neuraylib::IFunction_definition
Definition: iscene_element.h:54
@ ELEMENT_TYPE_POLYGON_MESH
mi::neuraylib::IPolygon_mesh
Definition: iscene_element.h:45
@ ELEMENT_TYPE_VOLUME_DATA
mi::neuraylib::IVolume_data
Definition: iscene_element.h:50
@ ELEMENT_TYPE_PROXY
mi::neuraylib::IProxy
Definition: iscene_element.h:65
@ ELEMENT_TYPE_FIBERS
mi::neuraylib::IFibers
Definition: iscene_element.h:48
@ ELEMENT_TYPE_FREEFORM_SURFACE
mi::neuraylib::IFreeform_surface
Definition: iscene_element.h:47
Base class for database elements with attributes.
Common namespace for APIs of NVIDIA Advanced Rendering Center GmbH.
Definition: neuraylib.h:179
Major and minor version number and an optional qualifier.