NVIDIA Iray API Home  Up
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
iexporter.h
Go to the documentation of this file.
1 //*****************************************************************************
2 // Copyright 1986, 2016 NVIDIA Corporation. All rights reserved.
3 //*****************************************************************************
6 //*****************************************************************************
7 
8 #ifndef MI_NEURAYLIB_IEXPORTER_H
9 #define MI_NEURAYLIB_IEXPORTER_H
10 
13 #include <mi/neuraylib/version.h>
14 
15 namespace mi {
16 
17 class IArray;
18 class IMap;
19 
20 namespace neuraylib {
21 
22 class IExport_result;
23 class IImpexp_state;
24 class ITransaction;
25 class IWriter;
26 
31 class IExporter :
33  public base::Interface_declare<0x543b5252,0x7c50,0x4998,0xa9,0xf3,0x97,0xa9,0x4e,0x11,0xfd,0x3a,
34  neuraylib::IImpexp_base>
35 {
36 public:
44  virtual bool test_file_type(const char* extension, const IWriter* writer) const = 0;
45 
47 
78  virtual IExport_result* export_scene(
79  ITransaction* transaction,
80  const char* extension,
81  IWriter* writer,
82  const char* rootgroup,
83  const char* caminst,
84  const char* options,
85  const IMap* exporter_options,
86  IImpexp_state* state) const = 0;
87 
116  virtual IExport_result* export_elements(
117  ITransaction* transaction,
118  const char* extension,
119  IWriter* writer,
120  const IArray* elements,
121  const IMap* exporter_options,
122  IImpexp_state* state) const = 0;
123 };
124  // end group mi_neuray_impexp
126 
127 } // namespace neuraylib
128 
129 #ifdef MI_NEURAYLIB_DEPRECATED_NAMESPACE_MI_TRANSITION
130 using neuraylib::IExport_result;
131 using neuraylib::IImpexp_base;
132 using neuraylib::IImpexp_state;
133 using neuraylib::IWriter;
134 #endif // MI_NEURAYLIB_DEPRECATED_NAMESPACE_MI_TRANSITION
135 
136 } // namespace mi
137 
138 #endif // MI_NEURAYLIB_IEXPORTER_H