logo SERENITY
Game Systems Foundation
Search Results for

    Show / Hide Table of Contents

    Namespace Serenity.SequencePlayer.Application.Interfaces

    Interfaces

    ISequenceDefinition

    Defines a complete sequence of execution stages. Provides ordered collection of stages for orchestration.

    ISequencePlayerService

    Service for orchestrating and playing sequences of execution stages. Supports playback by key identifier or definition instance.

    ISequencePlayerServiceFactory

    Base factory contract for creating sequence player services.

    Vertical aggregates (e.g., CutscenePlayer) extend this interface to provide domain-specific factory methods while preserving the generic creation surface.

    ISequencePlayerSettings

    Base settings contract for sequence player services. Provides access to the identifiers of available sequence definitions.

    Vertical aggregates (e.g., CutscenePlayer) extend this interface to add domain-specific settings while preserving the generic sequence configuration surface.

    ISequenceStage

    Represents an execution stage in a sequence orchestration. Stages are generic execution units executed sequentially by the sequence player.
    NOTE: This interface is duration-agnostic. For timed stages, use ITimedSequenceStage.

    ISequenceUnit

    Base interface for any unit in a sequence. Generic orchestration contract without timing assumptions. Use ITimedSequenceUnit for units that require duration.

    ITimedSequenceStage

    Interface for sequence stages that have explicit duration (timed execution). Used by vertical aggregates (e.g., CutscenePlayer) that require time-based orchestration.
    SequencePlayer itself is duration-agnostic; this interface is consumed by vertical aggregates that need timing information for stage execution.

    ITimedSequenceUnit

    Interface for sequence units that have a duration. Extends ISequenceUnit with timing information for timed orchestration.

    In this article
    © 2026 Serenity. All Rights Reserved