imdl_configuration.h File Reference
Description
API component for MDL related settings.
Code Example
imdl_configuration.h
/***************************************************************************************************
* Copyright 2024 NVIDIA Corporation. All rights reserved.
**************************************************************************************************/
#ifndef MI_NEURAYLIB_IMDL_CONFIGURATION_H
#define MI_NEURAYLIB_IMDL_CONFIGURATION_H
#include <mi/base/interface_declare.h>
#include <mi/neuraylib/itype.h>
#include <mi/neuraylib/version.h>
namespace mi {
class IString;
namespace base { class ILogger; }
namespace neuraylib {
class IMdl_entity_resolver;
class IMdl_configuration : public
mi::base::Interface_declare<0x2657ec0b,0x8a40,0x46c5,0xa8,0x3f,0x2b,0xb5,0x72,0xa0,0x8b,0x9c>
{
public:
virtual Sint32
add_mdl_path( const char* path) = 0;
virtual Sint32
remove_mdl_path( const char* path) = 0;
virtual void clear_mdl_paths() = 0;
virtual Size
get_mdl_paths_length() const = 0;
virtual const IString* get_mdl_path( Size index) const = 0;
virtual Size
get_mdl_system_paths_length() const = 0;
virtual const char* get_mdl_system_path( Size index) const = 0;
inline void add_mdl_system_paths()
{
for( mi::Size i = 0, n = get_mdl_system_paths_length(); i < n; ++i)
add_mdl_path( get_mdl_system_path( i));
}
virtual Size
get_mdl_user_paths_length() const = 0;
virtual const char* get_mdl_user_path( Size index) const = 0;
inline void add_mdl_user_paths()
{
for( mi::Size i = 0, n = get_mdl_user_paths_length(); i < n; ++i)
add_mdl_path( get_mdl_user_path( i));
}
virtual Sint32
add_resource_path( const char* path) = 0;
virtual Sint32
remove_resource_path( const char* path) = 0;
virtual void clear_resource_paths() = 0;
virtual Size
get_resource_paths_length() const = 0;
virtual const IString* get_resource_path( Size index) const = 0;
virtual Sint32
set_implicit_cast_enabled( bool value) = 0;
virtual bool get_implicit_cast_enabled() const = 0;
// is no guarantee that the name of a particular let expression is exposed.
virtual Sint32
set_expose_names_of_let_expressions( bool value) = 0;
virtual bool get_expose_names_of_let_expressions() const = 0;
virtual Sint32
set_simple_glossy_bsdf_legacy_enabled( bool value) = 0;
virtual bool get_simple_glossy_bsdf_legacy_enabled() const = 0;
virtual IMdl_entity_resolver* get_entity_resolver() const = 0;
virtual void set_entity_resolver( IMdl_entity_resolver* resolver) = 0;
virtual void MI_NEURAYLIB_DEPRECATED_METHOD_14_1(set_logger)( base::ILogger* logger) = 0;
virtual base::ILogger* MI_NEURAYLIB_DEPRECATED_METHOD_14_1(get_logger)() = 0;
virtual Sint32
set_material_ior_frequency( IType::Modifier frequency_qualifier) = 0;
virtual IType::Modifier
get_material_ior_frequency() const = 0;
};
// end group mi_neuray_configuration
} // namespace neuraylib
} // namespace mi
#endif // MI_NEURAYLIB_IMDL_CONFIGURATION_H
Namespaces
- namespace
- Common namespace for APIs of NVIDIA Advanced Rendering Center GmbH. More...
- namespace
- Namespace for the Base API. More...
- namespace
- Namespace for the neuray API. More...
Classes
- class
- This interface can be used to query and change the MDL configuration. More...