7#ifndef MI_NEURAYLIB_IIMPORT_API_H
8#define MI_NEURAYLIB_IIMPORT_API_H
20class IBsdf_isotropic_data;
99 mi::base::Interface_declare<0x13fc124d,0x2525,0x473f,0xb1,0x9e,0xef,0x63,0x80,0x5a,0x2c,0x68>
164 const IMap* importer_options = 0,
220 const char* file_extension,
221 const IMap* importer_options = 0,
This interface represents maps, i.e., a key-value based data structure.
Definition: imap.h:41
A simple string class.
Definition: istring.h:22
Mixin class template for deriving new interface declarations.
Definition: interface_declare.h:43
Abstract interface for isotropic BSDF data.
Definition: ibsdf_isotropic_data.h:44
Abstract interface for a simple buffer with binary data.
Definition: ibuffer.h:25
Abstract interface for a canvas represented by a rectangular array of tiles.
Definition: icanvas.h:85
This interface represents states that are passed to recursive calls of importers and exporters.
Definition: iimpexp_state.h:36
This interface is used to import files.
Definition: iimport_api.h:100
virtual const IString * convert_filename_to_uri(const char *filename) const =0
Converts a filename into a URI.
virtual const IString * get_absolute_path(ITransaction *transaction, const char *path) const =0
Returns the absolute path corresponding to the given path.
virtual Size get_importer_length() const =0
Returns the number of registered importers.
virtual const IImport_result * import_elements(ITransaction *transaction, const char *uri, const IMap *importer_options=0, const IImpexp_state *parent_state=0) const =0
Imports scene elements.
virtual ICanvas * import_canvas(const char *uri) const =0
Imports a canvas from a file on disk.
virtual const IImport_result * import_elements_from_string(ITransaction *transaction, const char *data, const char *file_extension, const IMap *importer_options=0, const IImpexp_state *parent_state=0) const =0
Imports scene data from a string into the database.
virtual Sint32 import_bsdf_data(const char *uri, IBsdf_isotropic_data **reflection, IBsdf_isotropic_data **transmission) const =0
Imports BSDF data from a file on disk.
virtual IReader * create_reader(const IBuffer *buffer) const =0
Creates a random-access reader for a given buffer.
virtual IReader * get_reader(const char *uri) const =0
Returns a random-access reader that can be used to import the given resource.
virtual const IImporter * get_importer(Size index) const =0
Returns a registered importer.
virtual const IString * convert_uri_to_filename(const char *uri) const =0
Converts a URI into a filename.
virtual const IImporter * select_importer_by_uri(const char *uri) const =0
Returns the importer that would be used for a particular resource.
virtual const IString * create_importer_directory(ITransaction *transaction) const =0
Creates a unique directory that can be used by importers for temporary files.
This interface represents the result of an import operation.
Definition: iimport_result.h:44
Abstract interface for importers.
Definition: iimporter.h:32
A reader supports binary block reads and string-oriented line reads that zero-terminate the result.
Definition: ireader.h:27
A transaction provides a consistent view on the database.
Definition: itransaction.h:81
Uint64 Size
Unsigned integral type that is large enough to hold the size of all types.
Definition: types.h:112
signed int Sint32
32-bit signed integer.
Definition: types.h:46
Mixin class template for deriving new interface declarations.
Common namespace for APIs of NVIDIA Advanced Rendering Center GmbH.
Definition: neuraylib.h:179