NVIDIA Iray API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
mi::Bsdf_isotropic_data Class Reference

Example implementation of the abstract interface mi::IBsdf_isotropic_data. More...

Inheritance diagram for mi::Bsdf_isotropic_data:
Inheritance graph
[legend]

Public Member Functions

  Bsdf_isotropic_data (Uint32 resolution_theta, Uint32 resolution_phi, Bsdf_type type)
  Constructor. More...
 
Uint32  get_resolution_theta () const
  Returns the number of values in theta direction. More...
 
Uint32  get_resolution_phi () const
  Returns the number of values in phi direction. More...
 
Bsdf_type  get_type () const
  Returns the type of the values. More...
 
const Bsdf_buffer get_bsdf_buffer () const
  Returns the buffer containing the values (const). More...
 
Bsdf_buffer get_bsdf_buffer ()
  Returns the buffer containing the values (mutable). More...
 
- Public Member Functions inherited from mi::base::Interface_implement< IBsdf_isotropic_data >
  Interface_implement (Uint32 initial=1)
  Constructor. More...
 
  Interface_implement (const Interface_implement< IBsdf_isotropic_data > &other)
  Copy constructor. More...
 
Interface_implement
< IBsdf_isotropic_data > & 
operator= (const Interface_implement< IBsdf_isotropic_data > &other)
  Assignment operator. More...
 
virtual Uint32  retain () const
  Increments the reference count. More...
 
virtual Uint32  release () const
  Decrements the reference count. More...
 
virtual const IInterface get_interface (const Uuid &interface_id) const
  Acquires a const interface. More...
 
virtual IInterface get_interface (const Uuid &interface_id)
  Acquires a mutable interface. More...
 
Uuid  get_iid () const
  Returns the interface ID of the most derived interface. More...
 

Additional Inherited Members

- Public Types inherited from mi::base::Interface_declare< 0x23fd6d83, 0x057b, 0x4507, 0xb4, 0x93, 0x0e, 0xbd, 0x44, 0x7b, 0x07, 0xb9 >
typedef Interface_declare< id1,
id2, id3, id4, id5, id6, id7,
id8, id9, id10, id11,
IInterface
Self
  Own type. More...
 
typedef Uuid_t< id1, id2, id3,
id4, id5, id6, id7, id8, id9,
id10, id11 > 
IID
  Declares the interface ID (IID) of this interface. More...
 
- Static Public Member Functions inherited from mi::base::Interface_declare< 0x23fd6d83, 0x057b, 0x4507, 0xb4, 0x93, 0x0e, 0xbd, 0x44, 0x7b, 0x07, 0xb9 >
static bool  compare_iid (const Uuid &iid)
  Compares the interface ID iid against the interface ID of this interface and of its ancestors. More...
 

Detailed Description

Example implementation of the abstract interface mi::IBsdf_isotropic_data.

The resolution and type of the BSDF data are specified in the constructor and cannot be changed later. This simple implementation creates (the interface owning) the memory block holding all values in its constructor and keeps it for its lifetime. More advanced implementations might convert the data from other representations on the fly in get_bsdf_buffer() and might return a temporary instance of mi::IBsdf_buffer without keeping a reference to that instance.

See Also
mi::IBsdf_isotropic_data

Constructor & Destructor Documentation

mi::Bsdf_isotropic_data::Bsdf_isotropic_data ( Uint32  resolution_theta,
Uint32  resolution_phi,
Bsdf_type  type 
)
inline

Constructor.

Member Function Documentation

const Bsdf_buffer* mi::Bsdf_isotropic_data::get_bsdf_buffer ( ) const
inlinevirtual

Returns the buffer containing the values (const).

Implements mi::IBsdf_isotropic_data.

Bsdf_buffer* mi::Bsdf_isotropic_data::get_bsdf_buffer ( )
inline

Returns the buffer containing the values (mutable).

Uint32 mi::Bsdf_isotropic_data::get_resolution_phi ( ) const
inlinevirtual

Returns the number of values in phi direction.

Implements mi::IBsdf_isotropic_data.

Uint32 mi::Bsdf_isotropic_data::get_resolution_theta ( ) const
inlinevirtual

Returns the number of values in theta direction.

Implements mi::IBsdf_isotropic_data.

Bsdf_type mi::Bsdf_isotropic_data::get_type ( ) const
inlinevirtual

Returns the type of the values.

Implements mi::IBsdf_isotropic_data.