Material Definition Language API nvidia_logo_transpbg.gif Up
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
mi::neuraylib::IValue Class Referenceabstract

The interface to MDL values. More...

Inheritance diagram for mi::neuraylib::IValue:
mi::base::Interface_declare< 0xbf837f4a, 0x9034, 0x4f32, 0xaf, 0x5c, 0x75, 0xb3, 0x67, 0x64, 0x53, 0x23 > mi::base::IInterface mi::base::Interface_declare< 0x1588b6fa, 0xa143, 0x4bac, 0xa0, 0x32, 0x06, 0xbd, 0x9e, 0x7f, 0xb6, 0xe5, neuraylib::IValue > mi::base::Interface_declare< 0x479bb10c, 0xd444, 0x426c, 0x83, 0xab, 0x26, 0xdf, 0xf6, 0x1d, 0x6f, 0xd7, neuraylib::IValue > mi::base::Interface_declare< 0xdabc8fe3, 0x5c70, 0x4ef0, 0xa2, 0xf7, 0x34, 0x30, 0xb5, 0x67, 0xdc, 0x75, neuraylib::IValue > mi::base::Interface_declare< 0xf2413c80, 0x8e71, 0x4974, 0xaa, 0xf2, 0x60, 0xd5, 0xe2, 0x94, 0x9d, 0x3e, neuraylib::IValue > mi::neuraylib::IValue_invalid_df mi::neuraylib::IValue_resource mi::neuraylib::IValue_compound mi::neuraylib::IValue_atomic mi::base::Interface_declare< 0x31a55244, 0x415c, 0x4b4d, 0xa7, 0x86, 0x2f, 0x21, 0x9c, 0xb8, 0xb9, 0xff, neuraylib::IValue_resource > mi::base::Interface_declare< 0xd7c9ffbd, 0xb5e4, 0x4bf4, 0x90, 0xd0, 0xe9, 0x75, 0x4d, 0x6d, 0x49, 0x07, neuraylib::IValue_resource > mi::base::Interface_declare< 0xf2a03651, 0x8883, 0x4ba4, 0xb9, 0xa9, 0xe6, 0x87, 0x34, 0x3a, 0xb3, 0xb8, neuraylib::IValue_resource > mi::base::Interface_declare< 0x3bb9bf46, 0x1cbb, 0x4460, 0xbe, 0x27, 0x10, 0xf5, 0x71, 0x61, 0x96, 0xa2, neuraylib::IValue_compound > mi::base::Interface_declare< 0x9ee95da6, 0x2cd6, 0x4168, 0x89, 0xea, 0x92, 0x10, 0x57, 0xda, 0xe6, 0xdc, neuraylib::IValue_compound > mi::base::Interface_declare< 0xa17c5f57, 0xa647, 0x41c4, 0x86, 0x2f, 0x4c, 0x0d, 0xe1, 0x30, 0x08, 0xfc, neuraylib::IValue_compound > mi::base::Interface_declare< 0xcbe089ce, 0x4aea, 0x474d, 0x94, 0x5f, 0x52, 0x13, 0xef, 0x01, 0xce, 0x81, neuraylib::IValue_compound > mi::base::Interface_declare< 0xf5d09fc3, 0xd783, 0x4571, 0x8d, 0x59, 0x41, 0xb1, 0xff, 0xd3, 0x91, 0x49, neuraylib::IValue_compound > mi::base::Interface_declare< 0x21f07151, 0x74b5, 0x4296, 0x90, 0x29, 0xc7, 0xde, 0x49, 0x38, 0x2a, 0xbc, neuraylib::IValue_atomic > mi::base::Interface_declare< 0x64b28506, 0x8675, 0x4724, 0xa1, 0x0d, 0xc6, 0xf2, 0x35, 0x46, 0x26, 0x39, neuraylib::IValue_atomic > mi::base::Interface_declare< 0x91e6f145, 0x280d, 0x4d68, 0x95, 0x57, 0xe1, 0xd0, 0x9c, 0xd2, 0x5c, 0x74, neuraylib::IValue_atomic > mi::base::Interface_declare< 0xaf253a14, 0x1f04, 0x4b67, 0xba, 0x70, 0x7b, 0x01, 0x05, 0xfb, 0xc8, 0xf5, neuraylib::IValue_atomic > mi::base::Interface_declare< 0xbdc84417, 0x3e83, 0x4bab, 0x90, 0xb1, 0x9f, 0x57, 0xed, 0x7b, 0x15, 0x03, neuraylib::IValue_atomic > mi::base::Interface_declare< 0xdc876204, 0x8a97, 0x40e9, 0xb9, 0xb6, 0xca, 0xdc, 0xdd, 0x60, 0x1f, 0xbf, neuraylib::IValue_atomic >

Public Types

enum  Kind {
 The possible kinds of values. More...
- Public Types inherited from mi::base::Interface_declare< 0xbf837f4a, 0x9034, 0x4f32, 0xaf, 0x5c, 0x75, 0xb3, 0x67, 0x64, 0x53, 0x23 >
typedef Interface_declare< id1,
id2, id3, id4, id5, id6, id7,
id8, id9, id10, id11,
 Own type. More...
typedef Uuid_t< id1, id2, id3,
id4, id5, id6, id7, id8, id9,
id10, id11 > 
 Declares the interface ID (IID) of this interface. More...
- Public Types inherited from mi::base::IInterface
typedef Uuid_t< 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 > IID
 Declares the interface ID (IID) of this interface. More...

Public Member Functions

virtual Kind get_kind () const =0
 Returns the kind of the value. More...
virtual const ITypeget_type () const =0
 Returns the type of this value. More...
template<class T >
const T * get_type () const
 Returns the type of this value. More...

Additional Inherited Members

- Static Public Member Functions inherited from mi::base::Interface_declare< 0xbf837f4a, 0x9034, 0x4f32, 0xaf, 0x5c, 0x75, 0xb3, 0x67, 0x64, 0x53, 0x23 >
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

The interface to MDL values.

Values can be created using the value factory mi::neuraylib::IValue_factory.

Member Enumeration Documentation

The possible kinds of values.


A boolean value. See mi::neuraylib::IValue_bool.


An integer value. See mi::neuraylib::IValue_int.


An enum value. See mi::neuraylib::IValue_enum.


A float value. See mi::neuraylib::IValue_float.


A double value. See mi::neuraylib::IValue_double.


A string value. See mi::neuraylib::IValue_string.


A vector value. See mi::neuraylib::IValue_vector.


A matrix value. See mi::neuraylib::IValue_matrix.


A color value. See mi::neuraylib::IValue_color.


An array value. See mi::neuraylib::IValue_array.


A struct value. See mi::neuraylib::IValue_struct.


An invalid distribution function value. See mi::neuraylib::IValue_invalid_df.


A texture value. See mi::neuraylib::IValue_texture.


A light_profile value. See mi::neuraylib::IValue_light_profile.


A bsdf_measurement value. See mi::neuraylib::IValue_bsdf_measurement.

Member Function Documentation

virtual Kind mi::neuraylib::IValue::get_kind ( ) const
pure virtual

Returns the kind of the value.

template<class T >
const T* mi::neuraylib::IValue::get_type ( ) const

Returns the type of this value.