juce_VSTInterface.h File Reference

Classes

struct  VstEffectInterface
 
struct  VstEditorBounds
 
struct  VstPinInfo
 
struct  VstEvent
 
struct  VstEventBlock
 
struct  VstMidiEvent
 
struct  VstSysExEvent
 
struct  VstTimingInformation
 
struct  VstIndividualSpeakerInfo
 
struct  VstSpeakerConfiguration
 
struct  vst2FxBank
 

Macros

#define JUCE_VSTINTERFACE_H_INCLUDED
 
#define VSTINTERFACECALL
 
#define JUCE_MULTICHAR_CONSTANT(a, b, c, d)   (d | (((uint32) c) << 8) | (((uint32) b) << 16) | (((uint32) a) << 24))
 

Typedefs

typedef pointer_sized_int(VSTINTERFACECALLVstHostCallback) (VstEffectInterface *, int32 op, int32 index, pointer_sized_int value, void *ptr, float opt)
 

Enumerations

enum  VstEffectInterfaceFlags {
  vstEffectFlagHasEditor = 1, vstEffectFlagInplaceAudio = 16, vstEffectFlagDataInChunks = 32, vstEffectFlagIsSynth = 256,
  vstEffectFlagInplaceDoubleAudio = 4096
}
 
enum  VstHostToPlugInOpcodes {
  plugInOpcodeOpen, plugInOpcodeClose, plugInOpcodeSetCurrentProgram, plugInOpcodeGetCurrentProgram,
  plugInOpcodeSetCurrentProgramName, plugInOpcodeGetCurrentProgramName, plugInOpcodeGetParameterLabel, plugInOpcodeGetParameterText,
  plugInOpcodeGetParameterName, plugInOpcodeSetSampleRate = plugInOpcodeGetParameterName + 2, plugInOpcodeSetBlockSize, plugInOpcodeResumeSuspend,
  plugInOpcodeGetEditorBounds, plugInOpcodeOpenEditor, plugInOpcodeCloseEditor, plugInOpcodeDrawEditor,
  plugInOpcodeGetMouse, plugInOpcodeEditorIdle = plugInOpcodeGetMouse + 2, plugInOpcodeeffEditorTop, plugInOpcodeSleepEditor,
  plugInOpcodeIdentify, plugInOpcodeGetData, plugInOpcodeSetData, plugInOpcodePreAudioProcessingEvents,
  plugInOpcodeIsParameterAutomatable, plugInOpcodeParameterValueForText, plugInOpcodeGetProgramName = plugInOpcodeParameterValueForText + 2, plugInOpcodeConnectInput = plugInOpcodeGetProgramName + 2,
  plugInOpcodeConnectOutput, plugInOpcodeGetInputPinProperties, plugInOpcodeGetOutputPinProperties, plugInOpcodeGetPlugInCategory,
  plugInOpcodeSetSpeakerConfiguration = plugInOpcodeGetPlugInCategory + 7, plugInOpcodeSetBypass = plugInOpcodeSetSpeakerConfiguration + 2, plugInOpcodeGetPlugInName, plugInOpcodeGetManufacturerName = plugInOpcodeGetPlugInName + 2,
  plugInOpcodeGetManufacturerProductName, plugInOpcodeGetManufacturerVersion, plugInOpcodeManufacturerSpecific, plugInOpcodeCanPlugInDo,
  plugInOpcodeGetTailSize, plugInOpcodeIdle, plugInOpcodeKeyboardFocusRequired = plugInOpcodeIdle + 4, plugInOpcodeGetVstInterfaceVersion,
  plugInOpcodeGetCurrentMidiProgram = plugInOpcodeGetVstInterfaceVersion + 5, plugInOpcodeGetSpeakerArrangement = plugInOpcodeGetCurrentMidiProgram + 6, plugInOpcodeNextPlugInUniqueID, plugInOpcodeStartProcess,
  plugInOpcodeStopProcess, plugInOpcodeSetNumberOfSamplesToProcess, plugInOpcodeSetSampleFloatType = plugInOpcodeSetNumberOfSamplesToProcess + 4, pluginOpcodeGetNumMidiInputChannels,
  pluginOpcodeGetNumMidiOutputChannels, plugInOpcodeMaximum = pluginOpcodeGetNumMidiOutputChannels
}
 
enum  VstPlugInToHostOpcodes {
  hostOpcodeParameterChanged, hostOpcodeVstVersion, hostOpcodeCurrentId, hostOpcodeIdle,
  hostOpcodePinConnected, hostOpcodePlugInWantsMidi = hostOpcodePinConnected + 2, hostOpcodeGetTimingInfo, hostOpcodePreAudioProcessingEvents,
  hostOpcodeSetTime, hostOpcodeTempoAt, hostOpcodeGetNumberOfAutomatableParameters, hostOpcodeGetParameterInterval,
  hostOpcodeIOModified, hostOpcodeNeedsIdle, hostOpcodeWindowSize, hostOpcodeGetSampleRate,
  hostOpcodeGetBlockSize, hostOpcodeGetInputLatency, hostOpcodeGetOutputLatency, hostOpcodeGetPreviousPlugIn,
  hostOpcodeGetNextPlugIn, hostOpcodeWillReplace, hostOpcodeGetCurrentAudioProcessingLevel, hostOpcodeGetAutomationState,
  hostOpcodeOfflineStart, hostOpcodeOfflineReadSource, hostOpcodeOfflineWrite, hostOpcodeOfflineGetCurrentPass,
  hostOpcodeOfflineGetCurrentMetaPass, hostOpcodeSetOutputSampleRate, hostOpcodeGetOutputSpeakerConfiguration, hostOpcodeGetManufacturerName,
  hostOpcodeGetProductName, hostOpcodeGetManufacturerVersion, hostOpcodeManufacturerSpecific, hostOpcodeSetIcon,
  hostOpcodeCanHostDo, hostOpcodeGetLanguage, hostOpcodeOpenEditorWindow, hostOpcodeCloseEditorWindow,
  hostOpcodeGetDirectory, hostOpcodeUpdateView, hostOpcodeParameterChangeGestureBegin, hostOpcodeParameterChangeGestureEnd
}
 
enum  VstProcessingSampleType { vstProcessingSampleTypeFloat, vstProcessingSampleTypeDouble }
 
enum  VstPlugInCategory {
  kPlugCategUnknown, kPlugCategEffect, kPlugCategSynth, kPlugCategAnalysis,
  kPlugCategMastering, kPlugCategSpacializer, kPlugCategRoomFx, kPlugSurroundFx,
  kPlugCategRestoration, kPlugCategOfflineProcess, kPlugCategShell, kPlugCategGenerator
}
 
enum  VstMaxStringLengths {
  vstMaxNameLength = 64, vstMaxParameterOrPinLabelLength = 64, vstMaxParameterOrPinShortLabelLength = 8, vstMaxCategoryLength = 24,
  vstMaxManufacturerStringLength = 64, vstMaxPlugInNameStringLength = 64
}
 
enum  VstPinInfoFlags { vstPinInfoFlagIsActive = 1, vstPinInfoFlagIsStereo = 2, vstPinInfoFlagValid = 4 }
 
enum  VstEventTypes { vstMidiEventType = 1, vstSysExEventType = 6 }
 
enum  VstMidiEventFlags { vstMidiEventIsRealtime = 1 }
 
enum  VstTimingInformationFlags {
  vstTimingInfoFlagTransportChanged = 1, vstTimingInfoFlagCurrentlyPlaying = 2, vstTimingInfoFlagLoopActive = 4, vstTimingInfoFlagCurrentlyRecording = 8,
  vstTimingInfoFlagAutomationWriteModeActive = 64, vstTimingInfoFlagAutomationReadModeActive = 128, vstTimingInfoFlagNanosecondsValid = 256, vstTimingInfoFlagMusicalPositionValid = 512,
  vstTimingInfoFlagTempoValid = 1024, vstTimingInfoFlagLastBarPositionValid = 2048, vstTimingInfoFlagLoopPositionValid = 4096, vstTimingInfoFlagTimeSignatureValid = 8192,
  vstTimingInfoFlagSmpteValid = 16384, vstTimingInfoFlagNearestClockValid = 32768
}
 
enum  VstSmpteRates {
  vstSmpteRateFps24, vstSmpteRateFps25, vstSmpteRateFps2997, vstSmpteRateFps30,
  vstSmpteRateFps2997drop, vstSmpteRateFps30drop, vstSmpteRate16mmFilm, vstSmpteRate35mmFilm,
  vstSmpteRateFps239 = vstSmpteRate35mmFilm + 3, vstSmpteRateFps249, vstSmpteRateFps599, vstSmpteRateFps60
}
 
enum  VstIndividualSpeakerType {
  vstIndividualSpeakerTypeUndefined = 0x7fffffff, vstIndividualSpeakerTypeMono = 0, vstIndividualSpeakerTypeLeft, vstIndividualSpeakerTypeRight,
  vstIndividualSpeakerTypeCentre, vstIndividualSpeakerTypeLFE, vstIndividualSpeakerTypeLeftSurround, vstIndividualSpeakerTypeRightSurround,
  vstIndividualSpeakerTypeLeftCentre, vstIndividualSpeakerTypeRightCentre, vstIndividualSpeakerTypeSurround, vstIndividualSpeakerTypeCentreSurround = vstIndividualSpeakerTypeSurround,
  vstIndividualSpeakerTypeLeftRearSurround, vstIndividualSpeakerTypeRightRearSurround, vstIndividualSpeakerTypeTopMiddle, vstIndividualSpeakerTypeTopFrontLeft,
  vstIndividualSpeakerTypeTopFrontCentre, vstIndividualSpeakerTypeTopFrontRight, vstIndividualSpeakerTypeTopRearLeft, vstIndividualSpeakerTypeTopRearCentre,
  vstIndividualSpeakerTypeTopRearRight, vstIndividualSpeakerTypeLFE2
}
 
enum  VstSpeakerConfigurationType {
  vstSpeakerConfigTypeUser = -2, vstSpeakerConfigTypeEmpty = -1, vstSpeakerConfigTypeMono = 0, vstSpeakerConfigTypeLR,
  vstSpeakerConfigTypeLsRs, vstSpeakerConfigTypeLcRc, vstSpeakerConfigTypeSlSr, vstSpeakerConfigTypeCLfe,
  vstSpeakerConfigTypeLRC, vstSpeakerConfigTypeLRS, vstSpeakerConfigTypeLRCLfe, vstSpeakerConfigTypeLRLfeS,
  vstSpeakerConfigTypeLRCS, vstSpeakerConfigTypeLRLsRs, vstSpeakerConfigTypeLRCLfeS, vstSpeakerConfigTypeLRLfeLsRs,
  vstSpeakerConfigTypeLRCLsRs, vstSpeakerConfigTypeLRCLfeLsRs, vstSpeakerConfigTypeLRCLsRsCs, vstSpeakerConfigTypeLRLsRsSlSr,
  vstSpeakerConfigTypeLRCLfeLsRsCs, vstSpeakerConfigTypeLRLfeLsRsSlSr, vstSpeakerConfigTypeLRCLsRsLcRc, vstSpeakerConfigTypeLRCLsRsSlSr,
  vstSpeakerConfigTypeLRCLfeLsRsLcRc, vstSpeakerConfigTypeLRCLfeLsRsSlSr, vstSpeakerConfigTypeLRCLsRsLcRcCs, vstSpeakerConfigTypeLRCLsRsCsSlSr,
  vstSpeakerConfigTypeLRCLfeLsRsLcRcCs, vstSpeakerConfigTypeLRCLfeLsRsCsSlSr, vstSpeakerConfigTypeLRCLfeLsRsTflTfcTfrTrlTrrLfe2
}
 
enum  PresonusExtensionConstants { presonusVendorID = JUCE_MULTICHAR_CONSTANT ('P', 'r', 'e', 'S'), presonusSetContentScaleFactor = JUCE_MULTICHAR_CONSTANT ('A', 'e', 'C', 's') }
 

Variables

const int32 juceVstInterfaceVersion = 2400
 
const int32 juceVstInterfaceIdentifier = 0x56737450