/** @packageDocumentation * Verwaltet alle Factories des Systems. Ist eine statische Klasse. * * Letzte Aenderung: 28.06.2021 * Status: gruen * * @module core/factory * @author SB */ import { SpeechErrorFunc } from '../interface/speech-function.type'; import { IFactory } from './factory.interface'; import { Factory } from './factory'; /** * statische Klasse FactoryManager */ export declare class FactoryManager { /** * statische Liste aller Builder im System */ private static mFactoryList; /** * statische ErrorBase fuer die Fehlerbehandlung */ private static mErrorBase; private constructor(); static setErrorOutputOn(): void; static setErrorOutputOff(): void; /** * Eintragen einer Fehlerbehandlungsfunktion * * @param {SpeechErrorFunc} aErrorFunc - Fehlerbehandlungsfunktion */ static setErrorOutputFunc(aErrorFunc: SpeechErrorFunc): void; /** * Rueckgabe der Anzahl vorhandener Factories * * @return {number} size - Anzahl der Factories in der Liste */ static getSize(): number; /** * Gibt eine neue oder bereits vorhandene Factory zurueck * * @param {string} aFactoryName - Name der Factory * @param {FactoryClass} [aFactoryClass] - Klasse der Factory * * @return {IFactory} factory - gibt ein Objekt von Factory zurueck oder null */ static get(aFactoryName: string, aFactoryClass?: typeof Factory): IFactory; /** * Zurueckgeben einer Factory * * @param {string} aFactoryName - Name der Factory * @returns {IFactory} - Factory Instanz */ static find(aFactoryName: string): IFactory; /** * Eintragen einer Factory * * @param {string} aFactoryName - Name der Factory * @param {IFactory} aFactory - Factory Instanz * * @return {number} Fehlercode 0 oder -1 */ static insert(aFactoryName: string, aFactory: IFactory): number; /** * Entfernen einer Factory aus der Liste * * @param {string} aFactoryName - Name der Factory * * @return {number} Fehlercode 0 oder -1 */ static remove(aFactoryName: string): number; /** * Loeschen aller Factories * * @return {number} Fehlercode 0 oder -1 */ static clear(): number; }