Page tree

Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.


Extended host callback interface for an edit controller: Vst::IProgress

Allows the plug-in to request the host to create a progress for some specific tasks which take some time.

The host can visualize the progress as read-only UI elements. For example, after loading a project where a plug-in needs to load extra data (e.g. samples) in a background thread, this enables the host to get and visualize the current status of the loading progress and to inform the user when the loading is finished. Note: During the progress, the host can unload the plug-in at any time. Make sure that the plug-in supports this use case.


How to call it from the plug-in side

Code Block
// we are in the editcontroller:
// as member: IProgress::ID mProgressID;
FUnknownPtr<IProgress> progress (componentHandler);
if (progress)
    progress->start (IProgress::ProgressType::UIBackgroundTask, STR ("Load Samples..."), mProgressID);
// ...
myProgressValue += incProgressStep;
FUnknownPtr<IProgress> progress (componentHandler);
if (progress)
    progress->update (mProgressID, myProgressValue);
// ...
FUnknownPtr<IProgress> progress (componentHandler);
if (progress)
    progress->finish (mProgressID);

VST 3 Plug-in Test Host integration of Vst::IProgress

Image RemovedImage Added


On this page:

Table of Contents