MDL SDK API nvidia_logo_transpbg.gif Up
imdl_module_transformer.h
Go to the documentation of this file.
1/***************************************************************************************************
2 * Copyright 2024 NVIDIA Corporation. All rights reserved.
3 **************************************************************************************************/
6
7#ifndef MI_NEURAYLIB_IMDL_MODULE_TRANSFORMER_H
8#define MI_NEURAYLIB_IMDL_MODULE_TRANSFORMER_H
9
12
13namespace mi {
14
15class IString;
16
17namespace neuraylib {
18
19class IMdl_execution_context;
20
37 mi::base::Interface_declare<0x3501f2ef,0xe7c0,0x492e,0xb2,0xd5,0x73,0xe2,0x33,0xa0,0x77,0x36>
38{
39public:
45
62 const char* include_filter,
63 const char* exclude_filter,
64 IMdl_execution_context* context) = 0;
65
85 const char* include_filter,
86 const char* exclude_filter,
87 IMdl_execution_context* context) = 0;
88
106 const char* include_filter,
107 const char* exclude_filter,
108 IMdl_execution_context* context) = 0;
109
131 const char* include_filter,
132 const char* exclude_filter,
133 IMdl_execution_context* context) = 0;
134
156 const char* include_filter,
157 const char* exclude_filter,
158 bool omit_anno_origin,
159 IMdl_execution_context* context) = 0;
160
187 virtual Sint32 export_module( const char* filename, IMdl_execution_context* context) = 0;
188
214 IString* exported_module, IMdl_execution_context* context) = 0;
215};
216 // end group mi_neuray_mdl_misc
218
219} // namespace neuraylib
220
221} // namespace mi
222
223#endif // MI_NEURAYLIB_IMDL_MODULE_TRANSFORMER_H
A simple string class.
Definition: istring.h:22
Mixin class template for deriving new interface declarations.
Definition: interface_declare.h:43
The execution context can be used to query status information like error and warning messages concern...
Definition: imdl_execution_context.h:131
The module transformer allows to apply certain transformations on an MDL module.
Definition: imdl_module_transformer.h:38
virtual Sint32 use_relative_import_declarations(const char *include_filter, const char *exclude_filter, IMdl_execution_context *context)=0
Changes import declarations to strict relative style.
virtual Sint32 use_absolute_resource_file_paths(const char *include_filter, const char *exclude_filter, IMdl_execution_context *context)=0
Changes resource file paths to absolute style.
virtual Sint32 upgrade_mdl_version(Mdl_version version, IMdl_execution_context *context)=0
Upgrades the MDL version.
virtual Sint32 export_module_to_string(IString *exported_module, IMdl_execution_context *context)=0
Exports the transformed MDL module to string.
virtual Sint32 inline_imported_modules(const char *include_filter, const char *exclude_filter, bool omit_anno_origin, IMdl_execution_context *context)=0
Inline imported modules.
virtual Sint32 export_module(const char *filename, IMdl_execution_context *context)=0
Exports the transformed MDL module to disk.
virtual Sint32 use_absolute_import_declarations(const char *include_filter, const char *exclude_filter, IMdl_execution_context *context)=0
Changes import declarations to absolute style.
virtual Sint32 use_relative_resource_file_paths(const char *include_filter, const char *exclude_filter, IMdl_execution_context *context)=0
Changes resource file paths to relative style.
signed int Sint32
32-bit signed integer.
Definition: types.h:46
Mdl_version
The MDL version.
Definition: iexpression.h:28
Expressions of the MDL type system.
Mixin class template for deriving new interface declarations.
Common namespace for APIs of NVIDIA Advanced Rendering Center GmbH.
Definition: example_derivatives.dox:5