Event Manager is a global object accessible via OccViewer.eventManager, responsible for managing event handlers (subscribing and unsubscribing callbacks).

interface EventManager {
    addEvent(theEventName: string): void;
    addEventListener(
        theEventName: string,
        theCallback: IObservableCallback | (theContext: number) => number,
    ): void;
    createIObservableCallback(
        theCallback: (theValue: number) => number,
    ): IObservableCallback;
    emit(theEventName: string, theContext: number): number;
    getEvent(theEventName: string): Observable;
    getLastMouseEventInfo(): MouseEventInfo;
    removeEventListener(
        theEventName: string,
        theCallback: IObservableCallback | (theContext: number) => number,
        theToClearData?: boolean,
    ): void;
}

Methods

  • Create new event by string name.

    Parameters

    • theEventName: string

      name of event

    Returns void

    no return value.

  • Add event listener based on event name and OccViewer.IObservableCallback or regular function callback.

    Parameters

    • theEventName: string

      name of event

    • theCallback: IObservableCallback | (theContext: number) => number

      callback

    Returns void

  • It will create C++ raw pointer callback wrapper. To free allocated memory when it doesn't needed any more call delete function of created object or call removeEventListener with theToClearData = true.

    Parameters

    • theCallback: (theValue: number) => number

      name

    Returns IObservableCallback

  • Emit event by its name. It call callbacks of all event listeners of this event.

    Parameters

    • theEventName: string

      name of event

    • theContext: number

    Returns number

  • Return the event by its name. If event doesn't exists it will create new one.

    Parameters

    • theEventName: string

      name of event.

    Returns Observable

    the observable.

  • Unsubscribe OccViewer.IObservableCallback or function based on event name.

    Parameters

    • theEventName: string

      name of event

    • theCallback: IObservableCallback | (theContext: number) => number

      callback to unsubscribe

    • OptionaltheToClearData: boolean

      Frees IObservableCallback memory (true by default). Makes sense only IObservableCallback.

    Returns void