ViaPage (IPage)
| Eigenschaft |
Wert |
| Modul |
Mcdu/Pages |
| Klasse |
ViaPage |
| Typ |
IPage Implementation |
| Sichtbarkeit |
Public |
| Datei |
Mcdu/Pages/ViaPage.vb |
Beschreibung
MCDU-Seite zur Auswahl eines VIA-Verfahrens (Approach Transition). Zeigt den Titel "ARRIVALS TO {ADES}", die aktuelle APPR/VIA/STAR-Kombination und die verfuegbaren VIA-Prozeduren aus ProcedureCache.ApproachResult. L1-L4 waehlen ein VIA-Verfahren aus der scrollbaren Liste (max. 4 Slots). L5 und L6 navigieren zurueck zur STAR-Seite. Scroll-Pfeile erscheinen bei mehr als 4 VIAs.
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 (ApproachResult) und ViaTopIndex |
— |
| 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 |
— |
Rueckgabewert (HandleLsk)
| Typ |
Beschreibung |
| McduCommand |
SelectVia bei L1-L4 (VIA-Auswahl), NavigateTo Star bei L5 und L6, NoOp sonst |
Ablaufdiagramm
flowchart TD
A[HandleLsk aufgerufen] --> B{key = L1-L4?}
B -- Ja --> C{ProcedureCache.ApproachResult vorhanden?}
C -- Nein --> D["ShowScratchpadMessage(NO VIA DATA)"]
C -- Ja --> E[listIdx = ViaTopIndex + slot]
E --> F{listIdx < viaList.Count?}
F -- Nein --> G[NoOp]
F -- Ja --> H["SelectVia(viaList[listIdx].Name)"]
B -- Nein --> I{key = L5 oder L6?}
I -- Ja --> J[NavigateTo Star]
I -- Nein --> K[NoOp]
Aufgerufen von
| Modul |
Sub/Function |
Kontext |
| McduActor |
Seitennavigation |
Ueber L1 (VIAS) auf der StarPage oder StarTransPage |
Ruft auf
| Modul |
Sub/Function |
Kontext |
| McduCommandParser |
ParseAndRender |
Render-Befehle in Bildschirmpuffer schreiben |
| ProcedureCache |
ApproachResult.Procedures |
Liste verfuegbarer VIA-Verfahren abfragen |
| SelectVia |
Konstruktor |
VIA-Auswahl an McduActor melden |
| NavigateTo |
Konstruktor |
Seitennavigation (Star) |
Beispiel
' ViaPage wird ueber die StarPage erreichbar:
Dim page As New ViaPage()
page.Render(ctx, buffer)
' Pilot drueckt L2 (zweites VIA-Verfahren):
Dim cmd As McduCommand = page.HandleLsk(McduLskKey.L2, ctx)
' -> SelectVia mit dem Verfahrensnamen an Index ViaTopIndex + 1
Aenderungshistorie
| Version |
Datum |
Aenderung |
| 1.0 |
2026-04-16 |
Erstdokumentation |