mirror of
https://git.vladimir.cc/vladimir/ewsdr.git
synced 2026-08-25 17:27:32 +00:00
init
This commit is contained in:
@@ -0,0 +1,941 @@
|
||||
unit WDSP;
|
||||
|
||||
{
|
||||
Pascal/Lazarus binding for the WDSP (Wideband DSP) library.
|
||||
Автоматически переведено из заголовочного файла wdsp.h.
|
||||
|
||||
Использование:
|
||||
1. Поместите wdsp.dll (Linux: libwdsp.so) рядом с исполняемым файлом.
|
||||
2. Подключите unit в секции uses: uses WDSP;
|
||||
3. Вызывайте функции напрямую, например: OpenChannel(0, 1024, ...);
|
||||
}
|
||||
|
||||
{$IFDEF FPC}
|
||||
{$MODE Delphi}
|
||||
{$ENDIF}
|
||||
|
||||
// Если wdsp.dll / libwdsp.so отсутствует — функции будут nil вместо краша.
|
||||
// WDSPEngine.Open вернёт False и программа продолжит работу в демо-режиме.
|
||||
{$IFDEF FPC}
|
||||
{$WEAKEXTERNALSYMBOLS ON}
|
||||
{$ENDIF}
|
||||
|
||||
interface
|
||||
|
||||
uses
|
||||
SysUtils;
|
||||
|
||||
const
|
||||
{$IFDEF WINDOWS}
|
||||
WDSP_LIB = 'wdsp.dll';
|
||||
{$ELSE}
|
||||
WDSP_LIB = 'libwdsp.so';
|
||||
{$ENDIF}
|
||||
|
||||
// Analyzer detector modes
|
||||
DETECTOR_MODE_PEAK = 0;
|
||||
DETECTOR_MODE_ROSENFELL = 1;
|
||||
DETECTOR_MODE_AVERAGE = 2;
|
||||
DETECTOR_MODE_SAMPLE = 3;
|
||||
DETECTOR_MODE_RMS = 4;
|
||||
|
||||
// Average hold/modes
|
||||
AVERAGE_PEAK_HOLD = -1;
|
||||
AVERAGE_MODE_NONE = 0;
|
||||
AVERAGE_MODE_RECURSIVE = 1;
|
||||
AVERAGE_MODE_TIME_WINDOW = 2;
|
||||
AVERAGE_MODE_LOG_RECURSIVE = 3;
|
||||
|
||||
type
|
||||
INREAL = Single;
|
||||
OUTREAL = Single;
|
||||
dINREAL = Single;
|
||||
dOUTREAL = Single;
|
||||
PDWORD = ^DWORD;
|
||||
PINREAl = ^INREAL;
|
||||
POUTREAl = ^OUTREAL;
|
||||
PdINREAL = ^dINREAL;
|
||||
PdOUTREAL = ^dOUTREAL;
|
||||
PDouble = ^Double;
|
||||
PInteger = ^Integer;
|
||||
PSingle = ^Single;
|
||||
PPDouble = ^PDouble;
|
||||
PPSingle = ^PSingle;
|
||||
PPVoid = ^Pointer;
|
||||
|
||||
// Opaque pointers (void* in C)
|
||||
TEER = Pointer;
|
||||
TANB = Pointer;
|
||||
TNOB = Pointer;
|
||||
TRESAMPLE = Pointer;
|
||||
TGAIN = Pointer;
|
||||
TLPCRITICAL_SECTION = Pointer;
|
||||
|
||||
// RXA Meter types
|
||||
TrxaMeterType = (
|
||||
RXA_S_PK,
|
||||
RXA_S_AV,
|
||||
RXA_ADC_PK,
|
||||
RXA_ADC_AV,
|
||||
RXA_AGC_GAIN,
|
||||
RXA_AGC_PK,
|
||||
RXA_AGC_AV,
|
||||
RXA_METERTYPE_LAST
|
||||
);
|
||||
|
||||
// TXA Meter types
|
||||
TtxaMeterType = (
|
||||
TXA_MIC_PK,
|
||||
TXA_MIC_AV,
|
||||
TXA_EQ_PK,
|
||||
TXA_EQ_AV,
|
||||
TXA_LVLR_PK,
|
||||
TXA_LVLR_AV,
|
||||
TXA_LVLR_GAIN,
|
||||
TXA_CFC_PK,
|
||||
TXA_CFC_AV,
|
||||
TXA_CFC_GAIN,
|
||||
TXA_COMP_PK,
|
||||
TXA_COMP_AV,
|
||||
TXA_ALC_PK,
|
||||
TXA_ALC_AV,
|
||||
TXA_ALC_GAIN,
|
||||
TXA_OUT_PK,
|
||||
TXA_OUT_AV,
|
||||
TXA_METERTYPE_LAST
|
||||
);
|
||||
|
||||
// Callback type for DEXP VOX push
|
||||
TPushVoxProc = procedure(id: Integer; active: Integer); cdecl;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// RXA.c
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure SetRXAMode(channel: Integer; mode: Integer); cdecl; external WDSP_LIB;
|
||||
procedure RXASetPassband(channel: Integer; f_low: Double; f_high: Double); cdecl; external WDSP_LIB;
|
||||
procedure RXASetNC(channel: Integer; nc: Integer); cdecl; external WDSP_LIB;
|
||||
procedure RXASetMP(channel: Integer; mp: Integer); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// TXA.c
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure SetTXAMode(channel: Integer; mode: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXABandpassFreqs(channel: Integer; f_low: Double; f_high: Double); cdecl; external WDSP_LIB;
|
||||
procedure TXASetNC(channel: Integer; nc: Integer); cdecl; external WDSP_LIB;
|
||||
procedure TXASetMP(channel: Integer; mp: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAFMAFFilter(channel: Integer; low: Double; high: Double); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// amd.c
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure SetRXAAMDRun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAAMDSBMode(channel: Integer; sbmode: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAAMDFadeLevel(channel: Integer; levelfade: Integer); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// ammod.c
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure SetTXAAMCarrierLevel(channel: Integer; c_level: Double); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// amsq.c
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure SetRXAAMSQRun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAAMSQThreshold(channel: Integer; threshold: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAAMSQMaxTail(channel: Integer; tail: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAAMSQRun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAAMSQMutedGain(channel: Integer; dBlevel: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAAMSQThreshold(channel: Integer; threshold: Double); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// analyzer.c
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure SetupDetectMaxBin(run: Integer; disp: Integer; ss: Integer; LO: Integer;
|
||||
rate: Double; fLow: Double; fHigh: Double; tau: Double; frame_rate: Integer); cdecl; external WDSP_LIB;
|
||||
function GetDetectMaxBin(disp: Integer): Double; cdecl; external WDSP_LIB;
|
||||
procedure XCreateAnalyzer(disp: Integer; success: PInteger; m_size: Integer;
|
||||
m_num_fft: Integer; m_stitch: Integer; app_data_path: PAnsiChar); cdecl; external WDSP_LIB;
|
||||
procedure DestroyAnalyzer(disp: Integer); cdecl; external WDSP_LIB;
|
||||
procedure GetPixels(disp: Integer; pixout: Integer; pix: PdOUTREAL; flag: PInteger); cdecl; external WDSP_LIB;
|
||||
procedure SnapSpectrum(disp: Integer; ss: Integer; LO: Integer; snap_buff: PDouble); cdecl; external WDSP_LIB;
|
||||
procedure SnapSpectrumTimeout(disp: Integer; ss: Integer; LO: Integer;
|
||||
snap_buff: PDouble; timeout: DWORD; flag: PInteger); cdecl; external WDSP_LIB;
|
||||
// SetCalibration: cal is pointer to array of [n_points][dMAX_M+1] doubles
|
||||
procedure SetCalibration(disp: Integer; set_num: Integer; n_points: Integer;
|
||||
cal: PDouble); cdecl; external WDSP_LIB;
|
||||
procedure OpenBuffer(disp: Integer; ss: Integer; LO: Integer;
|
||||
Ipointer: PPVoid; Qpointer: PPVoid); cdecl; external WDSP_LIB;
|
||||
procedure CloseBuffer(disp: Integer; ss: Integer; LO: Integer); cdecl; external WDSP_LIB;
|
||||
procedure Spectrum(disp: Integer; ss: Integer; LO: Integer;
|
||||
pI: PdINREAL; pQ: PdINREAL); cdecl; external WDSP_LIB;
|
||||
procedure Spectrum2(run: Integer; disp: Integer; ss: Integer; LO: Integer;
|
||||
pbuff: PdINREAL); cdecl; external WDSP_LIB;
|
||||
procedure Spectrum0(run: Integer; disp: Integer; ss: Integer; LO: Integer;
|
||||
pbuff: PDouble); cdecl; external WDSP_LIB;
|
||||
procedure SetDisplayDetectorMode(disp: Integer; pixout: Integer; mode: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetDisplayAverageMode(disp: Integer; pixout: Integer; mode: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetDisplayNumAverage(disp: Integer; pixout: Integer; num: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetDisplayAvBackmult(disp: Integer; pixout: Integer; mult: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetDisplaySampleRate(disp: Integer; rate: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetDisplayNormOneHz(disp: Integer; pixout: Integer; norm: Integer); cdecl; external WDSP_LIB;
|
||||
|
||||
// SetAnalyzer — главная функция настройки анализатора (см. WDSP Guide §SetAnalyzer)
|
||||
// void SetAnalyzer(disp, n_pixout, n_fft, typ, flp, sz, bf_sz, win_type,
|
||||
// pi, ovrlp, clp, fscLin, fscHin, n_pix, n_stch,
|
||||
// calset, fmin, fmax, max_w)
|
||||
procedure SetAnalyzer(disp: Integer; n_pixout: Integer; n_fft: Integer;
|
||||
typ: Integer; flp: PInteger; sz: Integer; bf_sz: Integer;
|
||||
win_type: Integer; pi: Double; ovrlp: Integer; clp: Integer;
|
||||
fscLin: Double; fscHin: Double; n_pix: Integer;
|
||||
n_stch: Integer; calset: Integer; fmin: Double;
|
||||
fmax: Double; max_w: Integer); cdecl; external WDSP_LIB;
|
||||
|
||||
procedure ResetPixelBuffers(disp: Integer); cdecl; external WDSP_LIB;
|
||||
function GetDisplayENB(disp: Integer): Double; cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// anf.c
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure SetRXAANFRun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAANFVals(channel: Integer; taps: Integer; delay: Integer;
|
||||
gain: Double; leakage: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAANFTaps(channel: Integer; taps: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAANFDelay(channel: Integer; delay: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAANFGain(channel: Integer; gain: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAANFLeakage(channel: Integer; leakage: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAANFPosition(channel: Integer; position: Integer); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// anr.c
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure SetRXAANRRun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAANRVals(channel: Integer; taps: Integer; delay: Integer;
|
||||
gain: Double; leakage: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAANRTaps(channel: Integer; taps: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAANRDelay(channel: Integer; delay: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAANRGain(channel: Integer; gain: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAANRLeakage(channel: Integer; leakage: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAANRPosition(channel: Integer; position: Integer); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// apfshadow.c (SPCW / Synchronous Peak CW filter)
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure SetRXASPCWSelection(channel: Integer; selection: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXASPCWRun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXASPCWFreq(channel: Integer; f_center: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXASPCWBandwidth(channel: Integer; bandwidth: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXASPCWGain(channel: Integer; gain: Double); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// bandpass.c
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure SetRXABPSRun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXABPSFreqs(channel: Integer; f_low: Double; f_high: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXABPSWindow(channel: Integer; wintype: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXABPSRun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXABPSFreqs(channel: Integer; f_low: Double; f_high: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXABPSWindow(channel: Integer; wintype: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXABandpassRun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXABandpassFreqs(channel: Integer; f_low: Double; f_high: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXABandpassWindow(channel: Integer; wintype: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXABandpassNC(channel: Integer; nc: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXABandpassMP(channel: Integer; mp: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXABandpassRun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXABandpassWindow(channel: Integer; wintype: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXABandpassNC(channel: Integer; nc: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXABandpassMP(channel: Integer; mp: Integer); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// calcc.c (Predistortion / PA calibration)
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure pscc(channel: Integer; size: Integer; tx: PDouble; rx: PDouble); cdecl; external WDSP_LIB;
|
||||
procedure psccF(channel: Integer; size: Integer; Itxbuff: PSingle; Qtxbuff: PSingle;
|
||||
Irxbuff: PSingle; Qrxbuff: PSingle; mox: Integer; solidmox: Integer); cdecl; external WDSP_LIB;
|
||||
procedure PSSaveCorr(channel: Integer; filename: PAnsiChar); cdecl; external WDSP_LIB;
|
||||
procedure PSRestoreCorr(channel: Integer; filename: PAnsiChar); cdecl; external WDSP_LIB;
|
||||
procedure SetPSRunCal(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetPSMox(channel: Integer; mox: Integer); cdecl; external WDSP_LIB;
|
||||
procedure GetPSInfo(channel: Integer; info: PInteger); cdecl; external WDSP_LIB;
|
||||
procedure SetPSReset(channel: Integer; reset: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetPSMancal(channel: Integer; mancal: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetPSAutomode(channel: Integer; automode: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetPSTurnon(channel: Integer; turnon: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetPSControl(channel: Integer; reset: Integer; mancal: Integer;
|
||||
automode: Integer; turnon: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetPSLoopDelay(channel: Integer; delay: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetPSMoxDelay(channel: Integer; delay: Double); cdecl; external WDSP_LIB;
|
||||
function SetPSTXDelay(channel: Integer; delay: Double): Double; cdecl; external WDSP_LIB;
|
||||
procedure SetPSHWPeak(channel: Integer; peak: Double); cdecl; external WDSP_LIB;
|
||||
procedure GetPSHWPeak(channel: Integer; peak: PDouble); cdecl; external WDSP_LIB;
|
||||
procedure GetPSMaxTX(channel: Integer; maxtx: PDouble); cdecl; external WDSP_LIB;
|
||||
procedure SetPSPtol(channel: Integer; ptol: Double); cdecl; external WDSP_LIB;
|
||||
procedure GetPSDisp(channel: Integer; x: PDouble; ym: PDouble; yc: PDouble;
|
||||
ys: PDouble; cm: PDouble; cc: PDouble; cs: PDouble); cdecl; external WDSP_LIB;
|
||||
procedure SetPSFeedbackRate(channel: Integer; rate: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetPSPinMode(channel: Integer; pin: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetPSMapMode(channel: Integer; map: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetPSStabilize(channel: Integer; stbl: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetPSIntsAndSpi(channel: Integer; ints: Integer; spi: Integer); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// cblock.c
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure SetRXACBLRun(channel: Integer; setit: Integer); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// cfcomp.c
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure SetTXACFCOMPRun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXACFCOMPPosition(channel: Integer; pos: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXACFCOMPprofile(channel: Integer; nfreqs: Integer;
|
||||
F: PDouble; G: PDouble; E: PDouble); cdecl; external WDSP_LIB;
|
||||
procedure SetTXACFCOMPPrecomp(channel: Integer; precomp: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXACFCOMPPeqRun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXACFCOMPPrePeq(channel: Integer; prepeq: Double); cdecl; external WDSP_LIB;
|
||||
procedure GetTXACFCOMPDisplayCompression(channel: Integer;
|
||||
comp_values: PDouble; ready: PInteger); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// cfir.c
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure SetTXACFIRRun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXACFIRNC(channel: Integer; nc: Integer); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// channel.c
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure OpenChannel(channel: Integer; in_size: Integer; dsp_size: Integer;
|
||||
input_samplerate: Integer; dsp_rate: Integer; output_samplerate: Integer;
|
||||
atype: Integer; state: Integer; tdelayup: Double; tslewup: Double;
|
||||
tdelaydown: Double; tslewdown: Double; bfo: Integer); cdecl; external WDSP_LIB;
|
||||
procedure CloseChannel(channel: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetType(channel: Integer; atype: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetInputBuffsize(channel: Integer; in_size: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetDSPBuffsize(channel: Integer; dsp_size: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetInputSamplerate(channel: Integer; in_rate: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetDSPSamplerate(channel: Integer; dsp_rate: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetOutputSamplerate(channel: Integer; out_rate: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetAllRates(channel: Integer; in_rate: Integer; dsp_rate: Integer;
|
||||
out_rate: Integer); cdecl; external WDSP_LIB;
|
||||
function SetChannelState(channel: Integer; state: Integer; dmode: Integer): Integer; cdecl; external WDSP_LIB;
|
||||
procedure SetChannelTDelayUp(channel: Integer; time: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetChannelTSlewUp(channel: Integer; time: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetChannelTDelayDown(channel: Integer; time: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetChannelTSlewDown(channel: Integer; time: Double); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// compress.c
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure SetTXACompressorRun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXACompressorGain(channel: Integer; gain: Double); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// dexp.c (Downward EXPander / VOX gate)
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure create_dexp(id: Integer; run_dexp: Integer; size: Integer;
|
||||
ain: PDouble; aout: PDouble; rate: Integer; dettau: Double;
|
||||
tattack: Double; tdecay: Double; thold: Double; exp_ratio: Double;
|
||||
hyst_ratio: Double; attack_thresh: Double; nc: Integer; wtype: Integer;
|
||||
lowcut: Double; highcut: Double; run_filt: Integer; run_vox: Integer;
|
||||
run_audelay: Integer; audelay: Double; pushvox: TPushVoxProc;
|
||||
antivox_run: Integer; antivox_size: Integer; antivox_rate: Integer;
|
||||
antivox_gain: Double; antivox_tau: Double); cdecl; external WDSP_LIB;
|
||||
procedure destroy_dexp(id: Integer); cdecl; external WDSP_LIB;
|
||||
procedure flush_dexp(id: Integer); cdecl; external WDSP_LIB;
|
||||
procedure xdexp(id: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SendCBPushDexpVox(id: Integer; pushvox: TPushVoxProc); cdecl; external WDSP_LIB;
|
||||
procedure SetDEXPRun(id: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetDEXPSize(id: Integer; size: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetDEXPIOBuffers(id: Integer; ain: PDouble; aout: PDouble); cdecl; external WDSP_LIB;
|
||||
procedure SetDEXPRate(id: Integer; rate: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetDEXPDetectorTau(id: Integer; tau: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetDEXPAttackTime(id: Integer; time: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetDEXPReleaseTime(id: Integer; time: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetDEXPHoldTime(id: Integer; time: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetDEXPExpansionRatio(id: Integer; ratio: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetDEXPHysteresisRatio(id: Integer; ratio: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetDEXPAttackThreshold(id: Integer; thresh: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetDEXPFilterTaps(id: Integer; taps: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetDEXPWindowType(id: Integer; atype: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetDEXPLowCut(id: Integer; lowcut: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetDEXPHighCut(id: Integer; highcut: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetDEXPRunSideChannelFilter(id: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetDEXPRunVox(id: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetDEXPRunAudioDelay(id: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetDEXPAudioDelay(id: Integer; delay: Double); cdecl; external WDSP_LIB;
|
||||
procedure GetDEXPPeakSignal(id: Integer; peak: PDouble); cdecl; external WDSP_LIB;
|
||||
procedure SetAntiVOXRun(id: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetAntiVOXSize(id: Integer; size: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetAntiVOXRate(id: Integer; rate: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetAntiVOXGain(id: Integer; gain: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetAntiVOXDetectorTau(id: Integer; tau: Double); cdecl; external WDSP_LIB;
|
||||
procedure SendAntiVOXData(id: Integer; nsamples: Integer; data: PDouble); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// div.c (Diversity combining)
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure create_divEXT(id: Integer; run: Integer; nr: Integer; size: Integer); cdecl; external WDSP_LIB;
|
||||
procedure destroy_divEXT(id: Integer); cdecl; external WDSP_LIB;
|
||||
procedure flush_divEXT(id: Integer); cdecl; external WDSP_LIB;
|
||||
procedure xdivEXT(id: Integer; nsamples: Integer; ain: PPDouble; aout: PDouble); cdecl; external WDSP_LIB;
|
||||
procedure SetEXTDIVRun(id: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetEXTDIVBuffsize(id: Integer; size: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetEXTDIVNr(id: Integer; nr: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetEXTDIVOutput(id: Integer; output: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetEXTDIVRotate(id: Integer; nr: Integer;
|
||||
Irotate: PDouble; Qrotate: PDouble); cdecl; external WDSP_LIB;
|
||||
procedure xdivEXTF(id: Integer; size: Integer; input: PPSingle;
|
||||
Iout: PSingle; Qout: PSingle); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// doublepole.c
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure SetRXADoublepoleRun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXADoublepoleFreqs(channel: Integer; f_center: Double; bandwidth: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXADoublepoleGain(channel: Integer; gain: Double); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// eer.c (Envelope Elimination and Restoration)
|
||||
// ---------------------------------------------------------------------------
|
||||
function create_eer(run: Integer; size: Integer; ain: PDouble; aout: PDouble;
|
||||
outM: PDouble; rate: Integer; mgain: Double; pgain: Double;
|
||||
rundelays: Integer; mdelay: Double; pdelay: Double; amiq: Integer): TEER; cdecl; external WDSP_LIB;
|
||||
procedure destroy_eer(a: TEER); cdecl; external WDSP_LIB;
|
||||
procedure flush_eer(a: TEER); cdecl; external WDSP_LIB;
|
||||
procedure xeer(a: TEER); cdecl; external WDSP_LIB;
|
||||
procedure create_eerEXT(id: Integer; run: Integer; size: Integer; rate: Integer;
|
||||
mgain: Double; pgain: Double; rundelays: Integer; mdelay: Double;
|
||||
pdelay: Double; amiq: Integer); cdecl; external WDSP_LIB;
|
||||
procedure destroy_eerEXT(id: Integer); cdecl; external WDSP_LIB;
|
||||
procedure flush_eerEXT(id: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetEERRun(id: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetEERAMIQ(id: Integer; amiq: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetEERMgain(id: Integer; gain: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetEERPgain(id: Integer; gain: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetEERRunDelays(id: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetEERMdelay(id: Integer; delay: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetEERPdelay(id: Integer; delay: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetEERSize(id: Integer; size: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetEERSamplerate(id: Integer; rate: Integer); cdecl; external WDSP_LIB;
|
||||
procedure pSetEERRun(a: TEER; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure pSetEERAMIQ(a: TEER; amiq: Integer); cdecl; external WDSP_LIB;
|
||||
procedure pSetEERMgain(a: TEER; gain: Double); cdecl; external WDSP_LIB;
|
||||
procedure pSetEERPgain(a: TEER; gain: Double); cdecl; external WDSP_LIB;
|
||||
procedure pSetEERRunDelays(a: TEER; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure pSetEERMdelay(a: TEER; delay: Double); cdecl; external WDSP_LIB;
|
||||
procedure pSetEERPdelay(a: TEER; delay: Double); cdecl; external WDSP_LIB;
|
||||
procedure pSetEERSize(a: TEER; size: Integer); cdecl; external WDSP_LIB;
|
||||
procedure pSetEERSamplerate(a: TEER; rate: Integer); cdecl; external WDSP_LIB;
|
||||
procedure xeerEXTF(id: Integer; inI: PSingle; inQ: PSingle; outI: PSingle;
|
||||
outQ: PSingle; outMI: PSingle; outMQ: PSingle; mox: Integer; size: Integer); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// emnr.c (Enhanced Minimum Noise Reduction)
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure SetRXAEMNRpost2Run(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAEMNRpost2Factor(channel: Integer; factor: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAEMNRpost2Nlevel(channel: Integer; nlevel: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAEMNRpost2Taper(channel: Integer; taper: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAEMNRpost2Rate(channel: Integer; tc: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAEMNRRun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAEMNRgainMethod(channel: Integer; method: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAEMNRnpeMethod(channel: Integer; method: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAEMNRaeRun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAEMNRPosition(channel: Integer; position: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAEMNRaeZetaThresh(channel: Integer; zetathresh: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAEMNRaePsi(channel: Integer; psi: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAEMNRtrainZetaThresh(channel: Integer; thresh: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAEMNRtrainT2(channel: Integer; t2: Double); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// emph.c (FM Pre/De-emphasis)
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure SetTXAFMEmphPosition(channel: Integer; position: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAFMEmphMP(channel: Integer; mp: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAFMEmphNC(channel: Integer; nc: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAFMPreEmphFreqs(channel: Integer; low: Double; high: Double); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// eq.c (Equalizer)
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure SetRXAEQRun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAEQNC(channel: Integer; nc: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAEQMP(channel: Integer; mp: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAEQProfile(channel: Integer; nfreqs: Integer; F: PDouble; G: PDouble); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAEQCtfmode(channel: Integer; mode: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAEQWintype(channel: Integer; wintype: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAGrphEQ(channel: Integer; rxeq: PInteger); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAGrphEQ10(channel: Integer; rxeq: PInteger); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAEQRun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAEQNC(channel: Integer; nc: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAEQMP(channel: Integer; mp: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAEQProfile(channel: Integer; nfreqs: Integer; F: PDouble; G: PDouble); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAEQCtfmode(channel: Integer; mode: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAEQWintype(channel: Integer; wintype: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAEQMethod(channel: Integer; wintype: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAGrphEQ(channel: Integer; txeq: PInteger); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAGrphEQ10(channel: Integer; txeq: PInteger); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// fmd.c (FM Demodulator)
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure SetRXAFMDeviation(channel: Integer; deviation: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXACTCSSFreq(channel: Integer; freq: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXACTCSSRun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAFMNCde(channel: Integer; nc: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAFMMPde(channel: Integer; mp: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAFMNCaud(channel: Integer; nc: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAFMMPaud(channel: Integer; mp: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAFMLimRun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAFMLimGain(channel: Integer; gaindB: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAFMAFFilter(channel: Integer; low: Double; high: Double); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// fmmod.c (FM Modulator)
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure SetTXAFMDeviation(channel: Integer; deviation: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXACTCSSFreq(channel: Integer; freq: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXACTCSSRun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAFMNC(channel: Integer; nc: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAFMMP(channel: Integer; mp: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAFMAFFreqs(channel: Integer; low: Double; high: Double); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// fmsq.c (FM Squelch)
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure SetRXAFMSQRun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAFMSQThreshold(channel: Integer; threshold: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAFMSQNC(channel: Integer; nc: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAFMSQMP(channel: Integer; mp: Integer); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// gain.c
|
||||
// ---------------------------------------------------------------------------
|
||||
function create_gain(run: Integer; prun: PInteger; size: Integer;
|
||||
ain: PDouble; aout: PDouble; Igain: Double; Qgain: Double): TGAIN; cdecl; external WDSP_LIB;
|
||||
procedure destroy_gain(a: TGAIN); cdecl; external WDSP_LIB;
|
||||
procedure flush_gain(a: TGAIN); cdecl; external WDSP_LIB;
|
||||
procedure xgain(a: TGAIN); cdecl; external WDSP_LIB;
|
||||
procedure pSetTXOutputLevel(a: TGAIN; level: Double); cdecl; external WDSP_LIB;
|
||||
procedure pSetTXOutputLevelRun(a: TGAIN; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure pSetTXOutputLevelSize(a: TGAIN; size: Integer); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// gaussian.c
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure SetRXAGaussianRun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAGaussianFreqs(channel: Integer; f_center: Double; bandwidth: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAGaussianGain(channel: Integer; gain: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAGaussianNC(channel: Integer; nc: Integer); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// gen.c (Signal generators)
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure SetRXAPreGenRun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAPreGenMode(channel: Integer; mode: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAPreGenToneMag(channel: Integer; mag: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAPreGenToneFreq(channel: Integer; freq: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAPreGenNoiseMag(channel: Integer; mag: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAPreGenSweepMag(channel: Integer; mag: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAPreGenSweepFreq(channel: Integer; freq1: Double; freq2: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAPreGenSweepRate(channel: Integer; rate: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPreGenRun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPreGenMode(channel: Integer; mode: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPreGenToneMag(channel: Integer; mag: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPreGenToneFreq(channel: Integer; freq: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPreGenNoiseMag(channel: Integer; mag: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPreGenSweepMag(channel: Integer; mag: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPreGenSweepFreq(channel: Integer; freq1: Double; freq2: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPreGenSweepRate(channel: Integer; rate: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPreGenSawtoothMag(channel: Integer; mag: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPreGenSawtoothFreq(channel: Integer; freq: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPreGenTriangleMag(channel: Integer; mag: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPreGenTriangleFreq(channel: Integer; freq: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPreGenPulseMag(channel: Integer; mag: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPreGenPulseFreq(channel: Integer; freq: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPreGenPulseDutyCycle(channel: Integer; dc: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPreGenPulseToneFreq(channel: Integer; freq: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPreGenPulseTransition(channel: Integer; transtime: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPostGenRun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPostGenMode(channel: Integer; mode: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPostGenToneMag(channel: Integer; mag: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPostGenToneFreq(channel: Integer; freq: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPostGenTTMag(channel: Integer; mag1: Double; mag2: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPostGenTTFreq(channel: Integer; freq1: Double; freq2: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPostGenSweepMag(channel: Integer; mag: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPostGenSweepFreq(channel: Integer; freq1: Double; freq2: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPostGenSweepRate(channel: Integer; rate: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPostGenPulseMag(channel: Integer; mag: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPostGenPulseFreq(channel: Integer; freq: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPostGenPulseDutyCycle(channel: Integer; dc: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPostGenPulseToneFreq(channel: Integer; freq: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPostGenPulseTransition(channel: Integer; transtime: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPostGenPulseIQout(channel: Integer; IQout: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPostGenTTPulseMag(channel: Integer; mag1: Double; mag2: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPostGenTTPulseFreq(channel: Integer; freq: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPostGenTTPulseDutyCycle(channel: Integer; dc: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPostGenTTPulseToneFreq(channel: Integer; freq1: Double; freq2: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPostGenTTPulseTransition(channel: Integer; transtime: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPostGenTTPulseIQout(channel: Integer; IQout: Integer); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// iir.c
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure SetRXABiQuadRun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXABiQuadFreq(channel: Integer; freq: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXABiQuadBandwidth(channel: Integer; bw: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXABiQuadGain(channel: Integer; gain: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAmpeakRun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAmpeakNpeaks(channel: Integer; npeaks: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAmpeakFilEnable(channel: Integer; fil: Integer; enable: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAmpeakFilFreq(channel: Integer; fil: Integer; freq: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAmpeakFilBw(channel: Integer; fil: Integer; bw: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAmpeakFilGain(channel: Integer; fil: Integer; gain: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPHROTRun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPHROTCorner(channel: Integer; corner: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPHROTNstages(channel: Integer; nstages: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPHROTReverse(channel: Integer; reverse: Integer); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// impulse_cache.c
|
||||
// ---------------------------------------------------------------------------
|
||||
function save_impulse_cache(path: PAnsiChar): Integer; cdecl; external WDSP_LIB;
|
||||
function read_impulse_cache(path: PAnsiChar): Integer; cdecl; external WDSP_LIB;
|
||||
procedure use_impulse_cache(use: Integer); cdecl; external WDSP_LIB;
|
||||
procedure init_impulse_cache(use: Integer); cdecl; external WDSP_LIB;
|
||||
procedure destroy_impulse_cache; cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// iobuffs.c
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure fexchange0(channel: Integer; ain: PDouble; aout: PDouble; error: PInteger); cdecl; external WDSP_LIB;
|
||||
procedure fexchange2(channel: Integer; Iin: PINREAL; Qin: PINREAL;
|
||||
Iout: POUTREAL; Qout: POUTREAL; error: PInteger); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// iqc.c (IQ Correction)
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure GetTXAiqcValues(channel: Integer; cm: PDouble; cc: PDouble; cs: PDouble); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAiqcValues(channel: Integer; cm: PDouble; cc: PDouble; cs: PDouble); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAiqcSwap(channel: Integer; cm: PDouble; cc: PDouble; cs: PDouble); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAiqcStart(channel: Integer; cm: PDouble; cc: PDouble; cs: PDouble); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAiqcEnd(channel: Integer); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// matchedCW.c
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure SetRXAMatchedRun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAMatchedFreqs(channel: Integer; f_center: Double; bandwidth: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAMatchedGain(channel: Integer; gain: Double); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// meter.c
|
||||
// ---------------------------------------------------------------------------
|
||||
function GetRXAMeter(channel: Integer; mt: Integer): Double; cdecl; external WDSP_LIB;
|
||||
function GetTXAMeter(channel: Integer; mt: Integer): Double; cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// nbp.c (Notch Band Pass)
|
||||
// ---------------------------------------------------------------------------
|
||||
function RXANBPAddNotch(channel: Integer; notch: Integer; fcenter: Double;
|
||||
fwidth: Double; active: Integer): Integer; cdecl; external WDSP_LIB;
|
||||
function RXANBPGetNotch(channel: Integer; notch: Integer; fcenter: PDouble;
|
||||
fwidth: PDouble; active: PInteger): Integer; cdecl; external WDSP_LIB;
|
||||
function RXANBPDeleteNotch(channel: Integer; notch: Integer): Integer; cdecl; external WDSP_LIB;
|
||||
function RXANBPEditNotch(channel: Integer; notch: Integer; fcenter: Double;
|
||||
fwidth: Double; active: Integer): Integer; cdecl; external WDSP_LIB;
|
||||
procedure RXANBPGetNumNotches(channel: Integer; nnotches: PInteger); cdecl; external WDSP_LIB;
|
||||
procedure RXANBPSetTuneFrequency(channel: Integer; tunefreq: Double); cdecl; external WDSP_LIB;
|
||||
procedure RXANBPSetShiftFrequency(channel: Integer; shift: Double); cdecl; external WDSP_LIB;
|
||||
procedure RXANBPSetNotchesRun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure RXANBPSetRun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure RXANBPSetFreqs(channel: Integer; flow: Double; fhigh: Double); cdecl; external WDSP_LIB;
|
||||
procedure RXANBPSetWindow(channel: Integer; wintype: Integer); cdecl; external WDSP_LIB;
|
||||
procedure RXANBPSetNC(channel: Integer; nc: Integer); cdecl; external WDSP_LIB;
|
||||
procedure RXANBPSetMP(channel: Integer; mp: Integer); cdecl; external WDSP_LIB;
|
||||
procedure RXANBPGetMinNotchWidth(channel: Integer; minwidth: PDouble); cdecl; external WDSP_LIB;
|
||||
procedure RXANBPSetAutoIncrease(channel: Integer; autoincr: Integer); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// nob.c (Noise/Impulse Blankers - ANB and NOB)
|
||||
// ---------------------------------------------------------------------------
|
||||
function create_anb(run: Integer; buffsize: Integer; ain: PDouble; aout: PDouble;
|
||||
samplerate: Double; tau: Double; hangtime: Double; advtime: Double;
|
||||
backtau: Double; threshold: Double): TANB; cdecl; external WDSP_LIB;
|
||||
procedure destroy_anb(a: TANB); cdecl; external WDSP_LIB;
|
||||
procedure flush_anb(a: TANB); cdecl; external WDSP_LIB;
|
||||
procedure xanb(a: TANB); cdecl; external WDSP_LIB;
|
||||
procedure pSetRCVRANBRun(a: TANB; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure pSetRCVRANBBuffsize(a: TANB; size: Integer); cdecl; external WDSP_LIB;
|
||||
procedure pSetRCVRANBSamplerate(a: TANB; rate: Integer); cdecl; external WDSP_LIB;
|
||||
procedure pSetRCVRANBTau(a: TANB; tau: Double); cdecl; external WDSP_LIB;
|
||||
procedure pSetRCVRANBHangtime(a: TANB; time: Double); cdecl; external WDSP_LIB;
|
||||
procedure pSetRCVRANBAdvtime(a: TANB; time: Double); cdecl; external WDSP_LIB;
|
||||
procedure pSetRCVRANBBacktau(a: TANB; tau: Double); cdecl; external WDSP_LIB;
|
||||
procedure pSetRCVRANBThreshold(a: TANB; thresh: Double); cdecl; external WDSP_LIB;
|
||||
procedure create_anbEXT(id: Integer; run: Integer; buffsize: Integer;
|
||||
samplerate: Double; tau: Double; hangtime: Double; advtime: Double;
|
||||
backtau: Double; threshold: Double); cdecl; external WDSP_LIB;
|
||||
procedure destroy_anbEXT(id: Integer); cdecl; external WDSP_LIB;
|
||||
procedure flush_anbEXT(id: Integer); cdecl; external WDSP_LIB;
|
||||
procedure xanbEXT(id: Integer; ain: PDouble; aout: PDouble); cdecl; external WDSP_LIB;
|
||||
procedure SetEXTANBRun(id: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetEXTANBBuffsize(id: Integer; size: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetEXTANBSamplerate(id: Integer; rate: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetEXTANBTau(id: Integer; tau: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetEXTANBHangtime(id: Integer; time: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetEXTANBAdvtime(id: Integer; time: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetEXTANBBacktau(id: Integer; tau: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetEXTANBThreshold(id: Integer; thresh: Double); cdecl; external WDSP_LIB;
|
||||
procedure xanbEXTF(id: Integer; I: PSingle; Q: PSingle); cdecl; external WDSP_LIB;
|
||||
|
||||
// NOB (Noise Blanker II)
|
||||
function create_nob(run: Integer; buffsize: Integer; ain: PDouble; aout: PDouble;
|
||||
samplerate: Double; mode: Integer; advslewtime: Double; advtime: Double;
|
||||
hangslewtime: Double; hangtime: Double; max_imp_seq_time: Double;
|
||||
backtau: Double; threshold: Double): TNOB; cdecl; external WDSP_LIB;
|
||||
procedure destroy_nob(a: TNOB); cdecl; external WDSP_LIB;
|
||||
procedure flush_nob(a: TNOB); cdecl; external WDSP_LIB;
|
||||
procedure xnob(a: TNOB); cdecl; external WDSP_LIB;
|
||||
procedure pSetRCVRNOBRun(a: TNOB; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure pSetRCVRNOBMode(a: TNOB; mode: Integer); cdecl; external WDSP_LIB;
|
||||
procedure pSetRCVRNOBBuffsize(a: TNOB; size: Integer); cdecl; external WDSP_LIB;
|
||||
procedure pSetRCVRNOBSamplerate(a: TNOB; rate: Integer); cdecl; external WDSP_LIB;
|
||||
procedure pSetRCVRNOBTau(a: TNOB; tau: Double); cdecl; external WDSP_LIB;
|
||||
procedure pSetRCVRNOBHangtime(a: TNOB; time: Double); cdecl; external WDSP_LIB;
|
||||
procedure pSetRCVRNOBAdvtime(a: TNOB; time: Double); cdecl; external WDSP_LIB;
|
||||
procedure pSetRCVRNOBBacktau(a: TNOB; tau: Double); cdecl; external WDSP_LIB;
|
||||
procedure pSetRCVRNOBThreshold(a: TNOB; thresh: Double); cdecl; external WDSP_LIB;
|
||||
procedure create_nobEXT(id: Integer; run: Integer; mode: Integer; buffsize: Integer;
|
||||
samplerate: Double; slewtime: Double; hangtime: Double; advtime: Double;
|
||||
backtau: Double; threshold: Double); cdecl; external WDSP_LIB;
|
||||
procedure destroy_nobEXT(id: Integer); cdecl; external WDSP_LIB;
|
||||
procedure flush_nobEXT(id: Integer); cdecl; external WDSP_LIB;
|
||||
procedure xnobEXT(id: Integer; ain: PDouble; aout: PDouble); cdecl; external WDSP_LIB;
|
||||
procedure SetEXTNOBRun(id: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetEXTNOBMode(id: Integer; mode: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetEXTNOBBuffsize(id: Integer; size: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetEXTNOBSamplerate(id: Integer; rate: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetEXTNOBTau(id: Integer; tau: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetEXTNOBHangtime(id: Integer; time: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetEXTNOBAdvtime(id: Integer; time: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetEXTNOBBacktau(id: Integer; tau: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetEXTNOBThreshold(id: Integer; thresh: Double); cdecl; external WDSP_LIB;
|
||||
procedure xnobEXTF(id: Integer; I: PSingle; Q: PSingle); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// osctrl.c
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure SetTXAosctrlRun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// patchpanel.c
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure SetRXAPanelRun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAPanelSelect(channel: Integer; select: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAPanelGain1(channel: Integer; gain: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAPanelGain2(channel: Integer; gainI: Double; gainQ: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAPanelPan(channel: Integer; pan: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAPanelCopy(channel: Integer; copy: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAPanelBinaural(channel: Integer; bin: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPanelRun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPanelGain1(channel: Integer; gain: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAPanelSelect(channel: Integer; select: Integer); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// resample.c
|
||||
// ---------------------------------------------------------------------------
|
||||
function create_resample(run: Integer; size: Integer; ain: PDouble; aout: PDouble;
|
||||
in_rate: Integer; out_rate: Integer; fc: Double; ncoef: Integer;
|
||||
gain: Double): TRESAMPLE; cdecl; external WDSP_LIB;
|
||||
procedure destroy_resample(a: TRESAMPLE); cdecl; external WDSP_LIB;
|
||||
procedure flush_resample(a: TRESAMPLE); cdecl; external WDSP_LIB;
|
||||
function xresample(a: TRESAMPLE): Integer; cdecl; external WDSP_LIB;
|
||||
function create_resampleV(in_rate: Integer; out_rate: Integer): Pointer; cdecl; external WDSP_LIB;
|
||||
procedure xresampleV(input: PDouble; output: PDouble; numsamps: Integer;
|
||||
outsamps: PInteger; ptr: Pointer); cdecl; external WDSP_LIB;
|
||||
procedure destroy_resampleV(ptr: Pointer); cdecl; external WDSP_LIB;
|
||||
function create_resampleFV(in_rate: Integer; out_rate: Integer): Pointer; cdecl; external WDSP_LIB;
|
||||
procedure xresampleFV(input: PSingle; output: PSingle; numsamps: Integer;
|
||||
outsamps: PInteger; ptr: Pointer); cdecl; external WDSP_LIB;
|
||||
procedure destroy_resampleFV(ptr: Pointer); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// rmatch.c (Rate Matching buffer)
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure xrmatchIN(b: Pointer; ain: PDouble); cdecl; external WDSP_LIB;
|
||||
procedure xrmatchOUT(b: Pointer; aout: PDouble); cdecl; external WDSP_LIB;
|
||||
procedure getRMatchDiags(b: Pointer; underflows: PInteger; overflows: PInteger;
|
||||
var_: PDouble; ringsize: PInteger; nring: PInteger); cdecl; external WDSP_LIB;
|
||||
procedure resetRMatchDiags(b: Pointer); cdecl; external WDSP_LIB;
|
||||
procedure forceRMatchVar(b: Pointer; force: Integer; fvar: Double); cdecl; external WDSP_LIB;
|
||||
function create_rmatchV(in_size: Integer; out_size: Integer; nom_inrate: Integer;
|
||||
nom_outrate: Integer; ringsize: Integer; var_: Double): Pointer; cdecl; external WDSP_LIB;
|
||||
procedure destroy_rmatchV(ptr: Pointer); cdecl; external WDSP_LIB;
|
||||
procedure setRMatchInsize(ptr: Pointer; insize: Integer); cdecl; external WDSP_LIB;
|
||||
procedure setRMatchOutsize(ptr: Pointer; outsize: Integer); cdecl; external WDSP_LIB;
|
||||
procedure setRMatchNomInrate(ptr: Pointer; nom_inrate: Integer); cdecl; external WDSP_LIB;
|
||||
procedure setRMatchNomOutrate(ptr: Pointer; nom_outrate: Integer); cdecl; external WDSP_LIB;
|
||||
procedure setRMatchRingsize(ptr: Pointer; ringsize: Integer); cdecl; external WDSP_LIB;
|
||||
procedure setRMatchFeedbackGain(b: Pointer; feedback_gain: Double); cdecl; external WDSP_LIB;
|
||||
procedure setRMatchSlewTime(b: Pointer; slew_time: Double); cdecl; external WDSP_LIB;
|
||||
procedure setRMatchSlewTime1(b: Pointer; slew_time: Double); cdecl; external WDSP_LIB;
|
||||
procedure setRMatchPropRingMin(ptr: Pointer; prop_min: Integer); cdecl; external WDSP_LIB;
|
||||
procedure setRMatchPropRingMax(ptr: Pointer; prop_max: Integer); cdecl; external WDSP_LIB;
|
||||
procedure setRMatchFFRingMin(ptr: Pointer; ff_ringmin: Integer); cdecl; external WDSP_LIB;
|
||||
procedure setRMatchFFRingMax(ptr: Pointer; ff_ringmax: Integer); cdecl; external WDSP_LIB;
|
||||
procedure setRMatchFFAlpha(ptr: Pointer; ff_alpha: Double); cdecl; external WDSP_LIB;
|
||||
procedure getControlFlag(ptr: Pointer; control_flag: PInteger); cdecl; external WDSP_LIB;
|
||||
function create_rmatchLegacyV(in_size: Integer; out_size: Integer; nom_inrate: Integer;
|
||||
nom_outrate: Integer; ringsize: Integer): Pointer; cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// rnnr.c (RNN-based Noise Reduction)
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure SetRXARNNRRun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure RNNRloadModel(file_path: PAnsiChar); cdecl; external WDSP_LIB;
|
||||
procedure SetRXARNNRPosition(channel: Integer; position: Integer); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// sbnr.c (Spectral Blind Noise Reduction)
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure SetRXASBNRRun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXASBNRreductionAmount(channel: Integer; amount: Single); cdecl; external WDSP_LIB;
|
||||
procedure SetRXASBNRsmoothingFactor(channel: Integer; factor: Single); cdecl; external WDSP_LIB;
|
||||
procedure SetRXASBNRwhiteningFactor(channel: Integer; factor: Single); cdecl; external WDSP_LIB;
|
||||
procedure SetRXASBNRnoiseRescale(channel: Integer; factor: Single); cdecl; external WDSP_LIB;
|
||||
procedure SetRXASBNRpostFilterThreshold(channel: Integer; threshold: Single); cdecl; external WDSP_LIB;
|
||||
procedure SetRXASBNRnoiseScalingType(channel: Integer; noise_scaling_type: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXASBNRPosition(channel: Integer; position: Integer); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// sender.c
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure SetRXASpectrum(channel: Integer; flag: Integer; disp: Integer;
|
||||
ss: Integer; LO: Integer); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// shift.c
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure SetRXAShiftRun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAShiftFreq(channel: Integer; fshift: Double); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// siphon.c
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure RXAGetaSipF(channel: Integer; aout: PSingle; size: Integer); cdecl; external WDSP_LIB;
|
||||
procedure RXAGetaSipF1(channel: Integer; aout: PSingle; size: Integer); cdecl; external WDSP_LIB;
|
||||
procedure TXASetSipPosition(channel: Integer; pos: Integer); cdecl; external WDSP_LIB;
|
||||
procedure TXASetSipMode(channel: Integer; mode: Integer); cdecl; external WDSP_LIB;
|
||||
procedure TXASetSipDisplay(channel: Integer; disp: Integer); cdecl; external WDSP_LIB;
|
||||
procedure TXAGetaSipF(channel: Integer; aout: PSingle; size: Integer); cdecl; external WDSP_LIB;
|
||||
procedure TXAGetaSipF1(channel: Integer; aout: PSingle; size: Integer); cdecl; external WDSP_LIB;
|
||||
procedure TXASetSipSpecmode(channel: Integer; mode: Integer); cdecl; external WDSP_LIB;
|
||||
procedure TXAGetSpecF1(channel: Integer; aout: PSingle); cdecl; external WDSP_LIB;
|
||||
procedure TXASetSipAllocDisps(channel: Integer; n_alloc_disps: Integer;
|
||||
alloc_run: PInteger; alloc_disp: PInteger); cdecl; external WDSP_LIB;
|
||||
procedure create_siphonEXT(id: Integer; run: Integer; insize: Integer;
|
||||
sipsize: Integer; fftsize: Integer; specmode: Integer); cdecl; external WDSP_LIB;
|
||||
procedure destroy_siphonEXT(id: Integer); cdecl; external WDSP_LIB;
|
||||
procedure flush_siphonEXT(id: Integer); cdecl; external WDSP_LIB;
|
||||
procedure xsiphonEXT(id: Integer; buff: PDouble); cdecl; external WDSP_LIB;
|
||||
procedure GetaSipF1EXT(id: Integer; aout: PSingle; size: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetSiphonInsize(id: Integer; size: Integer); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// slew.c
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure SetTXAuSlewTime(channel: Integer; time: Double); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// snb.c (Spectral Noise Blanker A)
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure SetRXASNBARun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXASNBAovrlp(channel: Integer; ovrlp: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXASNBAasize(channel: Integer; size: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXASNBAnpasses(channel: Integer; npasses: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXASNBAk1(channel: Integer; k1: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXASNBAk2(channel: Integer; k2: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXASNBAbridge(channel: Integer; bridge: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXASNBApresamps(channel: Integer; presamps: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXASNBApostsamps(channel: Integer; postsamps: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXASNBApmultmin(channel: Integer; pmultmin: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXASNBAOutputBandwidth(channel: Integer; flow: Double; fhigh: Double); cdecl; external WDSP_LIB;
|
||||
procedure RXABPSNBASetNC(channel: Integer; nc: Integer); cdecl; external WDSP_LIB;
|
||||
procedure RXABPSNBASetMP(channel: Integer; mp: Integer); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// ssql.c (Signal Squelch)
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure SetRXASSQLRun(channel: Integer; run: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXASSQLThreshold(channel: Integer; threshold: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXASSQLTauMute(channel: Integer; tau_mute: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXASSQLTauUnMute(channel: Integer; tau_unmute: Double); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// utilities.c
|
||||
// ---------------------------------------------------------------------------
|
||||
function malloc0(size: Integer): Pointer; cdecl; external WDSP_LIB;
|
||||
function NewCriticalSection: Pointer; cdecl; external WDSP_LIB;
|
||||
procedure DestroyCriticalSection(cs_ptr: TLPCRITICAL_SECTION); cdecl; external WDSP_LIB;
|
||||
procedure analyze_bandpass_filter(N: Integer; f_low: Double; f_high: Double;
|
||||
samplerate: Double; wintype: Integer; rtype: Integer; scale: Double); cdecl; external WDSP_LIB;
|
||||
procedure print_buffer_parameters(filename: PAnsiChar; channel: Integer); cdecl; external WDSP_LIB;
|
||||
function create_bfcu(id: Integer; min_size: Integer; max_size: Integer;
|
||||
rate: Double; corner: Double; points: Integer): Integer; cdecl; external WDSP_LIB;
|
||||
procedure destroy_bfcu(id: Integer); cdecl; external WDSP_LIB;
|
||||
procedure getFilterCorners(id: Integer; lower_index: PInteger; upper_index: PInteger); cdecl; external WDSP_LIB;
|
||||
procedure getFilterCurve(id: Integer; size: Integer; w_type: Integer;
|
||||
index_low: Integer; index_high: Integer; segment: PDouble); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// varsamp.c
|
||||
// ---------------------------------------------------------------------------
|
||||
function create_varsampV(in_rate: Integer; out_rate: Integer; R: Integer): Pointer; cdecl; external WDSP_LIB;
|
||||
procedure xvarsampV(input: PDouble; output: PDouble; numsamps: Integer;
|
||||
var_: Double; outsamps: PInteger; ptr: Pointer); cdecl; external WDSP_LIB;
|
||||
procedure destroy_varsampV(ptr: Pointer); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// version.c
|
||||
// ---------------------------------------------------------------------------
|
||||
function GetWDSPVersion: Integer; cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// wcpAGC.c (Wideband Constant Power AGC)
|
||||
// ---------------------------------------------------------------------------
|
||||
procedure SetRXAAGCMode(channel: Integer; mode: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAAGCAttack(channel: Integer; attack: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAAGCDecay(channel: Integer; decay: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAAGCHang(channel: Integer; hang: Integer); cdecl; external WDSP_LIB;
|
||||
procedure GetRXAAGCHangLevel(channel: Integer; hangLevel: PDouble); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAAGCHangLevel(channel: Integer; hangLevel: Double); cdecl; external WDSP_LIB;
|
||||
procedure GetRXAAGCHangThreshold(channel: Integer; hangthreshold: PInteger); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAAGCHangThreshold(channel: Integer; hangthreshold: Integer); cdecl; external WDSP_LIB;
|
||||
procedure GetRXAAGCThresh(channel: Integer; thresh: PDouble; size: Double; rate: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAAGCThresh(channel: Integer; thresh: Double; size: Double; rate: Double); cdecl; external WDSP_LIB;
|
||||
procedure GetRXAAGCTop(channel: Integer; max_agc: PDouble); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAAGCTop(channel: Integer; max_agc: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAAGCSlope(channel: Integer; slope: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAAGCFixed(channel: Integer; fixed_agc: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetRXAAGCMaxInputLevel(channel: Integer; level: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAALCSt(channel: Integer; state: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAALCAttack(channel: Integer; attack: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAALCDecay(channel: Integer; decay: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAALCHang(channel: Integer; hang: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXAALCMaxGain(channel: Integer; maxgain: Double); cdecl; external WDSP_LIB;
|
||||
procedure SetTXALevelerSt(channel: Integer; state: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXALevelerAttack(channel: Integer; attack: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXALevelerDecay(channel: Integer; decay: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXALevelerHang(channel: Integer; hang: Integer); cdecl; external WDSP_LIB;
|
||||
procedure SetTXALevelerTop(channel: Integer; maxgain: Double); cdecl; external WDSP_LIB;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// wisdom.c (FFTW wisdom)
|
||||
// ---------------------------------------------------------------------------
|
||||
function wisdom_get_status: PAnsiChar; cdecl; external WDSP_LIB;
|
||||
function WDSPwisdom(directory: PAnsiChar): Integer; cdecl; external WDSP_LIB;
|
||||
|
||||
implementation
|
||||
|
||||
end.
|
||||
Reference in New Issue
Block a user