3D-City Model
    Preparing search index...

    FeatureRegistry – Central registry for storing, retrieving, and managing features (by UUID). Handles registration, deregistration, lookup, and resolves pending promises for features that may be registered after the lookup request is made (enabling asynchronous behavior).

    Exposes both raw Promise-based lookup (getFeatureByUUID) and observable array/object management.

    registerFeature(feature) - Registers a feature (wrapping as Feature if needed).

    deregisterFeature(feature) - Deregisters and rejects any pending promises for it.

    getFeatureByUUID(uuid) - Returns a Promise resolving to the feature(s) by UUID.

    getObjectByUUID(uuid) - Returns a RegistryObject for batch operations on all features by UUID.

    const reg = new FeatureRegistry();
    reg.registerFeature({obj: someObj, getProperty: () => "123"});
    reg.getFeatureByUUID("123").then(features => ...);
    Index

    Constructors

    Properties

    featureMap: Map<string, ObservableArray>

    Maps UUIDs to arrays of Feature instances.

    pendingPromises: Map<
        string,
        { promise: Promise; reject: Function; resolve: Function },
    >

    Tracks pending lookups.

    Methods

    • Deregister/remove a feature by instance/object. If there is any pending promise for that UUID, rejects it.

      Parameters

      Returns void

    • Promise-based lookup by UUID. If available, resolves immediately. If not yet present, returns a promise that resolves when the feature is registered.

      Parameters

      • uuid: string

      Returns Promise<ObservableArray>

      Promise resolving to collection of features.