NVIDIA Iray API Home  Up
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
iimpexp_base.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_IIMPEXP_BASE_H
9 #define MI_NEURAYLIB_IIMPEXP_BASE_H
10 
12 #include <mi/neuraylib/version.h>
13 
14 namespace mi {
15 
16 namespace neuraylib {
17 
18 class IImpexp_state;
19 
24 enum Impexp_priority
31 {
44  // Undocumented, for alignment only
45  IMPEXP_PRIORITY_FORCE_32_BIT = 0xffffffffU
46 };
47 
48 mi_static_assert( sizeof( Impexp_priority) == sizeof( Uint32));
49 
56 class IImpexp_base :
57  public base::Interface_declare<0xf14bab60,0x91d8,0x4a78,0xaa,0xc4,0x6d,0x14,0x02,0xb1,0x97,0x47>
58 {
59 public:
70  const char* uri,
71  const IImpexp_state* parent_state = 0) const = 0;
72 
85  virtual bool test_file_type( const char* extension) const = 0;
86 
91  virtual Impexp_priority get_priority() const = 0;
92 
97  virtual const char* get_supported_extensions( Uint32 i) const = 0;
98 
111  virtual const char* get_name() const = 0;
112 
122  virtual const char* get_author() const = 0;
123 
129  virtual base::Uuid get_uuid() const = 0;
130 
137  virtual Uint32 get_major_version() const = 0;
138 
145  virtual Uint32 get_minor_version() const = 0;
146 };
147  // end group mi_neuray_impexp
149 
150 } // namespace neuraylib
151 
152 #ifdef MI_NEURAYLIB_DEPRECATED_NAMESPACE_MI_TRANSITION
156 using neuraylib::IMPEXP_PRIORITY_FORCE_32_BIT;
161 #endif // MI_NEURAYLIB_DEPRECATED_NAMESPACE_MI_TRANSITION
162 
163 } // namespace mi
164 
165 #endif // MI_NEURAYLIB_IIMPEXP_BASE_H