Skip to content
GitLab
  • Menu
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • KStars KStars
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 85
    • Issues 85
    • List
    • Boards
    • Service Desk
    • Milestones
  • Bugzilla
    • Bugzilla
  • Merge requests 9
    • Merge requests 9
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Releases
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Education
  • KStarsKStars
  • Merge requests
  • !479

State machine for capture control (Step 1)

  • Review changes

  • Download
  • Email patches
  • Plain diff
Merged Wolfgang Reissenberger requested to merge wreissenberger/kstars:refactor_capture_statemachine into master Dec 05, 2021
  • Overview 13
  • Commits 21
  • Pipelines 34
  • Changes 14

Refactoring to shift capture state management to a dedicated state machine. The idea is to separate configuration, state and business logic into separate classes. The goal is to separate state machines making them testable with stand alone test sets:

  • The Capture module holds entire configuration of the capture tasks and displays the configuration and the state in the UI
  • A state machine that holds all process state information. The state machine listens to events from several sources and changes the state accordingly. Additionally, it offers dedicated actions that triggers change states. All state changes are published as events.
  • A command processor that holds all commands that the module may execute: start and stop capture, set filter, set temperature, set rotator angle. Events or actions received by the state machine are translated to commands from the command processor.
  • (To be implemented: An orchestrator that defines entire processes and orchestrates them combining state informations from the state machine and execution of commands from the command processor.)

image

This is the first step meant as a proof of concept.

Edited Dec 21, 2021 by Wolfgang Reissenberger
Assignee
Assign to
Reviewer
Request review from
Time tracking
Source branch: refactor_capture_statemachine