Zum Inhalt

Perf4Page (IPage)

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

Beschreibung

PERF DES Seite (PERF 4/6) — zeigt Sinkflug-Performance mit ACT MODE, UTC DEST EFOB Header, Cost Index und Managed Descent Speed/Mach. Wichtig: Speed-Format ist UMGEKEHRT zu CLB/CRZ: ".MACH/KTS" (Mach zuerst, dann IAS), z.B. ".78/290". SEC/PRIM Dual-Pfad ueber InStr(LastMainPage, "SEC"). APPR PHASE Aktivierung bei Phase >= 4. UTC wird live aus DateTime.UtcNow gelesen.

LSK-Aktionen: L6 PREV PHASE (zu Perf3, Phase < 4) oder APPR PHASE Aktivierung (Phase >= 4), R6 NEXT PHASE zu Perf5.

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 PerfSnapshot, CostIndex, FlightPhaseInt, AdesEfobKg, LastMainPage
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 FlightPhaseInt

Rückgabewert (HandleLsk)

Typ Beschreibung
McduCommand Kommando-Objekt: NavigateTo (Perf3, Perf5) oder NoOp

Ablaufdiagramm

flowchart TD
    A[Render Start] --> B{SEC Pfad?}
    B -- Ja --> C[SEC DES Titel]
    B -- Nein --> D[DES Titel, gruen bei Phase 4]
    C --> E[ACT MODE MANAGED + UTC live + EFOB]
    D --> E
    E --> F[CI Zeile 04-05: Amber aaaa bei -1]
    F --> G[Descent Speed: .MACH/KTS Format]
    G --> H{Phase < 4?}
    H -- Ja --> I[PREV PHASE links]
    H -- Nein --> J[ACTIVATE APPR PHASE links]
    I --> K[NEXT PHASE rechts immer]
    J --> K

    L[HandleLsk] --> M{Taste?}
    M -- L6 --> N{Phase < 4?}
    N -- Ja --> O[NavigateTo Perf3]
    N -- Nein --> P[NavigateTo Perf5 APPR PHASE]
    M -- R6 --> Q[NavigateTo Perf5]

Aufgerufen von

Modul Sub/Function Kontext
Perf3Page HandleLsk R6 NEXT PHASE von PERF CRZ
Perf5Page HandleLsk L6 PREV PHASE von PERF APPR

Ruft auf

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

Beispiel

' Perf4Page wird ueber NEXT PHASE von Perf3 aufgerufen
Dim page As New Perf4Page()

' Render: DES Performance Seite anzeigen (Speed: .78/290 Format)
page.Render(ctx, screenBuffer)

' HandleLsk: NEXT PHASE zu APPR (R6)
Dim cmd As McduCommand = page.HandleLsk(McduLskKey.R6, ctx)
' -> NavigateTo(McduPageType.Perf5)

Änderungshistorie

Version Datum Änderung
1.0 2026-04-16 Erstdokumentation