Zum Inhalt

TestFlightPlanService.Save

Eigenschaft Wert
Modul Forms
Klasse TestFlightPlanService
Typ Sub
Sichtbarkeit Public
Datei Forms/TestFlightPlanService.vb

Beschreibung

Serialisiert das uebergebene TestFlightPlanDto als eingeruecktes JSON und schreibt es in die Datei test-fpln.json im Anwendungsverzeichnis. Eine eventuell vorhandene Datei wird stillschweigend ueberschrieben. Das DTO enthaelt den vollstaendigen Raw-Flugplan sowie alle Kernel-State-Felder, die die Trajectory-Berechnung direkt steuern: Cost Index, Cruise-Flughoehe, ADEP/ADES-Hoehen, ZFW, FOB, CRZ-Temperatur und Windtabellen fuer Steig-, Reise- und Sinkflug. Nach erfolgreichem Schreiben wird ein Info-Logeintrag via NLog erstellt.

Signatur

Public Sub Save(dto As TestFlightPlanDto)

Parameter

Name Typ Beschreibung Standard
dto TestFlightPlanDto Das zu serialisierende Datenobjekt mit Flugplan und Kernel-State-Feldern

Ablaufdiagramm

flowchart TD
    A[Start] --> B[GetFilePath aufrufen]
    B --> C[DTO mit JsonSerializer.Serialize serialisieren]
    C --> D[File.WriteAllText in test-fpln.json]
    D --> E[NLog Info-Eintrag schreiben]
    E --> F[Ende]

Aufgerufen von

Modul Sub/Function Kontext
frmRawFpln mnuSaveTest_Click Test-Menue "Save Test FPLN" — serialisiert den aktiven Flugplan mit aktuellem KernelState

Ruft auf

Modul Sub/Function Kontext
TestFlightPlanService GetFilePath Ermittelt den absoluten Dateipfad
JsonSerializer Serialize Serialisiert das DTO als eingeruecktes JSON
File WriteAllText Schreibt den JSON-String in die Datei
NLog Logger Info Protokolliert CI, CRZ, ADEP, ADES und Dateipfad

Beispiel

' Test-Flugplan mit Kernel-State speichern
Dim dto As New TestFlightPlanDto() With {
    .FlightPlan = RecordingMapper.FlightPlanToDto(plan),
    .CostIndex = 30,
    .CrzAltFt = 37000,
    .AdepAltFt = 130,
    .AdesAltFt = 45,
    .ZfwKg = 55000,
    .FobKg = 12000,
    .CrzTemp = -56
}
TestFlightPlanService.Save(dto)

Aenderungshistorie

Version Datum Aenderung
1.0 2026-04-16 Erstdokumentation