This interface represents an MDL module. More...
Public Member Functions | |
virtual const char * | get_filename () const =0 |
Returns the name of the MDL source file from which this module was created. More... | |
virtual const char * | get_mdl_name () const =0 |
Returns the MDL name of the module. More... | |
virtual Size | get_import_count () const =0 |
Returns the number of modules imported by the module. More... | |
virtual const char * | get_import (Size index) const =0 |
Returns the DB name of the imported module at index . More... | |
virtual const IType_list * | get_types () const =0 |
Returns the types exported by this module. More... | |
virtual const IValue_list * | get_constants () const =0 |
Returns the constants exported by this module. More... | |
virtual Size | get_function_count () const =0 |
Returns the number of function definitions exported by the module. More... | |
virtual const char * | get_function (Size index) const =0 |
Returns the DB name of the function definition at index . More... | |
virtual Size | get_material_count () const =0 |
Returns the number of material definitions exported by the module. More... | |
virtual const char * | get_material (Size index) const =0 |
Returns the DB name of the material definition at index . More... | |
virtual Size | get_resources_count () const =0 |
Returns the number of resources defined in the module. More... | |
virtual const IType_resource * | get_resource_type (Size index) const =0 |
Returns the type of the resource at index . More... | |
virtual const char * | get_resource_mdl_file_path (Size index) const =0 |
Returns the absolute MDL file path of the resource at index . More... | |
virtual const char * | get_resource_name (Size index) const =0 |
Returns the database name of the resource at index . More... | |
virtual const IAnnotation_block * | get_annotations () const =0 |
Returns the annotations of the module, or NULL if there are no such annotations. More... | |
virtual bool | is_standard_module () const =0 |
Indicates whether this module is a standard module. More... | |
virtual const IArray * | get_function_overloads (const char *name, const IExpression_list *arguments=0) const =0 |
Returns overloads of a function definition. More... | |
virtual const IArray * | get_function_overloads (const char *name, const char *param_sig) const =0 |
Returns overloads of a function definition. More... | |
Additional Inherited Members | |
![]() | |
typedef Interface_declare< id1, id2, id3, id4, id5, id6, id7, id8, id9, id10, id11, neuraylib::IScene_element > | 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 bool | compare_iid (const Uuid &iid) |
Compares the interface ID iid against the interface ID of this interface and of its ancestors. More... | |
This interface represents an MDL module.
|
pure virtual |
Returns the annotations of the module, or NULL
if there are no such annotations.
|
pure virtual |
Returns the constants exported by this module.
|
pure virtual |
Returns the name of the MDL source file from which this module was created.
NULL
if no such file exists.
|
pure virtual |
Returns the DB name of the function definition at index
.
index | The index of the function definition. |
NULL
for valid indices if the corresponding function definition has already been removed from the DB.
|
pure virtual |
Returns the number of function definitions exported by the module.
|
pure virtual |
Returns overloads of a function definition.
The method returns overloads of function definition of this module, either all overloads or just the overloads matching a given set of arguments.
name | The DB name of a function definition from this module. Due to the nature of this method the function signature (starting with the left parenthesis) is irrelevant and thus optional. |
arguments | Optional arguments to select a specific overload. If present, the method returns only the overloads of name whose signature matches the provided arguments, i.e., a call to mi::neuraylib::IFunction_definition::create_function_call() with these arguments would succeed. |
NULL
if name
is invalid.
|
pure virtual |
Returns overloads of a function definition.
The method returns the best-matching overloads of a function definition of this module, given a list of positional parameter types.
name | The DB name of a function definition from this module without signature. |
param_sig | A parameter signature as a comma separated string of MDL type names. The method returns only the overloads of name whose signature matches the provided positional parameter types. In addition, it returns only the best-matching overloads according to the MDL rules for overload resolution. Optionally, the parameter signature can be enclosed in parentheses. |
NULL
if name
is invalid.
|
pure virtual |
Returns the DB name of the imported module at index
.
index | The index of the imported module. |
|
pure virtual |
Returns the number of modules imported by the module.
|
pure virtual |
Returns the DB name of the material definition at index
.
index | The index of the material definition. |
NULL
for valid indices if the corresponding material definition has already been removed from the DB.
|
pure virtual |
Returns the number of material definitions exported by the module.
|
pure virtual |
Returns the MDL name of the module.
|
pure virtual |
Returns the absolute MDL file path of the resource at index
.
index | The index of the resource. |
|
pure virtual |
Returns the database name of the resource at index
.
index | The index of the resource. |
NULL
if this resource could not be resolved.
|
pure virtual |
Returns the type of the resource at index
.
index | The index of the resource. |
|
pure virtual |
Returns the number of resources defined in the module.
Resources defined in a module that is imported by this module are not included.
|
pure virtual |
Returns the types exported by this module.
|
pure virtual |
Indicates whether this module is a standard module.
Examples for standard modules are "limits"
, "anno"
, "state"
, "math"
, "tex"
, "noise"
, and "df"
.