MDL SDK API nvidia_logo_transpbg.gif Up
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
iscene_element.h
Go to the documentation of this file.
1 /***************************************************************************************************
2  * Copyright 2022 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>
12 
13 namespace mi {
14 
15 namespace neuraylib {
16 
27 enum Element_type
31 {
32 #ifndef MI_SKIP_WITH_MDL_SDK_DOXYGEN
33  ELEMENT_TYPE_INSTANCE = 0,
34  ELEMENT_TYPE_GROUP = 1,
35  ELEMENT_TYPE_OPTIONS = 2,
36  ELEMENT_TYPE_CAMERA = 3,
37  ELEMENT_TYPE_LIGHT = 4,
38 #endif // MI_SKIP_WITH_MDL_SDK_DOXYGEN
42 #ifndef MI_SKIP_WITH_MDL_SDK_DOXYGEN
43  ELEMENT_TYPE_TRIANGLE_MESH = 10,
44  ELEMENT_TYPE_ATTRIBUTE_CONTAINER = 16,
45  ELEMENT_TYPE_POLYGON_MESH = 18,
46  ELEMENT_TYPE_SUBDIVISION_SURFACE = 23,
47  ELEMENT_TYPE_FREEFORM_SURFACE = 24,
48  ELEMENT_TYPE_FIBERS = 25,
49  ELEMENT_TYPE_VOLUME = 26,
50  ELEMENT_TYPE_VOLUME_DATA = 27,
51 #endif // MI_SKIP_WITH_MDL_SDK_DOXYGEN
63 #ifndef MI_SKIP_WITH_MDL_SDK_DOXYGEN
64  ELEMENT_TYPE_IRRADIANCE_PROBES = 36,
65  ELEMENT_TYPE_DECAL = 37,
66  ELEMENT_TYPE_ON_DEMAND_MESH = 38,
67  ELEMENT_TYPE_PROJECTOR = 39,
68  ELEMENT_TYPE_SECTION_OBJECT = 40,
69  ELEMENT_TYPE_PROXY = 41,
70 #endif // MI_SKIP_WITH_MDL_SDK_DOXYGEN
71  ELEMENT_TYPE_FORCE_32_BIT = 0xffffffffU
72 };
73 
74 mi_static_assert( sizeof( Element_type)== sizeof( Uint32));
75 
78  public base::Interface_declare<0x8a2a4da9,0xe323,0x452c,0xb8,0xda,0x92,0x45,0x67,0x85,0xd7,0x78,
79  neuraylib::IAttribute_set>
80 {
81 public:
83  virtual Element_type get_element_type() const = 0;
84 };
85  // end group mi_neuray_scene_element
87 
88 } // namespace neuraylib
89 
90 } // namespace mi
91 
92 #endif // MI_NEURAYLIB_ISCENE_ELEMENT_H