VST 3 Interfaces  VST 3.7
SDK for developing VST plug-in
IProcessContextRequirements Class Referenceabstract

Extended IAudioProcessor interface for a component: Vst::IProcessContextRequirements. More...

#include <ivstaudioprocessor.h>

+ Inheritance diagram for IProcessContextRequirements:

Public Types

enum  Flags {
  kNeedSystemTime = 1 << 0, kNeedContinousTimeSamples = 1 << 1, kNeedProjectTimeMusic = 1 << 2, kNeedBarPositionMusic = 1 << 3,
  kNeedCycleMusic = 1 << 4, kNeedSamplesToNextClock = 1 << 5, kNeedTempo = 1 << 6, kNeedTimeSignature = 1 << 7,
  kNeedChord = 1 << 8, kNeedFrameRate = 1 << 9, kNeedTransportState = 1 << 10
}
 

Public Member Functions

virtual uint32 getProcessContextRequirements ()=0
 
- Public Member Functions inherited from FUnknown
virtual tresult queryInterface (const TUID _iid, void **obj)=0
 
virtual uint32 addRef ()=0
 
virtual uint32 release ()=0
 

Static Public Attributes

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

Detailed Description

Extended IAudioProcessor interface for a component: Vst::IProcessContextRequirements.

To get accurate process context information (Vst::ProcessContext), it is now required to implement this interface and return the desired bit mask of flags which your audio effect needs. If you do not implement this interface, you may not get any information at all of the process function.

The host asks for this information once between initialize and setActive. It cannot be changed afterwards.

This gives the host the opportunity to better optimize the audio process graph when it knows which plug-ins need which information.

Plug-Ins built with an earlier SDK version (< 3.7) will still get the old information, but the information may not be as accurate as when using this interface.

Member Enumeration Documentation

◆ Flags

enum Flags
Enumerator
kNeedSystemTime 
kNeedContinousTimeSamples 
kNeedProjectTimeMusic 
kNeedBarPositionMusic 
kNeedCycleMusic 
kNeedSamplesToNextClock 
kNeedTempo 
kNeedTimeSignature 
kNeedChord 
kNeedFrameRate 
kNeedTransportState 

Member Function Documentation

◆ getProcessContextRequirements()

virtual uint32 getProcessContextRequirements ( )
pure virtual

Implemented in AudioEffect, and SingleComponentEffect.

Member Data Documentation

◆ iid

const FUID iid
static
Empty

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