# Class TCustomVSTModule

Description | Hierarchy | Fields | Methods | Properties

## Unit

DVSTCustomModule

## Declaration

`type TCustomVSTModule = class(TBasicVSTModule)`

## Description

no description available, TBasicVSTModule description follows

-$DEFINE Debug

## Hierarchy

- TDataModule
- TBasicVSTModule
- TCustomVSTModule

## Overview

### Methods

| `constructor Create(AOwner: TComponent); override;`
| `destructor Destroy; override;`
| `procedure EditorPostUpdate; virtual;`
| `procedure HostCallDispatchEffect(opcode : TDispatcherOpcode; Index, Value: Integer; ptr: pointer; opt: Single); override;`
| `procedure HostCallProcess(const Inputs, Outputs: PPSingle; const SampleFrames: Integer); override;`
| `procedure HostCallProcessReplacing(const Inputs, Outputs: PPSingle; const SampleFrames: Integer); override;`
| `procedure HostCallProcessDoubleReplacing(const Inputs, Outputs: PPDouble; const SampleFrames: Integer); override;`
| `function HostCallOpen (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallClose (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallGetVu (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallSetSampleRate (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallSetBlockSize (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallMainsChanged (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallEditGetRect (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallEditOpen (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallEditClose (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallEditIdle (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallEditTop (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallEditSleep (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallProcessEvents (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallConnectInput (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallConnectOutput (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallGetInputProperties (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallGetOutputProperties (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallGetPlugCategory (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallOfflineNotify (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallOfflinePrepare (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallOfflineRun (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallProcessVarIo (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallSetBlockSizeAndSampleRate (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallSetBypass (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallGetEffectName (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallGetVendorString (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallGetProductString (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallGetVendorVersion (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallVendorSpecific (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallCanDo (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallGetTailSize (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallKeysRequired (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallGetVstVersion (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallEditKeyDown (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallEditKeyUp (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallSetEditKnobMode (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallGetSpeakerArrangement (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallShellGetNextPlugin (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallStartProcess (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallStopProcess (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallSetTotalSampleToProcess (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallSetPanLaw (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function HostCallSetProcessPrecision (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`
| `function UpdateSampleRate: Double; override;`
| `function UpdateBlockSize: Integer; override;`

### Properties

| `property EditorForm: TForm read FEditorForm;`
| `property EditorNeedUpdate: Boolean read FEditorNeedUpdate write FEditorNeedUpdate;`
| `property Flags: TEffFlags read GetPluginFlags write SetPluginFlags;`
| `property SampleRate: Single read fSampleRate write SetSampleRate;`
| `property numInputs: Integer read FEffect.numInputs write SetNumInputs default 2;`
| `property numOutputs: Integer read FEffect.numOutputs write SetNumOutputs default 2;`
| `property InitialDelay: Integer read FEffect.initialDelay write SetInitialDelay default 0;`
| `property RealQualities: Integer read FEffect.realQualities write FEffect.realQualities default 0;`
| `property OffQualities: Integer read FEffect.offQualities write FEffect.offQualities default 0;`
| `property IORatio: Integer read FEffect.ioRatio write FEffect.ioRatio default 1;`
| `property About: string read FAbout write ReadOnlyString stored False;`
| `property Version: string read FVersion write FVersion;`
| `property UniqueID: string read GetUniqueID write setUniqueID;`
| `property numCategories: Integer read fNumCategories write fNumCategories default 1;`
| `property EffectName: string read FEffectName write SetEffectName;`
| `property ProductName: string read fProductName write fProductName;`
| `property VendorName: string read fVendorName write fVendorName;`
| `property VersionMajor: Integer read FVersionMajor write SetVersionMajor default 1;`
| `property VersionMinor: Integer read FVersionMinor write SetVersionMinor default 0;`
| `property VersionRelease: Integer read FVersionRelease write SetVersionRelease default 0;`
| `property PlugCategory: TVstPluginCategory read fPlugCategory write fPlugCategory default vpcUnknown;`
| `property ProcessPrecisition: TProcessPrecision read FProcessPrecisition write FProcessPrecisition default pp32;`
| `property KeysRequired: Boolean read FKeysRequired write SetKeysRequired default False;`
| `property Tempo: Single read fTempo;`
| `property ShellPlugins: TCustomVstShellPlugins read FVstShellPlugins write SetVstShellPlugins;`
| `property TailSize: Integer read FTailSize write FTailSize default 0;`
| `property CanDos: TVstCanDos read fCanDos write fCanDos;`
| `property HostProduct: string read GetHostProduct stored false;`
| `property HostVendor: string read GetHostVendor stored false;`
| `property HostVersion: Integer read GetHostVendorVersion stored false;`
| `property OnBlockSizeChange: TBlockSizeChangeEvent read fBlockSizeChangeEvent write fBlockSizeChangeEvent;`
| `property OnOpen: TNotifyEvent read FOnOpen write FOnOpen;`
| `property OnClose: TNotifyEvent read FOnClose write FOnClose;`
| `property OnResume: TNotifyEvent read FOnResume write FOnResume;`
| `property OnSuspend: TNotifyEvent read FOnSuspend write FOnSuspend;`
| `property OnEditOpen: TGetEditorEvent read FOnEditOpen write FOnEditOpen;`
| `property OnEditClose: TNotifyEvent read FOnEditClose write FOnEditClose;`
| `property OnEditIdle: TNotifyEvent read FOnEditIdle write FOnEditIdle;`
| `property OnEditTop: TNotifyEvent read FOnEditTop write FOnEditTop;`
| `property OnEditSleep: TNotifyEvent read FOnEditSleep write FOnEditSleep;`
| `property OnSampleRateChange: TSampleRateChangeEvent read fSampleRateChangeEvent write fSampleRateChangeEvent;`
| `property OnGetVU: TGetVUEvent read FOnGetVUEvent write FOnGetVUEvent;`
| `property OnInitialize: TNotifyEvent read FOnInitialize write FOnInitialize;`
| `property OnDispatcher: TOnDispatcherEvent read FOnDispatcher write FOnDispatcher;`
| `property OnSoftBypass: TSoftBypassEvent read FOnSoftBypass write FOnSoftBypass;`
| `property OnInConnected: TInOutConnectedEvent read FOnInConnected write FOnInConnected;`
| `property OnOutConnected: TInOutConnectedEvent read FOnOutConnected write FOnOutConnected;`
| `property OnStartProcess: TNotifyEvent read FOnStartProcess write FOnStartProcess;`
| `property OnStopProcess: TNotifyEvent read FOnStopProcess write FOnStopProcess;`
| `property OnEditorKeyUp: TVSTKeyEvent read FOnKeyUp write FOnKeyUp;`
| `property OnEditorKeyDown: TVSTKeyEvent read FOnKeyDown write FOnKeyDown;`
| `property OnEditorKnobMode: TSetKnobModeEvent read FOnSetKnobMode write FOnSetKnobMode;`
| `property OnOfflineNotify: TOfflineNotifyEvent read FOnOfflineNotify write FOnOfflineNotify;`
| `property OnOfflinePrepare: TOfflinePrepareEvent read FOnOfflinePrepare write FOnOfflinePrepare;`
| `property OnOfflineRun: TOfflineRunEvent read FOnOfflineRun write FOnOfflineRun;`
| `property OnProcessVarIO: TProcessVarIOEvent read FOnProcessVarIO write FOnProcessVarIO;`
| `property OnSetPanLaw: TOnSetPanLawEvent read FOnSetPanLaw write FOnSetPanLaw;`
| `property OnVendorSpecific: TOnVendorSpecificEvent read FOnVendorSpecific write FOnVendorSpecific;`
| `property OnCanDo: TOnCanDoEvent read FOnCanDo write FOnCanDo;`
| `property OnCheckKey: TOnCheckKey read FOnCheckKey write FOnCheckKey;`
| `property OnInputProperties: TOnGetChannelPropertiesEvent read FOnGetInputProperties write FOnGetInputProperties;`
| `property OnOutputProperties: TOnGetChannelPropertiesEvent read FOnGetOutputProperties write FOnGetOutputProperties;`
| `property OnProcess: TProcessAudioEvent read FOnProcessEx write FOnProcessEx;`
| `property OnProcessReplacing: TProcessAudioEvent read FOnProcessReplacingEx write FOnProcessReplacingEx;`
| `property OnProcessDoubleReplacing: TProcessDoubleEvent read FOnProcessDoublesEx write FOnProcessDoublesEx;`

## Description

### Methods

| `constructor Create(AOwner: TComponent); override;`
"to" is deleted, then created and initialized with the same Values as "from" ones ("from" must exist).

| `destructor Destroy; override;`

| `procedure EditorPostUpdate; virtual;`

| `procedure HostCallDispatchEffect(opcode : TDispatcherOpcode; Index, Value: Integer; ptr: pointer; opt: Single); override;`

| `procedure HostCallProcess(const Inputs, Outputs: PPSingle; const SampleFrames: Integer); override;`

| `procedure HostCallProcessReplacing(const Inputs, Outputs: PPSingle; const SampleFrames: Integer); override;`

| `procedure HostCallProcessDoubleReplacing(const Inputs, Outputs: PPDouble; const SampleFrames: Integer); override;`

| `function HostCallOpen (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallClose (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallGetVu (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallSetSampleRate (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallSetBlockSize (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallMainsChanged (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallEditGetRect (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallEditOpen (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallEditClose (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallEditIdle (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallEditTop (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallEditSleep (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallProcessEvents (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallConnectInput (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallConnectOutput (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallGetInputProperties (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallGetOutputProperties (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallGetPlugCategory (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallOfflineNotify (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallOfflinePrepare (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallOfflineRun (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallProcessVarIo (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallSetBlockSizeAndSampleRate (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallSetBypass (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallGetEffectName (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallGetVendorString (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallGetProductString (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallGetVendorVersion (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallVendorSpecific (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallCanDo (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallGetTailSize (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallKeysRequired (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallGetVstVersion (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallEditKeyDown (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallEditKeyUp (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallSetEditKnobMode (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallGetSpeakerArrangement (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallShellGetNextPlugin (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallStartProcess (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallStopProcess (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallSetTotalSampleToProcess (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallSetPanLaw (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function HostCallSetProcessPrecision (Index, Value: Integer; ptr: pointer; opt: Single): Integer; override;`

| `function UpdateSampleRate: Double; override;`

| `function UpdateBlockSize: Integer; override;`

### Properties

| `property EditorForm: TForm read FEditorForm;`
Properties

| `property EditorNeedUpdate: Boolean read FEditorNeedUpdate write FEditorNeedUpdate;`

| `property Flags: TEffFlags read GetPluginFlags write SetPluginFlags;`

| `property SampleRate: Single read fSampleRate write SetSampleRate;`

| `property numInputs: Integer read FEffect.numInputs write SetNumInputs default 2;`

| `property numOutputs: Integer read FEffect.numOutputs write SetNumOutputs default 2;`

| `property InitialDelay: Integer read FEffect.initialDelay write SetInitialDelay default 0;`

| `property RealQualities: Integer read FEffect.realQualities write FEffect.realQualities default 0;`

| `property OffQualities: Integer read FEffect.offQualities write FEffect.offQualities default 0;`

| `property IORatio: Integer read FEffect.ioRatio write FEffect.ioRatio default 1;`

| `property About: string read FAbout write ReadOnlyString stored False;`

| `property Version: string read FVersion write FVersion;`

| `property UniqueID: string read GetUniqueID write setUniqueID;`

| `property numCategories: Integer read fNumCategories write fNumCategories default 1;`

| `property EffectName: string read FEffectName write SetEffectName;`

| `property ProductName: string read fProductName write fProductName;`

| `property VendorName: string read fVendorName write fVendorName;`

| `property VersionMajor: Integer read FVersionMajor write SetVersionMajor default 1;`

| `property VersionMinor: Integer read FVersionMinor write SetVersionMinor default 0;`

| `property VersionRelease: Integer read FVersionRelease write SetVersionRelease default 0;`

| `property PlugCategory: TVstPluginCategory read fPlugCategory write fPlugCategory default vpcUnknown;`

| `property ProcessPrecisition: TProcessPrecision read FProcessPrecisition write FProcessPrecisition default pp32;`

| `property KeysRequired: Boolean read FKeysRequired write SetKeysRequired default False;`

| `property Tempo: Single read fTempo;`

| `property ShellPlugins: TCustomVstShellPlugins read FVstShellPlugins write SetVstShellPlugins;`

| `property TailSize: Integer read FTailSize write FTailSize default 0;`

| `property CanDos: TVstCanDos read fCanDos write fCanDos;`

| `property HostProduct: string read GetHostProduct stored false;`

| `property HostVendor: string read GetHostVendor stored false;`

| `property HostVersion: Integer read GetHostVendorVersion stored false;`

| `property OnBlockSizeChange: TBlockSizeChangeEvent read fBlockSizeChangeEvent write fBlockSizeChangeEvent;`

| `property OnOpen: TNotifyEvent read FOnOpen write FOnOpen;`

| `property OnClose: TNotifyEvent read FOnClose write FOnClose;`

| `property OnResume: TNotifyEvent read FOnResume write FOnResume;`

| `property OnSuspend: TNotifyEvent read FOnSuspend write FOnSuspend;`

| `property OnEditOpen: TGetEditorEvent read FOnEditOpen write FOnEditOpen;`

| `property OnEditClose: TNotifyEvent read FOnEditClose write FOnEditClose;`

| `property OnEditIdle: TNotifyEvent read FOnEditIdle write FOnEditIdle;`

| `property OnEditTop: TNotifyEvent read FOnEditTop write FOnEditTop;`

| `property OnEditSleep: TNotifyEvent read FOnEditSleep write FOnEditSleep;`

| `property OnSampleRateChange: TSampleRateChangeEvent read fSampleRateChangeEvent write fSampleRateChangeEvent;`

| `property OnGetVU: TGetVUEvent read FOnGetVUEvent write FOnGetVUEvent;`

| `property OnInitialize: TNotifyEvent read FOnInitialize write FOnInitialize;`

| `property OnDispatcher: TOnDispatcherEvent read FOnDispatcher write FOnDispatcher;`

| `property OnSoftBypass: TSoftBypassEvent read FOnSoftBypass write FOnSoftBypass;`

| `property OnInConnected: TInOutConnectedEvent read FOnInConnected write FOnInConnected;`

| `property OnOutConnected: TInOutConnectedEvent read FOnOutConnected write FOnOutConnected;`

| `property OnStartProcess: TNotifyEvent read FOnStartProcess write FOnStartProcess;`

| `property OnStopProcess: TNotifyEvent read FOnStopProcess write FOnStopProcess;`

| `property OnEditorKeyUp: TVSTKeyEvent read FOnKeyUp write FOnKeyUp;`

| `property OnEditorKeyDown: TVSTKeyEvent read FOnKeyDown write FOnKeyDown;`

| `property OnEditorKnobMode: TSetKnobModeEvent read FOnSetKnobMode write FOnSetKnobMode;`

| `property OnOfflineNotify: TOfflineNotifyEvent read FOnOfflineNotify write FOnOfflineNotify;`

| `property OnOfflinePrepare: TOfflinePrepareEvent read FOnOfflinePrepare write FOnOfflinePrepare;`

| `property OnOfflineRun: TOfflineRunEvent read FOnOfflineRun write FOnOfflineRun;`

| `property OnProcessVarIO: TProcessVarIOEvent read FOnProcessVarIO write FOnProcessVarIO;`

| `property OnSetPanLaw: TOnSetPanLawEvent read FOnSetPanLaw write FOnSetPanLaw;`

| `property OnVendorSpecific: TOnVendorSpecificEvent read FOnVendorSpecific write FOnVendorSpecific;`

| `property OnCanDo: TOnCanDoEvent read FOnCanDo write FOnCanDo;`

| `property OnCheckKey: TOnCheckKey read FOnCheckKey write FOnCheckKey;`

| `property OnInputProperties: TOnGetChannelPropertiesEvent read FOnGetInputProperties write FOnGetInputProperties;`

| `property OnOutputProperties: TOnGetChannelPropertiesEvent read FOnGetOutputProperties write FOnGetOutputProperties;`

| `property OnProcess: TProcessAudioEvent read FOnProcessEx write FOnProcessEx;`

| `property OnProcessReplacing: TProcessAudioEvent read FOnProcessReplacingEx write FOnProcessReplacingEx;`

| `property OnProcessDoubleReplacing: TProcessDoubleEvent read FOnProcessDoublesEx write FOnProcessDoublesEx;`

Generated by PasDoc 0.10.0 on 2007-11-13 13:04:19