A parameter reference expression. More...
#include <iexpression.h>

Public Member Functions | |
| virtual Size | get_index () const =0 |
| Returns the index of the referenced parameter. More... | |
| virtual void | set_index (Size index)=0 |
| Sets the index of the referenced parameter. More... | |
Public Member Functions inherited from mi::neuraylib::IExpression | |
| virtual Kind | get_kind () const =0 |
| Returns the kind of this expression. More... | |
| virtual const IType * | get_type () const =0 |
| Returns the type of this expression. More... | |
| template<class T> | |
| const T * | get_type () const |
| Returns the type of this expression. 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... | |
Static Public Attributes | |
| static const Kind | s_kind = EK_PARAMETER |
| The kind of this subclass. More... | |
Additional Inherited Members | |
Public Types inherited from mi::base::Interface_declare< 0x206c4319, ... > | |
| 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::neuraylib::IExpression | |
| enum | Kind : Uint32 { EK_CONSTANT , EK_CALL , EK_PARAMETER , EK_DIRECT_CALL , EK_TEMPORARY } |
| The possible kinds of expressions. More... | |
Public Types inherited from mi::base::Interface_declare< 0x0f4a7542, ... > | |
| 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< 0x206c4319, ... > | |
| 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::Interface_declare< 0x0f4a7542, ... > | |
| 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... | |
A parameter reference expression.
Parameter reference expressions are used for defaults that reference earlier parameters. For example consider
The default for the parameter c is of type mi::neuraylib::IExpression_parameter. Its index is 1, equal to the parameter index of parameter b.
Parameter reference expressions appear as defaults of material or function definitions. They are expanded during mi::neuraylib::IFunction_definition::create_function_call(), mi::neuraylib::IFunction_call::reset_argument(), and mi::neuraylib::Definition_wrapper::create_instance().
|
pure virtual |
Returns the index of the referenced parameter.
|
pure virtual |
Sets the index of the referenced parameter.
|
static |
The kind of this subclass.