Material Definition Language 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 2020 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 #endif // MI_SKIP_WITH_MDL_SDK_DOXYGEN
57 #ifndef MI_SKIP_WITH_MDL_SDK_DOXYGEN
58  ELEMENT_TYPE_IRRADIANCE_PROBES = 36,
59  ELEMENT_TYPE_DECAL = 37,
60  ELEMENT_TYPE_ON_DEMAND_MESH = 38,
61  ELEMENT_TYPE_PROJECTOR = 39,
62  ELEMENT_TYPE_SECTION_OBJECT = 40,
63  ELEMENT_TYPE_PROXY = 41,
64 #endif // MI_SKIP_WITH_MDL_SDK_DOXYGEN
65  ELEMENT_TYPE_FORCE_32_BIT = 0xffffffffU
66 };
67 
68 mi_static_assert( sizeof( Element_type)== sizeof( Uint32));
69 
72  public base::Interface_declare<0x8a2a4da9,0xe323,0x452c,0xb8,0xda,0x92,0x45,0x67,0x85,0xd7,0x78,
73  neuraylib::IAttribute_set>
74 {
75 public:
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