File

src/loaders/event-data-loader.ts

Description

Event data loader for implementing different event data loaders.

Index

Methods

Methods

addLabelToEventObject
addLabelToEventObject(label: string, collection: string, indexInCollection: number)

Add a label to an event object. Returns a unique label ID.

Parameters :
Name Type Optional
label string No
collection string No
indexInCollection number No
Returns : string
buildEventData
buildEventData(eventData: PhoenixEventData, graphicsLibrary: ThreeManager, ui: UIManager, infoLogger: InfoLogger)

Load one event into the graphics library and UI.

Parameters :
Name Type Optional
eventData PhoenixEventData No
graphicsLibrary ThreeManager No
ui UIManager No
infoLogger InfoLogger No
Returns : void
getCollection
getCollection(collectionName: string)

Get all objects in a collection by name.

Parameters :
Name Type Optional
collectionName string No
Returns : any
getCollections
getCollections()

Get collection names grouped by object type.

Returns : literal type
getEventMetadata
getEventMetadata()

Get metadata for the current event.

Returns : any[]
getEventsList
getEventsList(eventsData: PhoenixEventsData)

Get keys of all events in the container.

Parameters :
Name Type Optional
eventsData PhoenixEventsData No
Returns : string[]
getLabelsObject
getLabelsObject()

Get the labels object.

Returns : literal type
import { InfoLogger } from '../helpers/info-logger';
import { ThreeManager } from '../managers/three-manager/index';
import { UIManager } from '../managers/ui-manager/index';
import type {
  PhoenixEventData,
  PhoenixEventsData,
} from '../lib/types/event-data';

/**
 * Event data loader for implementing different event data loaders.
 */
export interface EventDataLoader {
  /** Load one event into the graphics library and UI. */
  buildEventData(
    eventData: PhoenixEventData,
    graphicsLibrary: ThreeManager,
    ui: UIManager,
    infoLogger: InfoLogger,
  ): void;

  /** Get keys of all events in the container. */
  getEventsList(eventsData: PhoenixEventsData): string[];

  /** Get collection names grouped by object type. */
  getCollections(): { [key: string]: string[] };

  /** Get all objects in a collection by name. */
  getCollection(collectionName: string): any;

  /** Get metadata for the current event. */
  getEventMetadata(): any[];

  /** Add a label to an event object. Returns a unique label ID. */
  addLabelToEventObject(
    label: string,
    collection: string,
    indexInCollection: number,
  ): string;

  /** Get the labels object. */
  getLabelsObject(): { [key: string]: any };
}

results matching ""

    No results matching ""