Zum Inhalt

Perf6Page (IPage)

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

Beschreibung

PERF GO AROUND Seite (PERF 6/6) — zeigt FLP RETR (F=), SLT RETR (S=), CLEAN (O=) Geschwindigkeiten sowie THR RED/ACC und ENG OUT ACC Hoehen an. Wichtig: Diese Seite hat KEINE GA SPEED, MISSED APPR ALT oder ECON Zeilen — diese existieren nicht im VB6 Original. SEC/PRIM Dual-Pfad. Bei Phase 6 wird ACTIVATE/CONFIRM APPR PHASE + NEXT PHASE angezeigt, sonst nur PREV PHASE.

LSK-Aktionen: L6 PREV PHASE (zu Perf5, Phase < 6) oder APPR PHASE arm/activate (Phase 6), R6 NEXT PHASE zu Perf5 (nur Phase 6).

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 (ThrRedAlt, AccAlt, EngOutAccAlt), Zfw, Fob, CrzAltFt, FlightPhaseInt, 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 (Perf5) oder NoOp

Ablaufdiagramm

flowchart TD
    A[Render Start] --> B{SEC Pfad?}
    B -- Ja --> C[SEC GO AROUND Titel]
    B -- Nein --> D[GO AROUND Titel, gruen bei Phase 6]
    C --> E[F=/S=/O= Speeds aus GrossWeight berechnen]
    D --> E
    E --> F[FLP RETR Zeile 02-03]
    F --> G[SLT RETR Zeile 04-05]
    G --> H[CLEAN Zeile 06-07]
    H --> I[THR RED/ACC Zeile 10-11 links]
    I --> J[ENG OUT ACC Zeile 11 rechtsbuendig]
    J --> K{Phase = 6?}
    K -- Ja --> L[ACTIVATE APPR PHASE + NEXT PHASE]
    K -- Nein --> M[PREV PHASE]

    N[HandleLsk] --> O{Taste?}
    O -- L6 --> P{Phase < 6?}
    P -- Ja --> Q[NavigateTo Perf5]
    P -- Nein --> R[APPR PHASE -> NavigateTo Perf5]
    O -- R6 --> S{Phase = 6?}
    S -- Ja --> T[NavigateTo Perf5]
    S -- Nein --> U[NoOp]

Aufgerufen von

Modul Sub/Function Kontext
Perf5Page HandleLsk R6 NEXT PHASE von PERF APPR

Ruft auf

Modul Sub/Function Kontext
McduCommandParser ParseAndRender Render-Kommandos in Bildschirmpuffer schreiben
Trajectory.SpeedCalculations CalcFSpeed, CalcSSpeed, CalcGreenDot F/S/O Geschwindigkeiten aus Gewicht berechnen

Beispiel

' Perf6Page wird ueber NEXT PHASE von Perf5 aufgerufen
Dim page As New Perf6Page()

' Render: GO AROUND Performance Seite anzeigen
page.Render(ctx, screenBuffer)

' HandleLsk: PREV PHASE zu APPR (L6, Phase < 6)
Dim cmd As McduCommand = page.HandleLsk(McduLskKey.L6, ctx)
' -> NavigateTo(McduPageType.Perf5)

Änderungshistorie

Version Datum Änderung
1.0 2026-04-16 Erstdokumentation