import { IOcaParameterMask } from '../../types/OcaParameterMask.js'; import { IOcaSweepType, OcaSweepType } from '../../types/OcaSweepType.js'; import { IOcaWaveformType, OcaWaveformType, } from '../../types/OcaWaveformType.js'; import { Arguments } from '../arguments.js'; import { PropertyEvent } from '../property_event.js'; import { RemoteDevice } from '../remote_device.js'; import { OcaActuator } from './OcaActuator.js'; /** * Multiwaveform signal generator with optional sweep capability. * @extends OcaActuator * @class OcaSignalGenerator */ export declare class OcaSignalGenerator extends OcaActuator { /** * This event is emitted whenever Frequency1 changes. */ OnFrequency1Changed: PropertyEvent; /** * This event is emitted whenever Frequency2 changes. */ OnFrequency2Changed: PropertyEvent; /** * This event is emitted whenever Level changes. */ OnLevelChanged: PropertyEvent; /** * This event is emitted whenever Waveform changes. */ OnWaveformChanged: PropertyEvent; /** * This event is emitted whenever SweepType changes. */ OnSweepTypeChanged: PropertyEvent; /** * This event is emitted whenever SweepTime changes. */ OnSweepTimeChanged: PropertyEvent; /** * This event is emitted whenever SweepRepeat changes. */ OnSweepRepeatChanged: PropertyEvent; /** * This event is emitted whenever Generating changes. */ OnGeneratingChanged: PropertyEvent; constructor(objectNumber: number, device: RemoteDevice); /** * Gets the value and limits of the **Frequency1** property. * The return values of this method are * * - Frequency of type ``number`` * - minFrequency of type ``number`` * - maxFrequency of type ``number`` * * @method OcaSignalGenerator#GetFrequency1 * @returns {Promise>} */ GetFrequency1(): Promise>; /** * Sets the value of the **Frequency1** property. * * @method OcaSignalGenerator#SetFrequency1 * @param {number} Frequency * * @returns {Promise} */ SetFrequency1(Frequency: number): Promise; /** * Gets the value and limits of the **Frequency2** property.. * The return values of this method are * * - frequency of type ``number`` * - minFrequency of type ``number`` * - maxFrequency of type ``number`` * * @method OcaSignalGenerator#GetFrequency2 * @returns {Promise>} */ GetFrequency2(): Promise>; /** * Sets the value of the **Frequency2** property. * * @method OcaSignalGenerator#SetFrequency2 * @param {number} frequency * * @returns {Promise} */ SetFrequency2(frequency: number): Promise; /** * Gets the value and limits of the **Level** property. * The return values of this method are * * - Level of type ``number`` * - minLevel of type ``number`` * - maxLevel of type ``number`` * * @method OcaSignalGenerator#GetLevel * @returns {Promise>} */ GetLevel(): Promise>; /** * Sets the value of the **Level** property. * * @method OcaSignalGenerator#SetLevel * @param {number} Level * * @returns {Promise} */ SetLevel(Level: number): Promise; /** * Gets the value of the Waveform property. * * @method OcaSignalGenerator#GetWaveform * @returns {Promise} * A promise which resolves to a single value of type :class:`OcaWaveformType`. */ GetWaveform(): Promise; /** * Sets the value of the **Waveform** property. * * @method OcaSignalGenerator#SetWaveform * @param {IOcaWaveformType} waveform * * @returns {Promise} */ SetWaveform(waveform: IOcaWaveformType): Promise; /** * Gets the value of the **SweepType** property. * * @method OcaSignalGenerator#GetSweepType * @returns {Promise} * A promise which resolves to a single value of type :class:`OcaSweepType`. */ GetSweepType(): Promise; /** * Sets the value of the **SweepType** property. * * @method OcaSignalGenerator#SetSweepType * @param {IOcaSweepType} sweepType * * @returns {Promise} */ SetSweepType(sweepType: IOcaSweepType): Promise; /** * Gets the value and limits of the **SweepTime** property. * The return values of this method are * * - sweepTime of type ``number`` * - minSweepTime of type ``number`` * - maxSweepTime of type ``number`` * * @method OcaSignalGenerator#GetSweepTime * @returns {Promise>} */ GetSweepTime(): Promise>; /** * Gets the value of the **SweepTime** property. * * @method OcaSignalGenerator#SetSweepTime * @param {number} sweepTime * * @returns {Promise} */ SetSweepTime(sweepTime: number): Promise; /** * Gets the value of the **SweepRepeat** property. * * @method OcaSignalGenerator#GetSweepRepeat * @returns {Promise} * A promise which resolves to a single value of type ``boolean``. */ GetSweepRepeat(): Promise; /** * Sets the value of the **SweepRepeat** property. * * @method OcaSignalGenerator#SetSweepRepeat * @param {boolean} sweepRepeat * * @returns {Promise} */ SetSweepRepeat(sweepRepeat: boolean): Promise; /** * Gets the value of the **Generating** property. * * @method OcaSignalGenerator#GetGenerating * @returns {Promise} * A promise which resolves to a single value of type ``boolean``. */ GetGenerating(): Promise; /** * Starts the signal generator. * * @method OcaSignalGenerator#Start * @returns {Promise} */ Start(): Promise; /** * Stops the signal generator. * * @method OcaSignalGenerator#Stop * @returns {Promise} */ Stop(): Promise; /** * Sets some or all signal generation parameters. The action of this method is * atomic - if any of the value changes fails, none of the changes are made. * * @method OcaSignalGenerator#SetMultiple * @param {IOcaParameterMask} Mask * @param {number} Frequency1 * @param {number} Frequency2 * @param {number} Level * @param {IOcaWaveformType} Waveform * @param {IOcaSweepType} SweepType * @param {number} SweepTime * @param {boolean} SweepRepeat * * @returns {Promise} */ SetMultiple( Mask: IOcaParameterMask, Frequency1: number, Frequency2: number, Level: number, Waveform: IOcaWaveformType, SweepType: IOcaSweepType, SweepTime: number, SweepRepeat: boolean ): Promise; }