Zum Inhalt

AdesRwyPage (IPage)

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

Beschreibung

MCDU-Seite zur Auswahl der Approach-Runway am Zielflughafen (ADES RWY). Zeigt den Titel "ARRIVALS TO {ADES}", die aktuelle APPR/VIA/STAR-Kombination und bis zu 3 verfuegbare Approach-Runways (L2-L4) mit Laenge, magnetischem Kurs und ILS-Daten. Ausgewaehlte Runway wird gruen dargestellt, nicht ausgewaehlte cyan mit Pfeil. Sonderfall: Runway-Designator mit Chr(0) zeigt "NO IFR APPR AVAIL" in gruen an und ist nicht auswaehlbar. L6 navigiert zurueck zu LatRevAdes. Scroll-Pfeile erscheinen bei mehr als 4 Runways.

Implementierte Methoden

Render

Public Sub Render(ctx As McduContext, buffer As Inet.Arinc429ScreenBuffer) Implements IPage.Render
Name Typ Beschreibung Standard
ctx McduContext MCDU-Zustand mit AdesRunways, AdesIlsList, FlightPlan und AdesRwyTopIndex
buffer Inet.Arinc429ScreenBuffer Zielpuffer fuer die ARINC-429-Bildschirmausgabe

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-Zustand fuer AdesRunways-Zugriff

Rueckgabewert (HandleLsk)

Typ Beschreibung
McduCommand SelectRunway (L2-L4, isDeparture=False), NavigateTo LatRevAdes (L6), NoOp sonst (inkl. Chr(0)-Designator)

Ablaufdiagramm

flowchart TD
    A[HandleLsk aufgerufen] --> B{key = L6?}
    B -- Ja --> C[NavigateTo LatRevAdes]
    B -- Nein --> D{key = L2-L4?}
    D -- Nein --> E[NoOp]
    D -- Ja --> F[rwyIdx = AdesRwyTopIndex + slot]
    F --> G{rwyIdx < AdesRunways.Count?}
    G -- Nein --> H[NoOp]
    G -- Ja --> I{"Designator startet mit Chr(0)?"}
    I -- Ja --> J[NoOp]
    I -- Nein --> K["SelectRunway(rwy.Designator, False)"]

Aufgerufen von

Modul Sub/Function Kontext
McduActor Seitennavigation Ueber L5 auf der StarPage oder direkt ueber LatRev ADES

Ruft auf

Modul Sub/Function Kontext
McduCommandParser ParseAndRender Render-Befehle in Bildschirmpuffer schreiben
ctx.AdesRunways Indexzugriff Runway-Daten (Designator, TrueHeading, Variation, Length)
ctx.AdesIlsList Indexzugriff ILS-Daten (Ident, Frequency) pro Runway
SelectRunway Konstruktor Runway-Auswahl an McduActor melden (isDeparture=False)
NavigateTo Konstruktor Seitennavigation (LatRevAdes)

Beispiel

' AdesRwyPage wird vom McduActor instanziiert:
Dim page As New AdesRwyPage()
page.Render(ctx, buffer)

' Pilot drueckt L2 (erste Approach-Runway in der Liste):
Dim cmd As McduCommand = page.HandleLsk(McduLskKey.L2, ctx)
' -> SelectRunway mit Designator der Runway an Index AdesRwyTopIndex + 0

Aenderungshistorie

Version Datum Aenderung
1.0 2026-04-16 Erstdokumentation