{========================================================================} {= (c) 1995-98 SwiftSoft Ronald Dittrich =} {========================================================================} {= All Rights Reserved =} {========================================================================} {= D 01099 Dresden = Tel.: +0351-8012255 =} {= Loewenstr.7a = info@swiftsoft.de =} {========================================================================} {= Actual versions on http://www.swiftsoft.de/mmtools.html =} {========================================================================} {= This code is for reference purposes only and may not be copied or =} {= distributed in any format electronic or otherwise except one copy =} {= for backup purposes. =} {= =} {= No Delphi Component Kit or Component individually or in a collection=} {= subclassed or otherwise from the code in this unit, or associated =} {= .pas, .dfm, .dcu, .asm or .obj files may be sold or distributed =} {= without express permission from SwiftSoft. =} {= =} {= For more licence informations please refer to the associated =} {= HelpFile. =} {========================================================================} {= $Date: 20.01.1998 - 18:00:00 $ =} {========================================================================} unit MMFlange; {$I COMPILER.INC} interface uses {$IFDEF WIN32} Windows, {$ELSE} WinTypes, WinProcs, {$ENDIF} SysUtils, Classes, Controls, IniFiles, MMSystem, MMRegs, MMObj, MMDSPObj, MMUtils, MMMath, MMWaveIO, MMPCMSup, MMFX; type EMMFlangeError = class(Exception); {-- TMMFlanger -------------------------------------------------------------} TMMFlanger = class(TMMDSPComponent) public constructor Create(aOwner: TComponent); override; destructor Destroy; override; procedure SaveToIniFile(IniFile: TFileName; Section: string); procedure ReadFromIniFile(IniFile: TFileName; Section: string); procedure ReadIniSections(IniFile: TFileName; Strings: TStrings); procedure DeleteSection(IniFile: TFileName; Section: string); procedure Open; procedure Close; procedure Process(Buffer: PChar; Length: integer); function CleanUp(Buffer: PChar; Length: integer): Longint; published property OnChange: TNotifyEvent read FOnChange write FOnChange; property OnPcmOverflow: TNotifyEvent read FOnPcmOverflow write FOnPcmOverflow; property Input; property Output; property Enabled: Boolean read FEnabled write SetEnabled default True; property Description: String read FDescription write SetDescription; property DryMix: TMMEffectVolume index 0 read FDryMix write SetGains; property WetMix: TMMEffectVolume index 1 read FWetMix write SetGains; property FeedBack: TMMFeedBack read FFeedback write SetFeedBack; property MaxDelay: integer index 0 read FMaxDelay write SetDelays; property Delay: integer index 1 read FDelay write SetDelays; property Depth: Float read FDepth write SetDepth; property Rate: Float read FRate write SetRate; end; implementation