iexport_api.h File Reference
Description
API component for export operations and exporter management.
Code Example
iexport_api.h
/***************************************************************************************************
* Copyright 2024 NVIDIA Corporation. All rights reserved.
**************************************************************************************************/
#ifndef MI_NEURAYLIB_IEXPORT_API_H
#define MI_NEURAYLIB_IEXPORT_API_H
#include <mi/base/interface_declare.h>
#include <mi/neuraylib/version.h>
namespace mi {
class IArray;
class IMap;
class IString;
namespace neuraylib {
class IBsdf_isotropic_data;
class ICanvas;
class IExport_result;
class IExporter;
class IImpexp_state;
class ILightprofile;
class ITransaction;
class IVolume_data;
class IWriter;
class IExport_api : public
mi::base::Interface_declare<0xe254f559,0x4056,0x4166,0x83,0x6a,0x4c,0x00,0x90,0x0a,0xdb,0x22>
{
public:
virtual const IExport_result* export_scene(
ITransaction* transaction,
const char* uri,
const char* rootgroup,
const char* caminst = 0,
const char* options = 0,
const IMap* exporter_options = 0) const = 0;
virtual const IExport_result* export_elements(
ITransaction* transaction,
const char* uri,
const IArray* elements,
const IMap* exporter_options = 0) const = 0;
virtual const IExport_result* export_elements_to_string(
ITransaction* transaction,
const IArray* elements,
const char* file_extension,
IString* result_string,
const IMap* exporter_options = 0) const = 0;
virtual Sint32
export_canvas(
const char* uri,
const ICanvas* canvas,
const IMap* export_options = 0) const = 0;
virtual Sint32
export_lightprofile(
const char* uri, const ILightprofile* lightprofile) const = 0;
virtual Sint32
export_bsdf_data(
const char* uri,
const IBsdf_isotropic_data* reflection,
const IBsdf_isotropic_data* transmission) const = 0;
virtual Sint32
export_volume_data(
const char* uri,
const char* selectors[],
const IVolume_data* data[],
Size count) const = 0;
virtual Size
get_exporter_length() const = 0;
virtual const IExporter* get_exporter( Size index) const = 0;
virtual const IExporter* select_exporter_by_extension( const char* extension) const = 0;
virtual IWriter* get_writer( const char* uri) const = 0;
virtual const IString* convert_filename_to_uri( const char* filename) const = 0;
virtual const IString* convert_uri_to_filename( const char* uri) const = 0;
virtual const IArray* get_export_dependencies(
ITransaction* transaction,
const char* rootgroup,
const char* caminst,
const char* options) const = 0;
virtual const IString* frame_uvtile_marker_to_string(
const char* marker, Size f, Sint32 u, Sint32 v) const = 0;
virtual Sint32 deprecated_export_canvas(
const char* uri,
const ICanvas* canvas,
Uint32 quality,
bool force_default_gamma) const = 0;
#ifdef MI_NEURAYLIB_DEPRECATED_15_0
inline Sint32
export_canvas(
const char* filename,
const ICanvas* canvas,
Uint32 quality,
bool force_default_gamma = false) const
{ return deprecated_export_canvas( filename, canvas, quality, force_default_gamma); }
#endif
};
// end group mi_neuray_impexp
} // namespace neuraylib
} // namespace mi
#endif // MI_NEURAYLIB_IEXPORT_API_H
Namespaces
- namespace
- Common namespace for APIs of NVIDIA Advanced Rendering Center GmbH. More...
- namespace
- Namespace for the neuray API. More...
Classes
- class
- This interface is used to export files. More...