Abstract interface to report progress of a long-running operation back to the caller. More...
#include <iprogress_callback.h>
Public Member Functions | |
virtual void | progress (Float64 value, const char *area, const char *message)=0 |
The callback method that provides the progress information. More... | |
![]() | |
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 | |
![]() | |
using | Self = Interface_declare< id1, ... > |
Own type. More... | |
using | IID = Uuid_t< id1, ... > |
Declares the interface ID (IID) of this interface. More... | |
![]() | |
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 bool | compare_iid (const Uuid &iid) |
Compares the interface ID iid against the interface ID of this interface and of its ancestors. More... | |
![]() | |
static bool | compare_iid (const Uuid &iid) |
Compares the interface ID iid against the interface ID of this interface. More... | |
Abstract interface to report progress of a long-running operation back to the caller.
Typically, an instance of this interface is passed to methods triggering long-running operations. The operation can now regularly call the progress() method of this instance to provide information about the progress of the operation to the caller.
For example, an instance of this interface can be passed to mi::neuraylib::IRender_context::render() and mi::neuraylib::IRender_context::render_async().
|
pure virtual |
The callback method that provides the progress information.
It can be called at any time from any thread.
value | This is some value which gives information about how much the work progressed. The interpretation depends on the area string. In some areas it might be a percentage, in some it might be an absolute value. |
area | This describes the area where progress has been made. |
message | This is a free form message which might be present and gives additional information about the progress in text form. |