Interface Technology Basics VST 3.7
SDK for developing VST plug-in
IUpdateHandler Class Referenceabstract

Host implements dependency handling for plugins. More...

#include <iupdatehandler.h>

+ Inheritance diagram for IUpdateHandler:

Public Member Functions

virtual tresult addDependent (FUnknown *object, IDependent *dependent)=0
 Install update notification for given object. More...
 
virtual tresult removeDependent (FUnknown *object, IDependent *dependent)=0
 Remove a previously installed dependency. More...
 
virtual tresult triggerUpdates (FUnknown *object, int32 message)=0
 Inform all dependents, that object has changed. More...
 
virtual tresult deferUpdates (FUnknown *object, int32 message)=0
 Same as triggerUpdates, but delivered in idle (usefull to collect updates). More...
 
- Public Member Functions inherited from FUnknown
virtual tresult queryInterface (const TUID _iid, void **obj)=0
 Query for a pointer to the specified interface. More...
 
virtual uint32 addRef ()=0
 Adds a reference and returns the new reference count. More...
 
virtual uint32 release ()=0
 Releases a reference and returns the new reference count. More...
 

Static Public Attributes

static const FUID iid
 
- Static Public Attributes inherited from FUnknown
static const FUID iid
 

Detailed Description

Host implements dependency handling for plugins.

  • [host imp]
  • [get this interface from IHostClasses]
  • [released N3.1]
  • Install/Remove change notifications
  • Trigger updates when an object has changed

Can be used between host-objects and the Plug-In or inside the Plug-In to handle internal updates!

See also
IDependent

Member Function Documentation

◆ addDependent()

virtual tresult addDependent ( FUnknown object,
IDependent dependent 
)
pure virtual

Install update notification for given object.

It is essential to remove all dependencies again using 'removeDependent'! Dependencies are not removed automatically when the 'object' is released!

Parameters
object: interface to object that sends change notifications
dependent: interface through which the update is passed

◆ removeDependent()

virtual tresult removeDependent ( FUnknown object,
IDependent dependent 
)
pure virtual

Remove a previously installed dependency.

◆ triggerUpdates()

virtual tresult triggerUpdates ( FUnknown object,
int32  message 
)
pure virtual

Inform all dependents, that object has changed.

Parameters
objectis the object that has changed
messageis a value of enum IDependent::ChangeMessage, usually IDependent::kChanged - can be a private message as well (only known to sender and dependent)

◆ deferUpdates()

virtual tresult deferUpdates ( FUnknown object,
int32  message 
)
pure virtual

Same as triggerUpdates, but delivered in idle (usefull to collect updates).

Member Data Documentation

◆ iid

const FUID iid
static
Empty

Copyright © Steinberg Media Technologies GmbH. All Rights Reserved. This documentation is under this license.