Material Definition Language API nvidia_logo_transpbg.gif 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:
mi::base::Interface_declare< 0x11285c46, 0x9791, 0x498d, 0xbd, 0xfe, 0x8f, 0x51, 0x84, 0x81, 0x98, 0xd4 > mi::base::IInterface

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 base::IPlugin_descriptorget_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 base::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 the MDL API has been started.

Parameters
pathThe path of the shared library to be loaded. This shared library needs to be a valid plugin for the MDL API.
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. Additionally, on MacOS X all files with extension .dylib are considered.

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