UNPKG

@thi.ng/dsp

Version:

Composable signal generators, oscillators, filters, FFT, spectrum, windowing & related DSP utils

44 lines 1.8 kB
import type { IProc } from "./api.js"; import { AProc } from "./aproc.js"; /** * Composes the given {@link IProc}s into a single new processor instance. The * returned `IProc` processes the given procs in serial (sequence), i.e. output * from 1st proc is used as input for 2nd etc. * * @remarks * Provides optimized (loop free) versions for 2-4 inputs * * @param a - * @param b - */ export declare function serial<A, B, C>(a: IProc<A, B>, b: IProc<B, C>): IProc<A, C>; export declare function serial<A, B, C, D>(a: IProc<A, B>, b: IProc<B, C>, c: IProc<C, D>): IProc<A, D>; export declare function serial<A, B, C, D, E>(a: IProc<A, B>, b: IProc<B, C>, c: IProc<C, D>, d: IProc<D, E>): IProc<A, E>; export declare function serial<A, B, C, D, E>(a: IProc<A, B>, b: IProc<B, C>, c: IProc<C, D>, d: IProc<D, E>, ...procs: IProc<any, any>[]): IProc<A, any>; export declare class Serial2<A, B, C> extends AProc<A, C> { protected _a: IProc<A, B>; protected _b: IProc<B, C>; constructor(_a: IProc<A, B>, _b: IProc<B, C>); next(x: A): C; } export declare class Serial3<A, B, C, D> extends AProc<A, D> { protected _a: IProc<A, B>; protected _b: IProc<B, C>; protected _c: IProc<C, D>; constructor(_a: IProc<A, B>, _b: IProc<B, C>, _c: IProc<C, D>); next(x: A): D; } export declare class Serial4<A, B, C, D, E> extends AProc<A, E> { protected _a: IProc<A, B>; protected _b: IProc<B, C>; protected _c: IProc<C, D>; protected _d: IProc<D, E>; constructor(_a: IProc<A, B>, _b: IProc<B, C>, _c: IProc<C, D>, _d: IProc<D, E>); next(x: A): E; } export declare class Serial extends AProc<any, any> { protected _procs: IProc<any, any>[]; constructor(_procs: IProc<any, any>[]); next(x: any): any; } //# sourceMappingURL=serial.d.ts.map