AcarsWxPage (IPage)
| Eigenschaft |
Wert |
| Modul |
Mcdu/Pages |
| Klasse |
AcarsWxPage |
| Typ |
IPage Implementation |
| Sichtbarkeit |
Public |
| Datei |
Mcdu/Pages/AcarsWxPages.vb |
Beschreibung
ACARS WEATHER REQUEST Stationsliste (VB6 CreateACARSWX). Zeigt 5 Stationsslots fuer ICAO-Eingabe an. Slot 0 leer wird als amber "~aaaaa" dargestellt, Slots 1-4 leer als cyan "[ ]". R1 zeigt immer "REQUEST*" an, R3 zeigt "RECEIVED WX N>" wenn mindestens eine Station bereit ist. L1-L5 uebernehmen ICAO-Codes aus dem Scratchpad (sequentiell: Slot N nur wenn Slot N-1 belegt). R1 sendet die Wetteranfrage, R3 navigiert zur empfangenen Wetteranzeige. L6 kehrt zur Enroute-Seite zurueck.
Implementierte Methoden
Render
Public Sub Render(ctx As McduContext, buffer As Inet.Arinc429ScreenBuffer) Implements IPage.Render
| Name |
Typ |
Beschreibung |
Standard |
| ctx |
McduContext |
MCDU-Kontext mit AcarsData.WxData (Stationen, ReadyFlags) |
-- |
| buffer |
Inet.Arinc429ScreenBuffer |
Zielpuffer fuer die ARINC-429-Screenausgabe |
-- |
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, R3 aktiv) |
-- |
| ctx |
McduContext |
MCDU-Kontext mit Scratchpad und AcarsData |
-- |
Rueckgabewert (HandleLsk)
| Typ |
Beschreibung |
| McduCommand |
ClearScratchpad fuer L1-L5, NavigateTo(AcarsEnroute) fuer L6, RequestWeather fuer R1, NavigateTo(AcarsWxReceived) fuer R3, NoOp sonst |
Ablaufdiagramm
flowchart TD
A[Start Render] --> B[LISTCLEAR]
B --> C["Row 01: ACARS WEATHER REQUEST"]
C --> D["Row 02: STATION Label"]
D --> E{5 Slots durchlaufen}
E -->|Slot belegt| F["Station ICAO cyan anzeigen"]
E -->|Slot 0 leer| G["Amber aaaaa anzeigen"]
E -->|Slot 1-4 leer| H["Cyan Klammern anzeigen"]
F --> E
G --> E
H --> E
E -->|Alle Slots| I["Row 13: RETURN"]
I --> J["Row 03 col17: REQUEST*"]
J --> K{WX verfuegbar?}
K -->|Ja| L["Row 07: RECEIVED WX N>"]
K -->|Nein| M[ParseAndRender]
L --> M
M --> N[Ende]
Aufgerufen von
| Modul |
Sub/Function |
Kontext |
| McduActor |
Render-Dispatch |
Wenn McduPageType.AcarsWx aktiv ist |
Ruft auf
| Modul |
Sub/Function |
Kontext |
| McduCommandParser |
ParseAndRender |
Uebergibt die Befehlsliste an den Screen-Buffer |
| ClearScratchpad |
Konstruktor |
L1-L5 nach ICAO-Eingabe |
| RequestWeather |
Konstruktor |
R1 sendet Wetteranfrage fuer den ersten belegten Slot |
| NavigateTo |
Konstruktor |
L6=AcarsEnroute, R3=AcarsWxReceived |
Beispiel
Dim page As New AcarsWxPage()
page.Render(ctx, buffer)
' ICAO eingeben (Scratchpad = "EDDF"):
Dim cmd = page.HandleLsk(McduLskKey.L1, ctx) ' -> ClearScratchpad, _stations(0) = "EDDF"
' Wetteranfrage senden:
Dim cmd2 = page.HandleLsk(McduLskKey.R1, ctx) ' -> RequestWeather("EDDF", "METAR")
Aenderungshistorie
| Version |
Datum |
Aenderung |
| 1.0 |
2026-04-16 |
Erstdokumentation |