UNPKG

@woosh/meep-engine

Version:

Pure JavaScript game engine. Fully featured and production ready.

215 lines 4.8 kB
/** * @class */ export class SoundEmitter { /** * * @param json * @returns {SoundEmitter} */ static fromJSON(json: any): SoundEmitter; /** * @readonly * @type {List<SoundTrack>} */ readonly tracks: List<SoundTrack>; /** * * @type {String|SoundEmitterChannels|null} */ channel: string | SoundEmitterChannels | null; /** * * @type {number} * @private */ private __distanceMin; /** * * @type {number} * @private */ private __distanceMax; /** * @deprecated * @type {number} * @private */ private __distanceRolloff; /** * TODO add to binary serialization * @type {SoundPanningModelType} */ panningModel: SoundPanningModelType; /** * Type of attenuation used for sound fall-off, this is only used if Attenuation flag is set * @type {SoundAttenuationFunction|number} */ attenuation: SoundAttenuationFunction | number; /** * * @type {number|SoundEmitterFlags} */ flags: number | SoundEmitterFlags; /** * @readonly */ readonly nodes: { /** * @type {GainNode} */ volume: GainNode; /** * @type {PannerNode} */ panner: PannerNode; /** * @type {GainNode} */ attenuation: GainNode; /** * One of the other nodes, depending on the configuration * @type {AudioNode} */ endpoint: AudioNode; }; /** * * @type {Vector1} */ volume: Vector1; /** * @readonly * @type {BvhClient} */ readonly bvh: BvhClient; /** * * @param {SoundEmitter} other * @returns number */ compare(other: SoundEmitter): any; /** * * @param {number|SoundEmitterFlags} flag * @returns {void} */ setFlag(flag: number | SoundEmitterFlags): void; /** * * @param {number|SoundEmitterFlags} flag * @returns {void} */ clearFlag(flag: number | SoundEmitterFlags): void; /** * * @param {number|SoundEmitterFlags} flag * @param {boolean} value */ writeFlag(flag: number | SoundEmitterFlags, value: boolean): void; /** * * @param {number|SoundEmitterFlags} flag * @returns {boolean} */ getFlag(flag: number | SoundEmitterFlags): boolean; /** * @deprecated * @param {boolean} v */ set isPositioned(arg: boolean); /** * @deprecated * @return {boolean} */ get isPositioned(): boolean; /** * @return {AudioNode} */ getTargetNode(): AudioNode; /** * @returns {boolean} * @param {SoundEmitter} other */ equals(other: SoundEmitter): boolean; /** * * @return {number} */ hash(): number; /** * * @param {AudioContext} ctx */ buildNodes(ctx: AudioContext): void; /** * @private * @param {number} distance */ private writeAttenuationVolume; /** * @param {number} v */ set distanceMin(arg: number); /** * * @returns {number} */ get distanceMin(): number; /** * @param {number} v */ set distanceMax(arg: number); /** * * @returns {number} */ get distanceMax(): number; /** * @deprecated * @param {number} v */ set distanceRolloff(arg: number); /** * @deprecated * @returns {number} */ get distanceRolloff(): number; /** * * @param {number} x * @param {number} y * @param {number} z */ updatePosition(x: number, y: number, z: number): void; /** * * @param {number} [duration] fade duration in seconds * @param startAfter */ fadeOutAllTracks(duration?: number, startAfter?: number): void; stopAllTracks(): void; toJSON(): { isPositioned: boolean; isAttenuated: boolean; channel: any; volume: number; tracks: any; distanceMin: number; distanceMax: number; attenuation: string; panningModel: string; }; fromJSON(json: any): void; } export namespace SoundEmitter { let typeName: string; } import List from '../../../../core/collection/list/List.js'; import { SoundTrack } from "./SoundTrack.js"; import { SoundPanningModelType } from "./SoundPanningModelType.js"; import { SoundAttenuationFunction } from "./SoundAttenuationFunction.js"; import { SoundEmitterFlags } from "./SoundEmitterFlags.js"; import Vector1 from "../../../../core/geom/Vector1.js"; import { BvhClient } from "../../../../core/bvh2/bvh3/BvhClient.js"; //# sourceMappingURL=SoundEmitter.d.ts.map