Class ComposedModelSkeleton<TypeIDType, H>

A composed view over every model in a ModelRegistry (M5 / design S3).

Federation's read side: a site plan that references per-building files, or a project split across disciplines, is browsed as one model whose entities carry universal EntityAddresses (modelURI#expressID). A type query here fans out across all registered members and yields addresses, not bare express IDs — so "every IfcWall in the project" spans files, and each result round-trips back through ModelRegistry.resolve to the right model.

This is the composition scaffold: it unions the members' type skeletons under the shared address space. The spatial-containment merge (a site's IfcRelAggregates linking to building files) layers on top by resolving the cross-file references the CrossReferenceRegistry discovers — the next increment, gated on the loader registering streamed models here.

Type Parameters

Constructors

Accessors

Methods

Constructors

Accessors

  • get registry(): ModelRegistry<H>
  • Returns ModelRegistry<H>

    The registry backing this composed view.

Methods

  • Count entities of the given types across all registered models.

    Parameters

    Returns number

    The total across the federation.

  • Yield the universal address of every entity of the given types across all registered models.

    Parameters

    Returns IterableIterator<EntityAddress, any, any>

    Addresses of matching entities.

    Each matching entity's universal address.