Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Path reservation fixes #115

Open
wants to merge 22 commits into
base: master
Choose a base branch
from

Commits on Jul 3, 2024

  1. Configuration menu
    Copy the full SHA
    21f55bf View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    77568b9 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    5db59e6 View commit details
    Browse the repository at this point in the history
  4. server: TurnoutRailTile lock position if reserved

    Also react to external output changes and revert to reserved position if sneeded.
    gfgit committed Jul 3, 2024
    Configuration menu
    Copy the full SHA
    da1c091 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    232a9de View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    f9efbd0 View commit details
    Browse the repository at this point in the history
  7. server: DirectionControlRailTile prevent double reservation

    - Allow setting to "Both" while reserved
    gfgit committed Jul 3, 2024
    Configuration menu
    Copy the full SHA
    a4f1aa1 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    03a868b View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    745f55f View commit details
    Browse the repository at this point in the history
  10. server: BlockPath remove block reservation on release

    TODO: this is HACKY and bypasses some logic
    gfgit committed Jul 3, 2024
    Configuration menu
    Copy the full SHA
    94716a8 View commit details
    Browse the repository at this point in the history
  11. client: BoardWidget rework NXButton timer

    - Now release timer is stopped when pressing a third button
      which becomes first button of new pair.
    
    - Timer is also stopped when editing mode is enabled
    
    - Hold timer is stopped if same button is clicked again
    gfgit committed Jul 3, 2024
    Configuration menu
    Copy the full SHA
    dc020cb View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    441b9e4 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    3efd285 View commit details
    Browse the repository at this point in the history
  14. BoardWidget: replace QTimer with QTimerEvent

    - This avoids heap allocation
    - Added asserts for timerId to be null before being created again
    gfgit committed Jul 3, 2024
    Configuration menu
    Copy the full SHA
    8ec36e8 View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    51edb99 View commit details
    Browse the repository at this point in the history
  16. server: TurnoutRailTile implement retry count

    - If position is externally changed while a path is reserve
      Turnout will try to reset it's position to reserved one
      If it fails and reaches maximum retry count it will stop trains in
    path.
    gfgit committed Jul 3, 2024
    Configuration menu
    Copy the full SHA
    b230a59 View commit details
    Browse the repository at this point in the history
  17. server: SignalRailTile stop trains when retry is exceded

    - When locked and retry count is reached, stop trains in path
    - Evaluate only if a path is reserved
    gfgit committed Jul 3, 2024
    Configuration menu
    Copy the full SHA
    1ba1e15 View commit details
    Browse the repository at this point in the history
  18. Configuration menu
    Copy the full SHA
    6292d46 View commit details
    Browse the repository at this point in the history
  19. server: Add better log messages to Signal and Turnouts

    - New messages when position/aspect is externally changed
    - New messages when position/aspect is corrected
    - New messages when train is stopped
    - Separate messages for Signals and Turnouts
    - Avoid stopping twice the same Train
    - Italian and English translations
    gfgit committed Jul 3, 2024
    Configuration menu
    Copy the full SHA
    19f3050 View commit details
    Browse the repository at this point in the history
  20. server: World add new settings for external output change

    - Refactored code in TurnoutRailTile and SignalRailTile
    - Use early return pattern
    - Added Enlish and Italian translations
    - New Category::trains
    gfgit committed Jul 3, 2024
    Configuration menu
    Copy the full SHA
    e7a5428 View commit details
    Browse the repository at this point in the history
  21. BlockPath: implement delayed release

    This simulates train still occupying turnouts while it has
    already left the entrance ("from") block.
    Useful when turnouts do not have dedicate occupancy detectors.
    
    - New World property
    - English and Italian translations
    gfgit committed Jul 3, 2024
    Configuration menu
    Copy the full SHA
    c493065 View commit details
    Browse the repository at this point in the history
  22. server: BlockRailTile move path release to TrainTracking

    - This effectively reverts commit 0b22d1f
    - Logic from commit 0b22d1f is now in TrainTracking
    - This fixes case when short train releases "enter"
      block before occupying "exit" block.
    gfgit committed Jul 3, 2024
    Configuration menu
    Copy the full SHA
    1a91efc View commit details
    Browse the repository at this point in the history