Zum Inhalt

StatusPage (IPage)

Eigenschaft Wert
Modul Mcdu/Pages
Klasse StatusPage
Typ IPage Implementation
Sichtbarkeit Public
Datei Mcdu/Pages/StatusPage.vb

Beschreibung

STATUS-Seite — zeigt A/C-Typ, Triebwerkstyp, aktive und zweite Navigationsdatenbank, Pilot-gespeicherte Waypoints/Routes und IDLE/PERF-Faktoren an. Alle Daten kommen aus ctx.StatusData (StatusSnapshot). Bedingte Anzeige: SECOND NAV DATA BASE nur bei DatabaseUpdateAvailable, PILOT STORED + DELETE ALL nur bei UserWaypointCount > 0 (sonst CHG CODE Eingabefeld). Software-Status/XLOAD-Navigation rechts unten.

LSK-Aktionen: L2 Datenbank-Update (zeigt "DB UPDATE IN PROGRESS"), R5 DELETE ALL User-Waypoints, R6 Navigation zu Xload1-Seite.

Implementierte Methoden

Render

Public Sub Render(ctx As McduContext, buffer As Inet.Arinc429ScreenBuffer) Implements IPage.Render
Name Typ Beschreibung Standard
ctx McduContext MCDU-Zustandskontext mit StatusData (StatusSnapshot)
buffer Inet.Arinc429ScreenBuffer ARINC-429-Bildschirmpuffer fuer die MCDU-Anzeige

HandleLsk

Public Function HandleLsk(key As McduLskKey, ctx As McduContext) As McduCommand Implements IPage.HandleLsk
Name Typ Beschreibung Standard
key McduLskKey Gedrueckte LSK-Taste (L1-L6, R1-R6)
ctx McduContext MCDU-Zustandskontext mit StatusData

Rückgabewert (HandleLsk)

Typ Beschreibung
McduCommand Kommando-Objekt: ShowScratchpadMessage, DeleteAllUserWaypoints, NavigateTo (Xload1) oder NoOp

Ablaufdiagramm

flowchart TD
    A[Render Start] --> B[LISTCLEAR]
    B --> C[A/C Typ Zeile 01]
    C --> D[ENG Typ Zeile 02-03]
    D --> E[ACTIVE NAV DATA BASE Zeile 04-05]
    E --> F{DatabaseUpdateAvailable?}
    F -- Ja --> G[SECOND NAV DATA BASE Zeile 06-07]
    F -- Nein --> H[Weiter]
    G --> I{UserWaypointCount > 0?}
    H --> I
    I -- Ja --> J[PILOT STORED + Counts + DELETE ALL]
    I -- Nein --> K[CHG CODE Eingabefeld]
    J --> L[IDLE/PERF Faktoren + STATUS/XLOAD]
    K --> L

    M[HandleLsk] --> N{Taste?}
    N -- L2 --> O{DB Update verfuegbar?}
    O -- Ja --> P[DB UPDATE IN PROGRESS Meldung]
    N -- R5 --> Q{UserWaypoints > 0?}
    Q -- Ja --> R[DeleteAllUserWaypoints]
    N -- R6 --> S[NavigateTo Xload1]

Aufgerufen von

Modul Sub/Function Kontext
McduActor Seitennavigation MCDU Menu oder automatisch bei Start

Ruft auf

Modul Sub/Function Kontext
McduCommandParser ParseAndRender Render-Kommandos in Bildschirmpuffer schreiben

Beispiel

' StatusPage wird vom McduActor instanziiert
Dim page As New StatusPage()

' Render: Status-Seite mit A/C Typ, NavDB Info anzeigen
page.Render(ctx, screenBuffer)

' HandleLsk: Alle User-Waypoints loeschen (R5)
Dim cmd As McduCommand = page.HandleLsk(McduLskKey.R5, ctx)
' -> DeleteAllUserWaypoints

' HandleLsk: Zu XLOAD navigieren (R6)
Dim navCmd As McduCommand = page.HandleLsk(McduLskKey.R6, ctx)
' -> NavigateTo(McduPageType.Xload1)

Änderungshistorie

Version Datum Änderung
1.0 2026-04-16 Erstdokumentation