iimpexp_base.h File Reference
Description
Abstract base interface common for importers and exporters.
Code Example
iimpexp_base.h
//*****************************************************************************
// Copyright 1986, 2016 NVIDIA Corporation. All rights reserved.
//*****************************************************************************
//*****************************************************************************
#ifndef MI_NEURAYLIB_IIMPEXP_BASE_H
#define MI_NEURAYLIB_IIMPEXP_BASE_H
#include <mi/base/interface_declare.h>
#include <mi/neuraylib/version.h>
namespace mi {
namespace neuraylib {
class IImpexp_state;
enum Impexp_priority
{
IMPEXP_PRIORITY_OVERRIDE = 4,
IMPEXP_PRIORITY_WELL_DEFINED = 3,
IMPEXP_PRIORITY_AMBIGUOUS = 2,
IMPEXP_PRIORITY_GUESS = 1,
// Undocumented, for alignment only
IMPEXP_PRIORITY_FORCE_32_BIT = 0xffffffffU
};
mi_static_assert( sizeof( Impexp_priority) == sizeof( Uint32));
class IImpexp_base :
public base::Interface_declare<0xf14bab60,0x91d8,0x4a78,0xaa,0xc4,0x6d,0x14,0x02,0xb1,0x97,0x47>
{
public:
virtual IImpexp_state* create_impexp_state(
const char* uri,
const IImpexp_state* parent_state = 0) const = 0;
virtual bool test_file_type( const char* extension) const = 0;
virtual Impexp_priority
get_priority() const = 0;
virtual const char* get_supported_extensions( Uint32 i) const = 0;
virtual const char* get_name() const = 0;
virtual const char* get_author() const = 0;
virtual base::Uuid
get_uuid() const = 0;
virtual Uint32
get_major_version() const = 0;
virtual Uint32
get_minor_version() const = 0;
};
// end group mi_neuray_impexp
} // namespace neuraylib
#ifdef MI_NEURAYLIB_DEPRECATED_NAMESPACE_MI_TRANSITION
using neuraylib::IImpexp_base;
using neuraylib::IImpexp_state;
using neuraylib::IMPEXP_PRIORITY_AMBIGUOUS;
using neuraylib::IMPEXP_PRIORITY_FORCE_32_BIT;
using neuraylib::IMPEXP_PRIORITY_GUESS;
using neuraylib::IMPEXP_PRIORITY_OVERRIDE;
using neuraylib::IMPEXP_PRIORITY_WELL_DEFINED;
using neuraylib::Impexp_priority;
#endif // MI_NEURAYLIB_DEPRECATED_NAMESPACE_MI_TRANSITION
} // namespace mi
#endif // MI_NEURAYLIB_IIMPEXP_BASE_H
Namespaces
- namespace
- Common namespace for APIs of NVIDIA Advanced Rendering Center GmbH. More...
- namespace
- Namespace for the neuray API. More...
Classes
- class
- Abstract base interface common for importers and exporters. More...
Enumerations
- enum {IMPEXP_PRIORITY_OVERRIDE = 4, IMPEXP_PRIORITY_WELL_DEFINED = 3, IMPEXP_PRIORITY_AMBIGUOUS = 2, IMPEXP_PRIORITY_GUESS = 1, IMPEXP_PRIORITY_FORCE_32_BIT = 0xffffffffU }
- Confidence in capabilities of an importer or exporter. More...