Material Definition Language API nvidia_logo_transpbg.gif Up
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
imdle_api.h
Go to the documentation of this file.
1 /***************************************************************************************************
2  * Copyright 2020 NVIDIA Corporation. All rights reserved.
3  **************************************************************************************************/
6 
7 #ifndef MI_NEURAYLIB_IMDLE_API_H
8 #define MI_NEURAYLIB_IMDLE_API_H
9 
11 #include <mi/base/enums.h>
12 
13 namespace mi {
14 
15 class IStructure;
16 
17 namespace neuraylib {
18 
19 class IMdl_execution_context;
20 class IReader;
21 class ITransaction;
22 
27 class IMdle_api : public
29  base::Interface_declare<0xda82106c,0x658d,0x449d,0x8e,0x1,0xfb,0x55,0x1,0x61,0x9b,0x97>
30 {
31 public:
32 
80  virtual Sint32 export_mdle(
81  ITransaction* transaction,
82  const char* file_name,
83  const IStructure* mdle_data,
84  IMdl_execution_context* context) const = 0;
85 
97  virtual Sint32 validate_mdle(
98  const char* file_name,
99  IMdl_execution_context* context) const = 0;
100 
112  virtual IReader* get_user_file(
113  const char* mdle_file_name,
114  const char* user_file_name,
115  IMdl_execution_context* context) const = 0;
116 
129  virtual Sint32 compare_mdle(
130  const char* mdle_file_name_a,
131  const char* mdle_file_name_b,
132  IMdl_execution_context* context) const = 0;
133 
145  virtual Sint32 get_hash(
146  const char* mdle_file_name,
147  base::Uuid& hash,
148  IMdl_execution_context* context) const = 0;
149 };
150  // end group mi_neuray_mdl_types
152 
153 } // namespace neuraylib
154 } // namespace mi
155 
156 #endif // MI_NEURAYLIB_IMDLE_API_H