logo SERENITY
Game Systems Foundation
Search Results for

    Show / Hide Table of Contents

    Namespace Serenity.EventDispatcher.Infrastructure.Editor

    Classes

    SerenityEditorSignalDispatcher

    Editor-only entry point that lets an authoring window dispatch an EventDispatcherSignal through the live IEventDispatcherService while Play Mode is running — e.g. a "Fire Now" preview button on a settings builder.

    Deliberately does not latch the resolved service. SignalEmitterComponent caches a successful lookup because it lives on a gameplay object that re-runs every frame for the lifetime of a single Play session. This class is the inverse: it is called from an editor window that survives Play Mode exit and domain reloads, so a service resolved during one Play session would be a dangling reference on the next one. Resolving fresh on every call trades a cheap repeated lookup for correctness across sessions.

    SerenitySignalFlowBrowserWindow

    Read-only master-detail node diagram for the project's event graph: for every EventDispatcherSignal it shows who dispatches it (authored Signal Definition assets and other authored dispatch sites), what listens for it (modal settings), and what reacts to it in code ([AutoRegisterEventAction] actions).
    With signals dispatched no-code (Signal Definitions / SignalEmitter / SignalReaction / action definitions) and reactions auto-registered by attribute, "what fires this, and what happens when it does?" was previously invisible without grepping; this surfaces it as cause → signal → effect diagram, one signal at a time.

    SignalDispatchSite

    One authored, pingable asset that dispatches a signal outside the UnityEventDispatcherSignalDefinition convention the scanner's signalTypeName field already covers — an action definition, or a menu/modal option/slot. Value equality over all three properties lets SignalFlowScanner's existing Add helper dedup entries via Contains(T), the same way it already dedups plain asset-path strings.

    SignalFlowScanner

    Editor-only scanner that builds the signal → dispatchers/modals/reactions/emitters graph from project types and assets. Kept separate from the window so the data collection can be reused/tested independent of GUI drawing, mirroring AudioMixerRelationshipScanner's split for the mixer topology window.

    SignalFlowScanner.ScanResult

    The signal → dispatchers/modals/reactions/emitters graph for the whole project.

    SignalFlowSceneTextProbe

    Pure text-only harvest of every signalTypeName value out of one .unity scene file's raw text, used by SignalFlowScanner's scene reaction scan. Public (not internal) because the EditMode test assembly for this scanner is a separate assembly from Serenity.EventDispatcher.Infrastructure.Editor, and the regex here is the single highest-risk piece of the whole scene-reaction scan — a silently wrong pattern ships a scan that finds nothing, with no compiler or runtime signal that anything is missing.

    SignalReactionComponentEditor

    Custom inspector for SignalReactionComponent.
    Presents each reaction as a searchable dropdown of every concrete EventDispatcherSignal type in the project plus its response UnityEvent, so "react to signal X by doing Y" can be authored without code.

    Enums

    SignalDispatchSiteKind

    The kind of authored asset a SignalDispatchSite was discovered from: ActionDefinition assets, ViewOption (menu/modal option submit signals) and ViewSlot (menu-level show/hide/cancel/submit slots) — the latter two discovered by Serenity.EventDispatcher.Infrastructure.Editor.SignalFlowViewSignalCollector.

    In this article
    © 2026 Serenity. All Rights Reserved