This interface is used to extend the MDL SDK API. More...
#include <iextension_api.h>

Public Member Functions | |
User classes | |
| virtual Sint32 | register_class (const char *class_name, base::Uuid uuid, IUser_class_factory *factory)=0 |
| Not supported. More... | |
| template<class T> | |
| Sint32 | register_class (const char *class_name) |
| Not supported. More... | |
| virtual Sint32 | unregister_class (const char *class_name, base::Uuid uuid)=0 |
| Not supported. More... | |
| template<class T> | |
| Sint32 | unregister_class (const char *class_name) |
| Not supported. More... | |
Importers and exporters | |
| virtual Sint32 | register_importer (IImporter *importer)=0 |
| Not supported. More... | |
| virtual Sint32 | register_exporter (IExporter *exporter)=0 |
| Not supported. More... | |
| virtual Sint32 | unregister_importer (IImporter *importer)=0 |
| Not supported. More... | |
| virtual Sint32 | unregister_exporter (IExporter *exporter)=0 |
| Not supported. More... | |
Structure declarations | |
| virtual Sint32 | register_structure_decl (const char *structure_name, const IStructure_decl *decl)=0 |
| Registers a structure declaration with the MDL SDK API. More... | |
| virtual Sint32 | unregister_structure_decl (const char *structure_name)=0 |
| Unregisters a structure declaration with the MDL SDK API. More... | |
Enum declarations | |
| virtual Sint32 | register_enum_decl (const char *enum_name, const IEnum_decl *decl)=0 |
| Registers an enum declaration with the MDL SDK API. More... | |
| virtual Sint32 | unregister_enum_decl (const char *enum_name)=0 |
| Unregisters an enum declaration with the MDL SDK API. More... | |
Public Member Functions inherited from mi::base::IInterface | |
| virtual Uint32 | retain () const =0 |
| Increments the reference count. More... | |
| virtual Uint32 | release () const =0 |
| Decrements the reference count. More... | |
| virtual const IInterface * | get_interface (const Uuid &interface_id) const =0 |
| Acquires a const interface from another. More... | |
| template<class T> | |
| const T * | get_interface () const |
| Acquires a const interface from another. More... | |
| virtual IInterface * | get_interface (const Uuid &interface_id)=0 |
| Acquires a mutable interface from another. More... | |
| template<class T> | |
| T * | get_interface () |
| Acquires a mutable interface from another. More... | |
| virtual Uuid | get_iid () const =0 |
| Returns the interface ID of the most derived interface. More... | |
Additional Inherited Members | |
Public Types inherited from mi::base::Interface_declare< 0xdf2dd31e, ... > | |
| using | Self = Interface_declare< id1, ... > |
| Own type. More... | |
| using | IID = Uuid_t< id1, ... > |
| Declares the interface ID (IID) of this interface. More... | |
Public Types inherited from mi::base::IInterface | |
| using | IID = Uuid_t<0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0> |
| Declares the interface ID (IID) of this interface. More... | |
Static Public Member Functions inherited from mi::base::Interface_declare< 0xdf2dd31e, ... > | |
| static bool | compare_iid (const Uuid &iid) |
Compares the interface ID iid against the interface ID of this interface and of its ancestors. More... | |
Static Public Member Functions inherited from mi::base::IInterface | |
| static bool | compare_iid (const Uuid &iid) |
Compares the interface ID iid against the interface ID of this interface. More... | |
This interface is used to extend the MDL SDK API.
It offers methods to register enum and structure declarations.
| Sint32 mi::neuraylib::IExtension_api::register_class | ( | const char * | class_name | ) |
Not supported.
|
pure virtual |
Not supported.
|
pure virtual |
Registers an enum declaration with the MDL SDK API.
| enum_name | The name to be used to refer to this enum declaration. The name must consist only of alphanumeric characters or underscores, must not start with an underscore, and must not be the empty string. |
| decl | The enum declaration. The declaration is internally cloned such that subsequent changes have no effect on the registered declaration. |
enum_name.nullptr).
|
pure virtual |
Not supported.
|
pure virtual |
Not supported.
|
pure virtual |
Registers a structure declaration with the MDL SDK API.
Note that the type names of the structure members are not checked for validity here (except for cycles). Thus, it is possible that this methods succeeds, but creating an instance of the type structure_name will fail.
| structure_name | The name to be used to refer to this structure declaration. The name must consist only of alphanumeric characters or underscores, must not start with an underscore, and must not be the empty string. |
| decl | The structure declaration. The declaration is internally cloned such that subsequent changes have no effect on the registered declaration. |
structure_name.nullptr).structure_name would cause an infinite cycle of nested structure types.
|
inline |
Not supported.
|
pure virtual |
Not supported.
|
pure virtual |
Unregisters an enum declaration with the MDL SDK API.
| enum_name | The name of the enum declaration to be unregistered. |
enum_name.nullptr).
|
pure virtual |
Not supported.
|
pure virtual |
Not supported.
|
pure virtual |
Unregisters a structure declaration with the MDL SDK API.
| structure_name | The name of the structure declaration to be unregistered. |
structure_name.nullptr).