/** @packageDocumentation * Plugin Basiskomponente, von der alle Plungins abgeleitet sind * * Letzte Aenderung: 28.06.2021 * Status: rot * * @module core/plugin * @author SB */ import { OnSpeechInitFunc, OnSpeechErrorFunc, SpeechErrorFunc } from '../interface/speech-function.type'; import { ErrorBase } from '../error/error-base'; import { IPlugin } from './plugin.interface'; /** * Definiert die Basisklasse aller Plugins * * @export * @class AudioPlugin * @implements {IPlugin} */ export declare class Plugin extends ErrorBase implements IPlugin { private mPluginName; protected mOnInitFunc: OnSpeechInitFunc; protected mOnErrorFunc: OnSpeechErrorFunc; private mInitFlag; private mActiveFlag; /** * Creates an instance of Plugin. * * @param {string} aPluginName - Name des Plugins * @param {boolean} aRegisterFlag - true, wenn Plugin in PluginManager eingetragen werden soll */ constructor(aPluginName: string, aRegisterFlag?: boolean); /** * pruefen auf Mock-Plugin zum Testen * * @return {boolean} mockFlag - true, wenn Plugin ein Mock zum Testen ist */ isMock(): boolean; /** * Rueckgabe eines logischen Plugin-Typs * * @return {string} pluginType - logischer Typ des Plugins fuer unterschiedliche Anwendungsschnittstellen * @memberof IPlugin */ getType(): string; /** * Rueckgabe der Plugin-Klasse * * @return {string} pluginClass - konkrete Klasse des Plugins */ getClass(): string; /** * Rueckgabe des Plugin-Namens * * @return {string} pluginName - Rueckgabe des Plugin-Namens */ getName(): string; /** * Optionen eintragen * * @param aOption - Parameter * @returns Fehlercode 0 oder -1 */ protected _setOption(aOption: any): number; /** * initialisert das Plugin * * erlaubte optionale Parameter: * * activeFlag - legt fest, ob das Plugin zum Start aktiviert ist oder nicht * errorOutputFlag - legt fest, ob die Fehlerausgabe auf der Konsole erfolgt * * * @param {any} aOption - optionale Parameter fuer die Konfiguration des Plugins * * @return {number} errorCode (0,-1) - Fehlercode */ init(aOption?: any): number; /** * gibt das Plugin frei * * @return {number} errorCode (0,-1) - Fehlercode * @memberof IPlugin */ done(): number; /** * setzt das Plugin wieder auf Defaultwerte und uebergebene optionale Parameter. * Die Fehlerausgabe wird nicht zurueckgesetzt. * * @param {any} aOption - optionale Parameter * * @return {number} errorCode (0,-1) - Fehlercode */ reset(aOption?: any): number; /** * pruefen auf initialisertes Plugin * * @return {boolean} initFlag - true, Plugin ist initialisiert, false sonst * @memberof IPlugin */ isInit(): boolean; /** * internes loeschen des Init-Flags, falls Init abgebrochen werden muss * * @protected */ protected _clearInit(): void; /** * Dynamische Konfiguration des Plugins * * @param {any} aFeatureInfo - Konfigurationsdaten */ setFeatureList(aFeatureInfo: any): number; /** * pruefen, ob Plugin aktiv ist * * @return {boolean} Aktiv ein oder aus */ isActive(): boolean; /** * Plugin aktiv setzen (Default) * * @return {number} Fehlercode 0 oder -1 */ setActiveOn(): number; /** * Plugin deaktivieren * * @return {number} */ setActiveOff(): number; /** * Rueckgabe der internen Fehlerfunktion fuer innere Klassen * * @private * @return {SpeechErrorFunc} Rueckgabe der Fehlerfunktion fuer ErrorBase * @memberof Plugin */ protected _getErrorOutputFunc(): SpeechErrorFunc; /** * Ereignisfunktion fuer Init aufrufen * * @private * @param {string} aPluginName - Name des initialiserten Plugins * * @return {number} errorCode(0,-1) */ protected _onInit(): number; /** * Ereignisfunktion fuer Fehler aufrufen * * @private * @param {any} aError - Error Datentransferobjekt * @return {number} errorCode(0,-1) */ protected _onError(aError: any): number; /** * Init-Event Funktion eintragen * * @param {OnSpeechInitFunc} aOnInitFunc */ set onInit(aOnInitFunc: OnSpeechInitFunc); /** * Init-Event Funktion zurueckgeben * * @readonly * @type {OnSpeechInitFunc} */ get onInit(): OnSpeechInitFunc; /** * Error-Event Funktion eintragen * * @param {OnSpeechErrorFunc} aOnErrorFunc */ set onError(aOnErrorFunc: OnSpeechErrorFunc); /** * Error-Event Funktion zurueckgeben * * @readonly * @type {OnSpeechErrorFunc} */ get onError(): OnSpeechErrorFunc; /** * Fuehrt Testkommandos aus, um interne Tests ablaufen lassen zu koennen * @param {string} aTestCommand - Testkommando * @param {*} aTestData - optionale Testdaten * * @return {*} Rueckgabe der Testergebnisse */ test(aTestCommand: string, aTestData?: any): any; }