coordination library

Moved to package:peer_coordinator/coordination.dart.

Re-exported so existing imports keep working; prefer importing from package:peer_coordinator directly in new code.

Classes

ClockOffsetEstimate
One accepted estimate of a peer's clock relative to ours.
ClockProbeSample
One probe's four timestamps, in the two clock domains they were read in.
ClockSyncConfig
Tuning for PeerClockEstimator, defaulting to liblsl's [tuning] section.
ClockSyncService
Drives PeerClockEstimators on timers and sends probes through a callback.
ConfigUpdateEvent
Configuration update from coordinator.
ConfigUpdateMessage
ConnectionTestMessage
ConnectionTestResponseMessage
ControllerEvent
Sealed hierarchy for coordination controller events.
CoordinationController
Controls the coordination flow with clear phases and event-driven logic.
CoordinationMessage
Base class for coordination messages with type safety
CoordinationMessageHandler
Base class for handling coordination messages
CoordinationSendHealthEvent
Emitted when this node's own outbound coordination path changes health.
CoordinationState
Internal coordination state with clear phase management.
CoordinatorMessageHandler
Handles coordination when this node is the coordinator
CreateStreamMessage
DestroyStreamMessage
FlushStreamMessage
HeartbeatMessage
JoinAcceptMessage
JoinOfferMessage
JoinRejectMessage
JoinRequestMessage
NodeEvent
Base class for node-related events.
NodeJoinedEvent
Emitted when a node joins the coordination session.
NodeJoinRejectedEvent
Emitted (coordinator side) when a node's join request is rejected.
NodeLeavingMessage
NodeLeftEvent
Emitted when a node leaves the coordination session.
ParticipantMessageHandler
Handles coordination when this node is a participant
PauseStreamMessage
PeerClockEstimator
Collects probe replies for one peer and reduces each burst to one estimate.
PeerClockOffsets
Per-peer clock offsets for one process, shared by every stream on a transport.
PhaseChangedEvent
Emitted when the coordination phase changes.
ResumeStreamMessage
SessionEndedEvent
Emitted when this node's coordination session has ended.
SessionEndMessage
The coordinator telling nodes that the session is over for them.
SessionRejoinedEvent
Emitted when a node that lost its coordinator has re-joined one.
StartStreamMessage
StopStreamMessage
StreamCreateEvent
Command to create a data stream.
StreamDestroyEvent
Command to destroy a data stream.
StreamFlushEvent
Command to flush stream buffers.
StreamLifecycleEvent
Base class for stream lifecycle events.
StreamPauseEvent
Command to pause a data stream.
StreamReadyEvent
Notification that a stream is ready for operation.
StreamReadyMessage
StreamResumeEvent
Command to resume a paused data stream.
StreamStartEvent
Command to start a data stream.
StreamStopEvent
Command to stop a data stream.
TopologyUpdateMessage
UserCoordinationEvent
User message from coordinator (broadcast to all).
UserCoordinationMessage
UserMessageEvent
Base class for user-defined message events.
UserParticipantEvent
User message from participant (to coordinator).
UserParticipantMessage

Enums

CoordinationMessageType
Base coordination message types
CoordinationPhase
Represents the current state of coordination

Mixins

ConnectionProbeMixin
The connection-test round trip, shared by both roles.

Extensions

ControllerEventStreamExtensions on Stream<ControllerEvent>
Extension methods for filtering controller event streams.