SimFuelPage (IPage)
| Eigenschaft |
Wert |
| Modul |
Mcdu/Pages |
| Klasse |
SimFuelPage |
| Typ |
IPage Implementation |
| Sichtbarkeit |
Public |
| Datei |
Mcdu/Pages/SimPages.vb |
Beschreibung
FUEL Seite — zeigt alle fuenf Kraftstofftanks des A320 (Left Outer, Left Inner, Center, Right Inner, Right Outer) mit aktuellem Setzwert und Maximalwert an. Der Pilot gibt ueber das Scratchpad einen numerischen kg-Wert ein und weist ihn per LSK dem jeweiligen Tank zu. R4 (SET) sendet alle fuenf Tankwerte als Pipe-getrennten String ueber Register 5005. Portiert aus VB6 CreateSimFuel / ProcessSIMFUEL. Maximale Tankkapazitaeten: Outer 2070 kg, Inner 8250 kg, Center 8250 kg.
Implementierte Methoden
Render
Public Sub Render(ctx As McduContext, buffer As Inet.Arinc429ScreenBuffer) Implements IPage.Render
| Name |
Typ |
Beschreibung |
Standard |
| ctx |
McduContext |
MCDU-Kontextdaten |
— |
| buffer |
Inet.Arinc429ScreenBuffer |
Zielpuffer fuer die gerenderten ARINC-429-Bildschirmdaten |
— |
HandleLsk
Public Function HandleLsk(key As McduLskKey, ctx As McduContext) As McduCommand Implements IPage.HandleLsk
| Name |
Typ |
Beschreibung |
Standard |
| key |
McduLskKey |
Gedrueckte LSK-Taste |
— |
| ctx |
McduContext |
MCDU-Kontextdaten |
— |
Rückgabewert (HandleLsk)
| Typ |
Beschreibung |
| McduCommand |
ClearScratchpad bei gueltigem Wert, ShowScratchpadMessage bei FORMAT ERROR, SendSimRegister(5005) bei SET, NavigateTo(Sim1) bei L6 |
Ablaufdiagramm
flowchart TD
A[Start Render] --> B[LISTCLEAR senden]
B --> C[Titel FUEL schreiben]
C --> D[L1/R1: LEFT OUTER / RIGHT OUTER mit Set/Max]
D --> E[L2/R2: LEFT INNER / RIGHT INNER mit Set/Max]
E --> F[L3: CENTER mit Set/Max]
F --> G[R4: SET* amber]
G --> H[L6: RETURN]
H --> I[ParseAndRender]
I --> J[Ende]
Aufgerufen von
| Modul |
Sub/Function |
Kontext |
| McduActor |
RenderActivePage |
Seitenrendering bei aktivem PageType.SimFuel |
Ruft auf
| Modul |
Sub/Function |
Kontext |
| McduCommandParser |
ParseAndRender |
Kommandoliste in Bildschirmpuffer rendern |
| SendSimRegister |
(McduCommand) |
Register 5005 mit Pipe-getrennten Tankwerten senden |
Beispiel
Dim page As New SimFuelPage()
page.Render(ctx, buffer)
' Scratchpad "5000" eingeben, dann L2 druecken → Left Inner auf 5000 kg
Dim cmd = page.HandleLsk(McduLskKey.L2, ctx)
' cmd ist ClearScratchpad (interner Wert auf 5000 gesetzt)
' R4 druecken → alle 5 Tanks senden
Dim setCmd = page.HandleLsk(McduLskKey.R4, ctx)
' setCmd ist SendSimRegister(5005, "0|5000|0|0|0")
Änderungshistorie
| Version |
Datum |
Änderung |
| 1.0 |
2026-04-16 |
Erstdokumentation |