VirtualBox Main API

Public Member Functions | List of all members
IInternalProgressControl Interface Reference
Inheritance diagram for IInternalProgressControl:

## Public Member Functions
void | setCurrentOperationProgress (in unsigned long percent)
| Internal method, not to be called externally.
void | waitForOtherProgressCompletion (in IProgress progressOther, in unsigned long timeoutMS)
| Internal method, not to be called externally.
void | setNextOperation (in wstring nextOperationDescription, in unsigned long nextOperationsWeight)
| Internal method, not to be called externally.
void | notifyPointOfNoReturn ()
| Internal method, not to be called externally.
void | notifyComplete (in long resultCode, in IVirtualBoxErrorInfo errorInfo)
| Internal method, not to be called externally.

## Member Function Documentation

## ◆ setCurrentOperationProgress()

void IInternalProgressControl::setCurrentOperationProgress | ( | in unsigned long | percent | ) |

Internal method, not to be called externally.

## ◆ waitForOtherProgressCompletion()

void IInternalProgressControl::waitForOtherProgressCompletion | ( | in IProgress | progressOther,
|  | in unsigned long | timeoutMS
| ) |  |

Internal method, not to be called externally.

Waits until the other task is completed (including all sub-operations) and forward all changes from the other progress to this progress. This means sub-operation number, description, percent and so on.

The caller is responsible for having at least the same count of sub-operations in this progress object as there are in the other progress object.

If the other progress object supports cancel and this object gets any cancel request (when here enabled as well), it will be forwarded to the other progress object.

Error information is automatically preserved (by transferring it to the current thread's error information). If the caller wants to set it as the completion state of this progress it needs to be done separately.

Parameters

  progressOther | Other progress object to be "cloned".
  timeoutMS | Timeout (in ms). Pass 0 for an infinite timeout.

Expected result codes:

  VBOX_E_TIMEOUT | Waiting time has expired.

## ◆ setNextOperation()

void IInternalProgressControl::setNextOperation | ( | in wstring | nextOperationDescription,
|  | in unsigned long | nextOperationsWeight
| ) |  |

Internal method, not to be called externally.

## ◆ notifyPointOfNoReturn()

void IInternalProgressControl::notifyPointOfNoReturn | ( |  | ) |

Internal method, not to be called externally.

## ◆ notifyComplete()

void IInternalProgressControl::notifyComplete | ( | in long | resultCode,
|  | in IVirtualBoxErrorInfo | errorInfo
| ) |  |

Internal method, not to be called externally.