MDL SDK API nvidia_logo_transpbg.gif Up
Miscellaneous Interfaces

Classes

class  mi::neuraylib::ICanvas_base
 Abstract interface for a canvas (base class). More...
 
class  mi::neuraylib::ICanvas
 Abstract interface for a canvas represented by a rectangular array of tiles. More...
 
class  mi::neuraylib::IImage_api
 This interface provides various utilities related to canvases and buffers. More...
 
class  mi::neuraylib::IImpexp_base
 Abstract base interface common for importers and exporters. More...
 
class  mi::neuraylib::IReader
 A reader supports binary block reads and string-oriented line reads that zero-terminate the result. More...
 
class  mi::neuraylib::IReader_writer_base
 Base interface for readers and writers. More...
 
class  mi::neuraylib::IStream_position
 Represents the position in a data stream. More...
 
class  mi::neuraylib::IWriter
 A writer supports binary block writes and string-oriented line writes that accept a zero-terminated string as argument. More...
 

Enumerations

enum  mi::neuraylib::Impexp_priority {
  mi::neuraylib::IMPEXP_PRIORITY_OVERRIDE = 4 ,
  mi::neuraylib::IMPEXP_PRIORITY_WELL_DEFINED = 3 ,
  mi::neuraylib::IMPEXP_PRIORITY_AMBIGUOUS = 2 ,
  mi::neuraylib::IMPEXP_PRIORITY_GUESS = 1 ,
  IMPEXP_PRIORITY_FORCE_32_BIT = 0xffffffffU
}
 Confidence in capabilities of an importer or exporter. More...
 

Functions

Uint32_2 mi::neuraylib::get_resolution (const ICanvas_base &canvas)
 Convenience function which returns a canvas' resolution in a struct. More...
 
virtual IImpexp_state * mi::neuraylib::IImpexp_base::create_impexp_state (const char *uri, const IImpexp_state *parent_state=0) const =0
 Returns a state suitable for passing it to a recursive import or export call. More...
 
virtual bool mi::neuraylib::IImpexp_base::test_file_type (const char *extension) const =0
 Indicates whether a file name extension is supported. More...
 
virtual Impexp_priority mi::neuraylib::IImpexp_base::get_priority () const =0
 Returns the priority of the importer or exporter. More...
 
virtual const char * mi::neuraylib::IImpexp_base::get_supported_extensions (Uint32 i) const =0
 Returns the i -th supported file name extension. More...
 
virtual const char * mi::neuraylib::IImpexp_base::get_name () const =0
 Returns a concise single-line clear text description of the importer or exporter. More...
 
virtual const char * mi::neuraylib::IImpexp_base::get_author () const =0
 Returns a concise single-line clear text description of the author of this importer or exporter. More...
 
virtual base::Uuid mi::neuraylib::IImpexp_base::get_uuid () const =0
 Returns the unique identifier for the importer or exporter. More...
 
virtual Uint32 mi::neuraylib::IImpexp_base::get_major_version () const =0
 Returns the major version number of the importer or exporter. More...
 
virtual Uint32 mi::neuraylib::IImpexp_base::get_minor_version () const =0
 Returns the minor version number of the importer or exporter. More...
 

Detailed Description

Various utility classes.

Enumeration Type Documentation

 Impexp_priority

Confidence in capabilities of an importer or exporter.

If there is more than one importer or exporter that accepts a certain file format, the importer or exporter with the highest priority is taken. Tie-breaking is unspecified.

See also
mi::neuraylib::IImpexp_base::get_priority()
Enumerator
IMPEXP_PRIORITY_OVERRIDE 

The highest priority, reserved for importers and exporters from user plugins.

IMPEXP_PRIORITY_WELL_DEFINED 

The highest possible priority for importers or exporters in plugins provided in the MDL SDK.

Use only for importers or exporters whose test function cannot fail and whose support for the format is complete.

IMPEXP_PRIORITY_AMBIGUOUS 

The test function might fail, or the format might not be fully supported.

IMPEXP_PRIORITY_GUESS 

The importer or exporter does not have a good way of detecting the format or the support is very preliminary or incomplete.

Function Documentation

 create_impexp_state()

virtual IImpexp_state * mi::neuraylib::IImpexp_base::create_impexp_state ( const char *  uri,
const IImpexp_state *  parent_state = 0 
) const
pure virtual

Returns a state suitable for passing it to a recursive import or export call.

The parameters should be used to initialize the corresponding properties of the state. The initial line number should be set to 1.

Parameters
uriThe URI of the associated file, or NULL if there is no associated file, e.g., for string-based import/export operations.
parent_stateThe state of the parent importer or exporter. The parent importer or exporter is the one that called the current importer or exporter.

 get_author()

virtual const char * mi::neuraylib::IImpexp_base::get_author ( ) const
pure virtual

Returns a concise single-line clear text description of the author of this importer or exporter.

This description may be used to support user interaction, such as in command-line help or selection boxes of graphical user interfaces. This method must return a valid string.

This description is also used in the importer or exporter selection algorithm, which selects among importers and exporters of the same name and same author the one that has the highest version number.

 get_major_version()

virtual Uint32 mi::neuraylib::IImpexp_base::get_major_version ( ) const
pure virtual

Returns the major version number of the importer or exporter.

If you register multiple importers or exporters with equal name and author, the importer or exporter with the higher version number will be taken. A version number is higher if the version number is higher, or if it is equal and the minor version number is higher major (lexicographic order).

 get_minor_version()

virtual Uint32 mi::neuraylib::IImpexp_base::get_minor_version ( ) const
pure virtual

Returns the minor version number of the importer or exporter.

If you register multiple importers or exporters with equal name and author, the importer or exporter with the higher version number will be taken. A version number is higher if the version number is higher, or if it is equal and the minor version number is higher major (lexicographic order).

 get_name()

virtual const char * mi::neuraylib::IImpexp_base::get_name ( ) const
pure virtual

Returns a concise single-line clear text description of the importer or exporter.

The description should name, besides maybe a product or brand name, the supported file format and, if applicable, the major file type version or versions that are supported. If a file format differs sufficiently from version to version, you may as well register different importers or exporters for each version.

This description may be used to support user interaction, such as in command-line help or selection boxes of graphical user interfaces. This method must return a valid string. This description is also used in the importer or exporter selection algorithm, which selects among importers and exporters of the same name and same author the one that has the highest version number.

 get_priority()

virtual Impexp_priority mi::neuraylib::IImpexp_base::get_priority ( ) const
pure virtual

Returns the priority of the importer or exporter.

The priority expresses the confidence of the importer or exporter that its test_file_type() method can identify the file and that the file format is fully supported.

 get_resolution()

Uint32_2 mi::neuraylib::get_resolution ( const ICanvas_base canvas)
inline

Convenience function which returns a canvas' resolution in a struct.

 get_supported_extensions()

virtual const char * mi::neuraylib::IImpexp_base::get_supported_extensions ( Uint32  i) const
pure virtual

Returns the i -th supported file name extension.

Returns
The file name extension including the separating dot, or NULL if i is out of range.

 get_uuid()

virtual base::Uuid mi::neuraylib::IImpexp_base::get_uuid ( ) const
pure virtual

Returns the unique identifier for the importer or exporter.

You can register only one importer or exporter for a particular UUID. If you wish to support installations with multiple versions of your importer or exporter, you have to change the UUID for each minor and major version number change.

 test_file_type()

virtual bool mi::neuraylib::IImpexp_base::test_file_type ( const char *  extension) const
pure virtual

Indicates whether a file name extension is supported.

Returns true if the importer or exporter can handle the file type determined by the file name extension. The extension is defined as the part of the file name after and including the first dot, for example, ".mi".