Zum Inhalt

AdepRwyPage (IPage)

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

Beschreibung

MCDU-Seite zur Auswahl der Departure-Runway am Abflughafen (ADEP RWY). Zeigt den Titel "DEPARTURES FROM {ADEP}", die aktuelle RWY/SID/TRANS-Kombination und bis zu 4 verfuegbare Runways mit Laenge (in Metern), magnetischem Kurs (CRS) und ILS-Daten (Ident/Frequenz). Runway-Daten kommen aus ctx.AdepRunways, ILS-Daten aus ctx.AdepIlsList. L2-L5 waehlen eine Runway (SelectRunway), L6 navigiert zurueck (F-PLN bei TMPY, LatRevAdep ohne TMPY), R6 fuehrt INSERT* bei TMPY aus. 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 AdepRunways, AdepIlsList, FlightPlan/TmpyFlightPlan und AdepRwyTopIndex
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 AdepRunways-Zugriff und TMPY-Status

Rueckgabewert (HandleLsk)

Typ Beschreibung
McduCommand SelectRunway (L2-L5, isDeparture=True), NavigateTo Fpln/LatRevAdep (L6), TmpyInsertCommand (R6 bei TMPY), NoOp sonst

Ablaufdiagramm

flowchart TD
    A[HandleLsk aufgerufen] --> B{key = L6?}
    B -- Ja --> C{TMPY aktiv?}
    C -- Ja --> D[NavigateTo Fpln]
    C -- Nein --> E[NavigateTo LatRevAdep]
    B -- Nein --> F{key = R6 + TMPY?}
    F -- Ja --> G[TmpyInsertCommand]
    F -- Nein --> H{key = L2-L5?}
    H -- Nein --> I[NoOp]
    H -- Ja --> J[rwyIdx = AdepRwyTopIndex + slot]
    J --> K{rwyIdx < AdepRunways.Count?}
    K -- Nein --> L[NoOp]
    K -- Ja --> M["SelectRunway(rwy.Designator, True)"]

Aufgerufen von

Modul Sub/Function Kontext
McduActor Seitennavigation Ueber L5 auf der SidTransPage oder direkt ueber LatRev ADEP

Ruft auf

Modul Sub/Function Kontext
McduCommandParser ParseAndRender Render-Befehle in Bildschirmpuffer schreiben
ctx.AdepRunways Indexzugriff Runway-Daten (Designator, TrueHeading, Variation, Length)
ctx.AdepIlsList Indexzugriff ILS-Daten (Ident, Frequency) pro Runway
SelectRunway Konstruktor Runway-Auswahl an McduActor melden (isDeparture=True)
TmpyInsertCommand Konstruktor TMPY-Flugplan einfuegen
NavigateTo Konstruktor Seitennavigation (Fpln, LatRevAdep)

Beispiel

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

' Pilot drueckt L3 (zweite Runway in der Liste):
Dim cmd As McduCommand = page.HandleLsk(McduLskKey.L3, ctx)
' -> SelectRunway mit Designator der Runway an Index AdepRwyTopIndex + 1

Aenderungshistorie

Version Datum Aenderung
1.0 2026-04-16 Erstdokumentation