Skip to content

Compatibility API

Compatibility API. The synchronous educational engine and legacy aliases remain available for compatibility. New application code should use ArchetypeRuntime.

SyncArchetypeRuntime

SyncArchetypeRuntime(*, actor_ctx=None, log=None)

Synchronous facade over ArchetypeRuntime.

Use it as a context manager. New asynchronous applications should use ArchetypeRuntime directly.

SyncRuntimeWorld

SyncRuntimeWorld

Synchronous compatibility facade over RuntimeWorld.

run_sync

run_sync(coro)

Run one coroutine when no event loop is active in this thread.

SyncProcessor

SyncWorld

SyncWorld(
    *,
    world_id,
    name,
    querier,
    updater,
    system,
    resources,
    hooks,
    run_id=None,
    tick=0,
    next_entity_id=1,
    entity2sig=None,
    spawn_cache=None,
    despawn_cache=None,
)

Initialize the synchronous world.

SyncSystem

SyncSystem()

SyncStore

SyncStore(uri, session, debug=False, io_config=None)

The ArchetypeStore is a component that manages the storage and retrieval of archetype tables.

Since our Schema supports multiple simulations and runs, our namespace is simply "archetypes". This allows us to have multiple simulations and runs in the same catalog since archetypes, by definition, the exact set of components attached to an entity. So we don't really which simulation or run we're using, so long as we differentiate between the simulation and run.

Using Daft Sessions/Catalogs enables us to reference arbitrary numbers of archetype tables without having to hold them in memory, provided we

QueryManager

QueryManager(store, debug=False)

UpdateManager

UpdateManager(store)