MDL SDK API nvidia_logo_transpbg.gif Up
Class Hierarchy

Go to the graphical class hierarchy

This inheritance list is sorted roughly, but not completely, alphabetically:
[detail level 123456789]
 mi::neuraylib::Annotation_wrapperA wrapper around the interfaces for MDL annotations
 mi::neuraylib::Argument_editorA wrapper around the interface for MDL material instances and function calls
 mi::base::Atom32A 32-bit unsigned counter with atomic arithmetic, increments, and decrements
 mi::math::Bbox<T, DIM>Axis-aligned N-dimensional bounding box class template of fixed dimension
 mi::math::Bbox_struct<T, DIM>Storage class for an axis-aligned N-dimensional bounding box class template of fixed dimension
 mi::base::Lock::BlockUtility class to acquire a lock that is released by the destructor
 mi::base::Recursive_lock::BlockUtility class to acquire a lock that is released by the destructor
 mi::neuraylib::Bsdf_auxiliary_data_baseInput and output structure for BSDF auxiliary calculation data
 mi::neuraylib::Bsdf_evaluate_data_baseInput and output structure for BSDF evaluation data
 mi::neuraylib::Bsdf_pdf_dataInput and output structure for BSDF PDF calculation data
 mi::neuraylib::Bsdf_sample_dataInput and output structure for BSDF sampling data
 mi::mdl::DAG_call::Call_argumentA simple value helper class, a pair of an argument expression and a parameter name
 mi::math::Color_structGeneric storage class template for an RGBA color representation storing four floating points elements
 mi::base::ConditionConditions allow threads to signal an event and to wait for such a signal, respectively
 mi::mdl::DAG_hashA hash value
 mi::mdl::DAG_nodeA node inside the DAG Intermediate Representation
 mi::mdl::IGenerated_code_dag::DAG_node_factoryThe node factory for DAG IR nodes
 mi::neuraylib::Definition_wrapperA wrapper around the interface for MDL function definitions
 mi::mdl::Distiller_optionsOptions class to hold all parameters for algorithm and rule customizations
 mi::neuraylib::Edf_auxiliary_data_baseInput and output structure for EDF auxiliary calculation data
 mi::neuraylib::Edf_evaluate_data_baseInput and output structure for EDF evaluation data
 mi::neuraylib::Edf_pdf_dataInput and output structure for EDF PDF calculation data
 mi::neuraylib::Edf_sample_dataInput and output structure for EDF sampling data
 mi::base::Handle<Interface>Handle class template for interfaces, automatizing the lifetime control via reference counting
 mi::base::Handle< const mi::neuraylib::IAnnotation_block >
 mi::base::Handle< const mi::neuraylib::IFunction_call >
 mi::base::Handle< const mi::neuraylib::IFunction_definition >
 mi::base::Handle< mi::base::ILogger >
 mi::base::Handle< mi::neuraylib::Bsdf_buffer >
 mi::base::Handle< mi::neuraylib::IExpression_factory >
 mi::base::Handle< mi::neuraylib::IFunction_call >
 mi::base::Handle< mi::neuraylib::IMdl_factory >
 mi::base::Handle< mi::neuraylib::ITransaction >
 mi::base::Handle< mi::neuraylib::IValue_factory >
 mi::mdl::ICall_evaluatorA Helper interface to do renderer specific constant folding
 mi::mdl::IDistiller_plugin_apiThe rule engine handles the transformation of a compiled material by a rule set
 mi::base::IInterfaceThe basic extensible interface
 mi::base::Interface_declare< 0x17, ... >
 mi::base::Interface_declare< 0x22, ... >
 mi::base::Interface_declare< 0x28, ... >
 mi::base::Interface_declare< 0x29c36255, ... >
 mi::base::Interface_declare< 0x3a, ... >
 mi::base::Interface_declare< 0x62, ... >
 mi::base::Interface_declare< 0x94d, ... >
 mi::base::Interface_declare< 0x9dbfd12e, ... >
 mi::base::Interface_declare< 0xce, ... >
 mi::base::Interface_implement<I>Mixin class template for deriving interface implementations
 mi::base::Interface_implement_2<I1, I2>Mixin class template for deriving interface implementations from two interfaces
 mi::base::Interface_implement_singleton<I>Mixin class template for deriving singleton interface implementations, where the reference count is fixed to one
 mi::base::Interface_merger<MAJOR, MINOR>This mixin merges the implementation of one interface with a second interface
 mi::mdl::IResource_taggerAn interface to interrogate tag values for resource values
 mi::mdl::IRule_matcherThe interface to the generated rule matcher, new version for distiller plugin API
 mi::mdl::IRule_matcher_eventAn interface for reporting rule matcher events
 mi::base::LockNon-recursive lock class
 mi::base::Log_streamAdapts mi::base::ILogger to a standard streaming interface
 mi::math::Matrix_struct<T, ROW, COL>Storage class for a NxM-dimensional matrix class template of fixed dimensions
 mi::math::Matrix_struct<T, 1, 1>Specialization for 1x1-matrix
 mi::math::Matrix_struct<T, 1, 2>Specialization for 1x2-matrix
 mi::math::Matrix_struct<T, 1, 3>Specialization for 1x3-matrix
 mi::math::Matrix_struct<T, 1, 4>Specialization for 1x4-matrix
 mi::math::Matrix_struct<T, 2, 1>Specialization for 2x1-matrix
 mi::math::Matrix_struct<T, 2, 2>Specialization for 2x2-matrix
 mi::math::Matrix_struct<T, 2, 3>Specialization for 2x3-matrix
 mi::math::Matrix_struct<T, 2, 4>Specialization for 2x4-matrix
 mi::math::Matrix_struct<T, 3, 1>Specialization for 3x1-matrix
 mi::math::Matrix_struct<T, 3, 2>Specialization for 3x2-matrix
 mi::math::Matrix_struct<T, 3, 3>Specialization for 3x3-matrix
 mi::math::Matrix_struct<T, 3, 4>Specialization for 3x4-matrix
 mi::math::Matrix_struct<T, 4, 1>Specialization for 4x1-matrix
 mi::math::Matrix_struct<T, 4, 2>Specialization for 4x2-matrix
 mi::math::Matrix_struct<T, 4, 3>Specialization for 4x3-matrix
 mi::math::Matrix_struct<T, 4, 4>Specialization for 4x4-matrix
 mi::base::Message_detailsStructured details to log messages
 mi::base::numeric_traits_base<T>Base class for the helper class to deduce properties of numeric types defined in this API
 mi::base::numeric_traits_base<Float32>
 mi::base::numeric_traits_base<Float64>
 mi::base::numeric_traits_base<Sint16>
 mi::base::numeric_traits_base<Sint32>
 mi::base::numeric_traits_base<Sint64>
 mi::base::numeric_traits_base<Sint8>
 mi::base::numeric_traits_base<Uint16>
 mi::base::numeric_traits_base<Uint32>
 mi::base::numeric_traits_base<Uint64>
 mi::base::numeric_traits_base<Uint8>
 mi::math::functor::Operator_and_andFunctor for the logical and operator, &&
 mi::math::functor::Operator_divideFunctor for the division operator, /
 mi::math::functor::Operator_equal_equalFunctor for the equality comparison operator, ==
 mi::math::functor::Operator_greaterFunctor for the greater-than comparison operator, >
 mi::math::functor::Operator_greater_equalFunctor for the greater-than-or-equal comparison operator, >=
 mi::math::functor::Operator_lessFunctor for the less-than comparison operator, <
 mi::math::functor::Operator_less_equalFunctor for the less-than-or-equal comparison operator, <=
 mi::math::functor::Operator_minusFunctor for the minus operator, -, unary and binary
 mi::math::functor::Operator_multiplyFunctor for the multiplication operator, *
 mi::math::functor::Operator_notFunctor for the logical not operator, !
 mi::math::functor::Operator_not_equalFunctor for the inequality comparison operator, !=
 mi::math::functor::Operator_or_orFunctor for the logical or operator, ||
 mi::math::functor::Operator_plusFunctor for the plus operator, +
 mi::math::functor::Operator_post_decrFunctor for the post-decrement operator, --
 mi::math::functor::Operator_post_incrFunctor for the post-increment operator, ++
 mi::math::functor::Operator_pre_decrFunctor for the pre-decrement operator, --
 mi::math::functor::Operator_pre_incrFunctor for the pre-increment operator, ++
 mi::math::functor::Operator_xorFunctor for the xor operator, ^
 mi::base::PluginThe abstract base class for plugins
 mi::base::Std_allocator<T>::rebind<T1>Rebind helper struct to define a new class instance of this allocator template instantiated for the new value type T1
 mi::base::Recursive_lockRecursive lock class
 mi::neuraylib::Resource_dataThe data structure providing access to resources for generated code
 mi::neuraylib::Shading_state_environmentThe MDL environment state structure inside the MDL SDK is a representation of the renderer state in the context of an environment lookup as defined in section 19 "Renderer state" in the MDL specification
 mi::neuraylib::Shading_state_material_impl<with_derivatives>The MDL material state structure inside the MDL SDK is a representation of the renderer state as defined in section 19 "Renderer state" in the MDL specification
 mi::math::Spectrum_structGeneric storage class template for a Spectrum representation storing three floating point elements
 mi::base::Std_allocator<T>An adaptor class template that implements a standard STL allocator
 mi::mdl::IDistiller_plugin_api::strcmp_string_less== Node attributes =============================================================
 mi::neuraylib::Target_function_descriptionDescription of target function
 mi::neuraylib::Target_value_layout_stateStructure representing the state during traversal of the nested layout
 mi::neuraylib::tct_deriv<T>A template struct with derivatives
 mi::neuraylib::tct_traits<with_derivatives>Helper traits struct to switch between derivative and non-derivative types
 mi::neuraylib::Texture_handler_baseThe texture handler structure that is passed to the texturing functions
 mi::neuraylib::Texture_handler_deriv_baseThe texture handler structure that is passed to the texturing functions with derivative support
 mi::neuraylib::Texture_handler_vtable_impl<with_derivatives>The runtime for bitmap texture access for the generated target code can optionally be implemented in form of a vtable as specified by this structure
 mi::Type_traits<I>Type traits relating interfaces, corresponding primitive types, and their type names
 mi::base::UuidA 128 bit representation of a universally unique identifier (UUID or GUID)
 mi::base::Uuid_t< id1, ... >Class template for a compile-time representation of universally unique identifiers (UUIDs or GUIDs)
 mi::math::Vector_struct<T, DIM>Generic storage class template for math vector representations storing DIM elements of type T
 mi::math::Vector_struct<T, 1>Specialization for dimension 1 to create x member
 mi::math::Vector_struct<T, 2>Specialization for dimension 2 to create x and y member
 mi::math::Vector_struct<T, 3>Specialization for dimension 3 to create x, y, and z members
 mi::math::Vector_struct<T, 4>Specialization for dimension 4 to create x, y, z, and w members