Zum Inhalt

SidTransPage (IPage)

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

Beschreibung

MCDU-Seite zur Auswahl einer SID-Transition. Links werden die verfuegbaren SIDs angezeigt (ausgewaehlte SID gruen mit Leerzeichen-Praefix, nicht ausgewaehlte cyan mit Pfeil), rechts die verfuegbaren SID-Transitions (rechtsbuendig, erster Eintrag ist "NONE"). L2-L4 waehlen eine andere SID, R2-R5 waehlen eine SID-Transition. L5 navigiert zur ADEPRWY-Seite, L6 zurueck zu LatRevAdep (oder F-PLN bei TMPY). Scroll-Pfeile erscheinen wenn mehr SIDs als 4 Slots vorhanden sind.

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 FlightPlan, ProcedureCache (SidResult + SidTransResult) und Scroll-Indizes
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 ProcedureCache-Zugriff und TMPY-Status

Rueckgabewert (HandleLsk)

Typ Beschreibung
McduCommand SelectSid bei L2-L4 (SID wechseln), SelectSidTrans bei R2-R5 (Transition waehlen inkl. NONE), NavigateTo bei L5 (AdepRwy) und L6 (Fpln/LatRevAdep), TmpyInsertCommand bei R6, NoOp sonst

Ablaufdiagramm

flowchart TD
    A[HandleLsk aufgerufen] --> B{key = L5?}
    B -- Ja --> C[NavigateTo AdepRwy]
    B -- Nein --> D{key = L6?}
    D -- Ja --> E{TMPY aktiv?}
    E -- Ja --> F[NavigateTo Fpln]
    E -- Nein --> G[NavigateTo LatRevAdep]
    D -- Nein --> H{key = R6 + TMPY?}
    H -- Ja --> I[TmpyInsertCommand]
    H -- Nein --> J{key = L2-L4?}
    J -- Ja --> K["SelectSid(sids[topIdx+slot].Name, rwy)"]
    J -- Nein --> L{key = R2-R5?}
    L -- Ja --> M{entryIdx = 0?}
    M -- Ja --> N["SelectSidTrans(NONE)"]
    M -- Nein --> O["SelectSidTrans(transName)"]
    L -- Nein --> P[NoOp]

Aufgerufen von

Modul Sub/Function Kontext
McduActor Seitennavigation Nach SID-Auswahl auf SidPage, wenn Transitions vorhanden sind

Ruft auf

Modul Sub/Function Kontext
McduCommandParser ParseAndRender Render-Befehle in Bildschirmpuffer schreiben
ProcedureCache SidResult.Procedures Liste verfuegbarer SIDs (linke Seite)
ProcedureCache SidTransResult.Procedures Liste verfuegbarer SID-Transitions (rechte Seite)
SelectSid Konstruktor SID neu waehlen
SelectSidTrans Konstruktor SID-Transition waehlen oder NONE setzen
NavigateTo Konstruktor Seitennavigation (AdepRwy, Fpln, LatRevAdep)

Beispiel

' SidTransPage wird nach SID-Auswahl angezeigt:
Dim page As New SidTransPage()
page.Render(ctx, buffer)

' Pilot drueckt R3 (zweite Transition in der Liste):
Dim cmd As McduCommand = page.HandleLsk(McduLskKey.R3, ctx)
' -> SelectSidTrans mit dem Transitions-Namen an Index SidTransTopIndex + 1

Aenderungshistorie

Version Datum Aenderung
1.0 2026-04-16 Erstdokumentation