8#ifndef MI_NEURAYLIB_BSDF_ISOTROPIC_DATA_H
9#define MI_NEURAYLIB_BSDF_ISOTROPIC_DATA_H
64 : m_resolution_theta( resolution_theta),
65 m_resolution_phi( resolution_phi),
68 Size size = resolution_theta * resolution_theta * resolution_phi;
85 { m_bsdf_buffer->retain();
return m_bsdf_buffer.get(); }
89 { m_bsdf_buffer->retain();
return m_bsdf_buffer.get(); }
Handle class template for interfaces, automatizing the lifetime control via reference counting.
Definition: handle.h:113
Mixin class template for deriving interface implementations.
Definition: interface_implement.h:41
Example implementation of the abstract interface mi::neuraylib::IBsdf_buffer.
Definition: bsdf_isotropic_data.h:30
const Float32 * get_data() const
Gives access to the memory block (const).
Definition: bsdf_isotropic_data.h:41
Float32 * get_data()
Gives access to the memory block (mutable).
Definition: bsdf_isotropic_data.h:44
~Bsdf_buffer()
Destructor.
Definition: bsdf_isotropic_data.h:38
Bsdf_buffer(Size size)
Constructor.
Definition: bsdf_isotropic_data.h:35
Example implementation of the abstract interface mi::neuraylib::IBsdf_isotropic_data.
Definition: bsdf_isotropic_data.h:60
Uint32 get_resolution_phi() const
Returns the number of values in phi direction.
Definition: bsdf_isotropic_data.h:78
Uint32 get_resolution_theta() const
Returns the number of values in theta direction.
Definition: bsdf_isotropic_data.h:75
Bsdf_type get_type() const
Returns the type of the values.
Definition: bsdf_isotropic_data.h:81
Bsdf_buffer * get_bsdf_buffer()
Returns the buffer containing the values (mutable).
Definition: bsdf_isotropic_data.h:88
Bsdf_isotropic_data(Uint32 resolution_theta, Uint32 resolution_phi, Bsdf_type type)
Constructor.
Definition: bsdf_isotropic_data.h:63
const Bsdf_buffer * get_bsdf_buffer() const
Returns the buffer containing the values (const).
Definition: bsdf_isotropic_data.h:84
unsigned int Uint32
32-bit unsigned integer.
Definition: types.h:49
Uint64 Size
Unsigned integral type that is large enough to hold the size of all types.
Definition: types.h:112
float Float32
32-bit float.
Definition: types.h:51
Bsdf_type
The BSDF type.
Definition: ibsdf_isotropic_data.h:23
@ BSDF_RGB
Three scalars (RGB) per grid value.
Definition: ibsdf_isotropic_data.h:25
Smart-pointer handle class for interfaces, const and non-const version.
Abstract interfaces related to scene element Bsdf_measurement.
Mixin class template for deriving interface implementations.
Common namespace for APIs of NVIDIA Advanced Rendering Center GmbH.
Definition: example_derivatives.dox:5