NVIDIA Iray API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
iimport_api.h
Go to the documentation of this file.
1 //*****************************************************************************
2 // Copyright 1986, 2014 NVIDIA Corporation. All rights reserved.
3 //*****************************************************************************
6 //*****************************************************************************
7 
8 #ifndef MI_NEURAYLIB_IIMPORT_API_H
9 #define MI_NEURAYLIB_IIMPORT_API_H
10 
12 
13 namespace mi {
14 
15 class IBsdf_isotropic_data;
16 class IImpexp_state;
17 class IImport_result;
18 class IMap;
19 class IReader;
20 class IString;
21 
22 namespace neuraylib {
23 
24 class ICanvas;
25 class IImporter;
26 class ITransaction;
27 
101 class IImport_api : public
103  mi::base::Interface_declare<0x13fc124d,0x2525,0x473f,0xb1,0x9e,0xef,0x63,0x80,0x5a,0x2c,0x68>
104 {
105 public:
107 
108 
160  virtual const IImport_result* import_elements(
161  ITransaction* transaction,
162  const char* uri,
163  const IMap* importer_options = 0,
164  const IImpexp_state* parent_state = 0) const = 0;
165 
198  virtual const IImport_result* import_elements_from_string(
199  ITransaction* transaction,
200  const char* data,
201  const char* file_extension = 0,
202  const IMap* importer_options = 0,
203  const IImpexp_state* parent_state = 0) const = 0;
204 
213  virtual ICanvas* import_canvas( const char* uri) const = 0;
214 
238  virtual Sint32 import_bsdf_data(
239  const char* uri,
240  IBsdf_isotropic_data** reflection,
241  IBsdf_isotropic_data** transmission) const = 0;
242 
244 
246 
253  virtual Size get_importer_length() const = 0;
254 
262  virtual const IImporter* get_importer( Size index) const = 0;
263 
269  virtual const IImporter* select_importer_by_uri( const char* uri) const = 0;
270 
276  virtual IReader* get_reader( const char* uri) const = 0;
277 
279 
281 
292  virtual const IString* get_absolute_path(
293  ITransaction* transaction, const char* path) const = 0;
294 
303  virtual const IString* create_importer_directory( ITransaction* transaction) const = 0;
304 
345  virtual const IString* convert_filename_to_uri( const char* filename) const = 0;
346 
400  virtual const IString* convert_uri_to_filename( const char* uri) const = 0;
401 
403 };
404  // end group mi_neuray_impexp
406 
407 } // namespace neuraylib
408 
409 } // namespace mi
410 
411 #endif // MI_NEURAYLIB_IIMPORT_API_H