Room class final

One fixed-tick simulation, its peers, and its replication state. The unit of scaling, one room per isolate/process, state never spans rooms.

Constructors

Room({required ReplicaRegistry registry, int tickRate = 30, HostConfig config = const HostConfig(), FutureOr<bool> verifyToken(Uint8List token)?, void onTick(int tick)?, void onJoin(Session session)?, void onLeave(Session session)?})

Properties

currentTick int
no setter
hashCode int
The hash code for this object.
no setterinherited
host ReplicationHost
latefinal
onJoin → void Function(Session session)?
final
onLeave → void Function(Session session)?
final
onTick → void Function(int tick)?
Simulation callback, runs once per fixed tick before replication flushes.
final
registry ReplicaRegistry
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
sessions Iterable<Session>
no setter
tickRate int
final

Methods

accept(Stream<WireConnection> acceptor) → void
Admits every connection produced by acceptor (a transport server's connections stream).
admit(WireConnection connection) Future<Session?>
Handshakes connection into this room.
advance(double elapsedSeconds) → void
Feeds elapsedSeconds into the fixed-tick loop.
hydrate(Uint8List snapshot) → void
Restores replicas from a snapshot. Call on a fresh, empty room before start; hydrated replicas spawn always-relevant.
input(int peerId, int tick) Uint8List?
The authoritative input peerId sent for tick, for use inside onTick. See ReplicationHost.consumeInput.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
snapshot() Uint8List
Serializes the room's replicas and id-allocator state.
start() → void
Starts the real-time tick pump. Use advance instead to drive time manually (tests, external loops).
stop() Future<void>
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited