NVIDIA Iray API Home  Up
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
mi::neuraylib::IPlugin_configuration Class Referenceabstract

This interface is used to load plugins and to query information about loaded plugins. More...

Inheritance diagram for mi::neuraylib::IPlugin_configuration:
Inheritance graph
[legend]

Public Member Functions

virtual Sint32  load_plugin_library (const char *path)=0
  Loads a plugin library. More...
 
virtual Sint32  load_plugins_from_directory (const char *path)=0
  Loads all plugins from a given directory. More...
 
virtual Size  get_plugin_length () const =0
  Returns the number of loaded plugins. More...
 
virtual IPlugin_descriptor get_plugin_descriptor (Size index) const =0
  Returns a descriptor for the index -th loaded plugin. More...
 

Additional Inherited Members

- Public Types inherited from mi::base::Interface_declare< 0x11285c46, 0x9791, 0x498d, 0xbd, 0xfe, 0x8f, 0x51, 0x84, 0x81, 0x98, 0xd4 >
typedef Interface_declare< id1,
id2, id3, id4, id5, id6, id7,
id8, id9, id10, id11,
IInterface
Self
  Own type. More...
 
typedef Uuid_t< id1, id2, id3,
id4, id5, id6, id7, id8, id9,
id10, id11 > 
IID
  Declares the interface ID (IID) of this interface. More...
 
- Static Public Member Functions inherited from mi::base::Interface_declare< 0x11285c46, 0x9791, 0x498d, 0xbd, 0xfe, 0x8f, 0x51, 0x84, 0x81, 0x98, 0xd4 >
static bool  compare_iid (const Uuid &iid)
  Compares the interface ID iid against the interface ID of this interface and of its ancestors. More...
 

Detailed Description

This interface is used to load plugins and to query information about loaded plugins.

Member Function Documentation

virtual IPlugin_descriptor* mi::neuraylib::IPlugin_configuration::get_plugin_descriptor ( Size  index) const
pure virtual

Returns a descriptor for the index -th loaded plugin.

Returns
A descriptor for the index -th loaded plugin, or NULL in case of failure.
virtual Size mi::neuraylib::IPlugin_configuration::get_plugin_length ( ) const
pure virtual

Returns the number of loaded plugins.

Returns
The number of loaded plugins.
virtual Sint32 mi::neuraylib::IPlugin_configuration::load_plugin_library ( const char *  path)
pure virtual

Loads a plugin library.

This function loads the specified shared library, enumerates all plugin classes in the specified shared library, and adds them to the system.

This function can only be called before Iray has been started.

Parameters
path The path of the shared library to be loaded. This shared library needs to be a valid plugin for Iray.
Returns
0, in case of success, -1 in case of failure.
virtual Sint32 mi::neuraylib::IPlugin_configuration::load_plugins_from_directory ( const char *  path)
pure virtual

Loads all plugins from a given directory.

Enumerates all plugins in the given directory in alphabetic order and calls load_plugin_library() for each of them in turn. On Windows, all files with the extension .dll are considered, while on Linux and MacOS X all files with the extension .so are considered.

Parameters
path The path of the directory.
Returns
0, in case of success, -1 in case of failure.