@rfkit/spectrum-analyzer
Version:
A high-performance spectrum analyzer library for RF signal processing, supporting real-time spectrum analysis, waterfall display, and multi-segment frequency scanning
72 lines (71 loc) • 3.18 kB
TypeScript
import type { CursorIndexData, TemplateOverData, TimestampedFloat32Array } from './types';
export declare const arrayKeepAttribute: (source: Float32Array & {
max?: number;
maxIndex?: number;
timestamp?: number;
progress?: number;
}, target: Float32Array & {
max?: number;
maxIndex?: number;
timestamp?: number;
progress?: number;
}) => void;
export declare const clamp: (value: number, min: number, max: number) => number;
export declare const leftToIndex: (left: number, length: number) => number;
export declare const resolveCursorIndexByLeft: (left: number | undefined, outputLength: number, maxPoints: number) => CursorIndexData | undefined;
export declare const resample: ({ realData, antennaFactorData, antennaFactorSwitch, outputPoints }: {
realData: TimestampedFloat32Array;
antennaFactorData: Float32Array;
antennaFactorSwitch?: boolean;
outputPoints: number;
}) => {
realOutputData: TimestampedFloat32Array;
srcIndexCache: Uint32Array;
};
export declare const resampleMultiple: ({ antennaFactorData, antennaFactorSwitch, outputPoints, realData, maxData, minData, avgData, templateData, backgroundNoiseData, thresholdData, fluorescenceData, occupancyData, enablePeakStats, maxPeaks, outputRangeStart }: {
antennaFactorData: Float32Array;
antennaFactorSwitch?: boolean;
outputPoints: number;
realData: TimestampedFloat32Array;
maxData?: Float32Array;
minData?: Float32Array;
avgData?: Float32Array;
templateData?: Float32Array;
occupancyData?: Float32Array;
backgroundNoiseData?: Float32Array;
thresholdData?: Float32Array;
fluorescenceData?: Map<number, number>[];
enablePeakStats?: boolean;
maxPeaks?: number;
outputRangeStart?: number;
}) => {
realOutputData: TimestampedFloat32Array;
maxOutputData: Float32Array;
minOutputData: Float32Array;
avgOutputData: Float32Array;
templateOutputData: Float32Array;
occupancyOutputData: Float32Array;
backgroundNoiseOutputData: Float32Array;
thresholdOutputData: Float32Array;
srcIndexCache: Uint32Array;
fluorescenceOutputData: Map<number, number>[];
};
export declare const resampleExtraData: (extraData: Record<string, Float32Array>, antennaFactorData: Float32Array, antennaFactorSwitch: boolean, srcIndexCache: Uint32Array, getOutputData: (data: Float32Array) => Float32Array) => Record<string, Float32Array>;
export declare const findExceedingDatas: ({ realData, maxData, minData, templateData, tolerance }: {
realData: TimestampedFloat32Array;
maxData: Float32Array;
minData: Float32Array;
templateData: Float32Array;
tolerance?: number;
}) => TemplateOverData[];
export declare const findExceedingDatasIncremental: ({ realData, maxData, minData, templateData, tolerance, startIndex, endIndex, previousSegments }: {
realData: TimestampedFloat32Array;
maxData: Float32Array;
minData: Float32Array;
templateData: Float32Array;
tolerance?: number;
startIndex: number;
endIndex: number;
previousSegments?: TemplateOverData[];
}) => TemplateOverData[];
export declare function isAllValid(arr: Float32Array): boolean;