Logo FSBarV1_Archived

SessionManager Module

Owns the hub's at-most-one live BAR session: lobby → engine launch → BarClient lifecycle → frame stream → clean teardown. Publishes every lifecycle transition onto a supplied `IHubEventSink` so the status bar, diagnostics pane, and gRPC `GetSessionStatus` response assembler all see a consistent view.

Types

Type Description

RunningSession

Descriptor for the one currently-running session. The hub carries this opaquely — callers pull lifecycle info off the public `SessionManager` surface.

SessionManager

The hub-wide session owner. Disposable — `Dispose` tears down any active session and unregisters the pump.

SessionState

Full lifecycle state. `HubEvents.StateChanged` gets fired with a lightweight tag on every transition; consumers that need this richer shape (e.g. the status bar rendering the failure reason) read `SessionManager.State` directly.

Functions and values

Function or value Description

create install events

Full Usage: create install events

Parameters:
Returns: SessionManager

Construct a `SessionManager` bound to a specific `BarInstall` and event sink. The caller owns disposal.

install : BarInstall
events : IHubEventSink
Returns: SessionManager

Type something to start searching.