NVIDIA Iray API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
iplugin_configuration.h
Go to the documentation of this file.
1 //*****************************************************************************
2 // Copyright 1986, 2014 NVIDIA Corporation. All rights reserved.
3 //*****************************************************************************
6 //*****************************************************************************
7 
8 #ifndef MI_NEURAYLIB_IPLUGIN_CONFIGURATION_H
9 #define MI_NEURAYLIB_IPLUGIN_CONFIGURATION_H
10 
11 #include <mi/base/plugin.h>
13 
14 namespace mi {
15 
16 namespace neuraylib {
17 
22 class IPlugin_descriptor : public
24  mi::base::Interface_declare<0x1708ae5a,0xa49e,0x43c4,0xa3,0x94,0x00,0x38,0x4c,0x59,0xe8,0x67>
25 {
26 public:
33  virtual base::Plugin* get_plugin() const = 0;
34 
38  virtual const char* get_plugin_library_path() const = 0;
39 };
40 
42 class IPlugin_configuration : public
43  mi::base::Interface_declare<0x11285c46,0x9791,0x498d,0xbd,0xfe,0x8f,0x51,0x84,0x81,0x98,0xd4>
44 {
45 public:
56  virtual Sint32 load_plugin_library(const char* path) = 0;
57 
67  virtual Sint32 load_plugins_from_directory(const char* path) = 0;
68 
72  virtual Size get_plugin_length() const = 0;
73 
78  virtual IPlugin_descriptor* get_plugin_descriptor(Size index) const = 0;
79 };
80 
81  // end group mi_neuray_configuration
83 
84 } // namespace neuraylib
85 
86 } // namespace mi
87 
88 #endif // MI_NEURAYLIB_IPLUGIN_CONFIGURATION_H