NVIDIA Iray API Home  Up
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
ibsdf_isotropic_data.h
Go to the documentation of this file.
1 //*****************************************************************************
2 // Copyright 1986, 2016 NVIDIA Corporation. All rights reserved.
3 //*****************************************************************************
6 //*****************************************************************************
7 
8 #ifndef MI_NEURAYLIB_IBSDF_ISOTROPIC_DATA_H
9 #define MI_NEURAYLIB_IBSDF_ISOTROPIC_DATA_H
10 
12 #include <mi/neuraylib/version.h>
13 
14 namespace mi {
15 
16 namespace neuraylib {
17 
18 class IBsdf_buffer;
19 
24 enum Bsdf_type {
27  BSDF_RGB = 1,
28  BSDF_TYPES_FORCE_32_BIT = 0xffffffffU // Undocumented, for alignment only
29 };
30 
31 mi_static_assert( sizeof( Bsdf_type) == sizeof( Uint32));
32 
44 class IBsdf_isotropic_data : public
45  mi::base::Interface_declare<0x23fd6d83,0x057b,0x4507,0xb4,0x93,0x0e,0xbd,0x44,0x7b,0x07,0xb9>
46 {
47 public:
49  virtual Uint32 get_resolution_theta() const = 0;
50 
52  virtual Uint32 get_resolution_phi() const = 0;
53 
55  virtual Bsdf_type get_type() const = 0;
56 
58  virtual const IBsdf_buffer* get_bsdf_buffer() const = 0;
59 };
60 
66 class IBsdf_buffer : public
67  mi::base::Interface_declare<0xdf3e6121,0x464e,0x424b,0x87,0x6f,0x6e,0x8f,0x6e,0x66,0xe2,0x9a>
68 {
69 public:
89  virtual const Float32* get_data() const = 0;
90 };
91  // end group mi_neuray_misc
93 
94 } // namespace neuraylib
95 
96 #ifdef MI_NEURAYLIB_DEPRECATED_NAMESPACE_MI_TRANSITION
99 using neuraylib::BSDF_TYPES_FORCE_32_BIT;
103 #endif // MI_NEURAYLIB_DEPRECATED_NAMESPACE_MI_TRANSITION
104 
105 } // namespace mi
106 
107 #endif // MI_NEURAYLIB_IBSDF_ISOTROPIC_DATA_H