The interface to MDL expressions. More...
#include <iexpression.h>
Public Types | |
enum | Kind { EK_CONSTANT , EK_CALL , EK_PARAMETER , EK_DIRECT_CALL , EK_TEMPORARY , EK_FORCE_32_BIT = 0xffffffffU } |
The possible kinds of expressions. More... | |
Public Types inherited from mi::base::Interface_declare< 0x0f4a7542, ... > | |
typedef Interface_declare< id1, ... > | Self |
Own type. More... | |
typedef Uuid_t< id1, ... > | IID |
Declares the interface ID (IID) of this interface. More... | |
Public Types inherited from mi::base::IInterface | |
typedef Uuid_t<0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0> | IID |
Declares the interface ID (IID) of this interface. More... | |
Public Member Functions | |
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... | |
Additional Inherited Members | |
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... | |
The interface to MDL expressions.
Expressions can be created using the expression factory mi::neuraylib::IExpression_factory.
The possible kinds of expressions.
Enumerator | |
---|---|
EK_CONSTANT | A constant expression. See mi::neuraylib::IExpression_constant. |
EK_CALL | An indirect call expression. See mi::neuraylib::IExpression_call. |
EK_PARAMETER | A parameter reference expression. See mi::neuraylib::IExpression_parameter. |
EK_DIRECT_CALL | A direct call expression. See mi::neuraylib::IExpression_direct_call. |
EK_TEMPORARY | A temporary reference expression. See mi::neuraylib::IExpression_temporary. |
|
pure virtual |
Returns the kind of this expression.
|
inline |
Returns the type of this expression.
|
pure virtual |
Returns the type of this expression.