7 #ifndef MI_NEURAYLIB_IMDL_IMPEXP_API_H
8 #define MI_NEURAYLIB_IMDL_IMPEXP_API_H
20 class IBsdf_isotropic_data;
22 class IDeserialized_function_name;
23 class IDeserialized_module_name;
25 class IMdl_execution_context;
26 class IMdle_deserialization_callback;
27 class IMdle_serialization_callback;
29 class ISerialized_function_name;
39 class IMdl_impexp_api :
public
41 mi::base::Interface_declare<0xd8584ade,0xa400,0x486b,0xab,0x29,0x39,0xcd,0x87,0x55,0x14,0x5d>
84 ITransaction* transaction,
const char* argument, IMdl_execution_context* context = 0) = 0;
123 ITransaction* transaction,
124 const char* module_name,
125 const char* module_source,
126 IMdl_execution_context* context = 0) = 0;
161 ITransaction* transaction,
162 const char* module_name,
163 const char* filename,
164 IMdl_execution_context* context = 0) = 0;
197 ITransaction* transaction,
198 const char* module_name,
199 IString* exported_module,
200 IMdl_execution_context* context = 0) = 0;
238 const char* filename,
239 const ICanvas* canvas,
241 bool force_default_gamma =
false)
const = 0;
253 const char* filename,
const ILightprofile* lightprofile)
const = 0;
265 const char* filename,
266 const IBsdf_isotropic_data* reflection,
267 const IBsdf_isotropic_data* transmission)
const = 0;
283 SEARCH_OPTION_FORCE_32_BIT = 0xffffffffU
314 #ifdef MI_NEURAYLIB_DEPRECATED_12_1
342 const char* definition_name,
343 const IType_list* argument_types,
344 const IType* return_type,
345 IMdle_serialization_callback* mdle_callback,
346 IMdl_execution_context* context)
const = 0;
362 ITransaction* transaction,
363 const char* function_name,
364 IMdle_deserialization_callback* mdle_callback,
365 IMdl_execution_context* context)
const = 0;
390 ITransaction* transaction,
391 const char* module_name,
392 const char* function_name_without_module_name,
393 IMdle_deserialization_callback* mdle_callback,
394 IMdl_execution_context* context)
const = 0;
414 const char* module_name,
415 IMdle_deserialization_callback* mdle_callback,
416 IMdl_execution_context* context)
const = 0;
423 virtual IReader*
create_reader(
const IBuffer* buffer)
const = 0;
430 virtual IReader*
create_reader(
const char* filename)
const = 0;
437 virtual IWriter*
create_writer(
const char* filename)
const = 0;
441 virtual const IString* MI_NEURAYLIB_DEPRECATED_METHOD_12_1(uvtile_string_to_marker)(
442 const char* str,
const char* marker)
const = 0;
444 virtual const IString* MI_NEURAYLIB_DEPRECATED_METHOD_12_1(frame_string_to_marker)(
445 const char* str,
Size digits)
const = 0;
454 mi::base::Interface_declare<0x1b22f27d,0xf815,0x495f,0x96,0x71,0x64,0x08,0x5a,0xcc,0x8c,0x0d>
486 mi::base::Interface_declare<0x2bb03f26,0x3a73,0x499d,0x90,0x64,0x19,0x79,0xea,0x40,0xc1,0x49>
505 mi::base::Interface_declare<0xe2136899,0x0011,0x45d1,0xb0,0x45,0xa7,0xbb,0x03,0xa7,0xf4,0x0c>
528 mi::base::Interface_declare<0x5888652a,0x79d6,0x49ba,0x87,0x90,0x0c,0x1b,0x32,0x83,0xf8,0x63>
560 mi::base::Interface_declare<0xe7f636eb,0x8d04,0x4e3b,0x97,0x67,0x3a,0x93,0x1c,0x90,0xc9,0x7e>
581 #endif // MI_NEURAYLIB_IMDL_IMPEXP_API_H