Files
qt6-migration-pipeline/TetraIF/LogView/zsksxd_tetraForLogView_guez.x
T
2026-07-14 12:07:36 +02:00

1840 lines
63 KiB
Plaintext

/*
const MAX_LAENGE_GEFECHTSFELDTELEGRAMM = 2000;
*/
/*-------------------------------*/
/* Telegramm-ID's */
/*-------------------------------*/
enum8 gef_telegramm_id_et {
GEF_BESTAETIGUNG = 0,
GEF_INIT = 1,
GEF_MANIPULATIONSMELDUNG = 2,
GEF_UMGEBUNGS_MELDUNG = 3,
GEF_UMGEBUNGS_MELDUNG2 = 203,
GEF_AUFFORDERUNG_BITE_MELDUNG = 4,
GEF_BITE_MELDUNG = 5,
GEF_BITE_MELDUNG2 = 205,
GEF_LIZENSIERUNG_TNE = 6,
GEF_BETRIEBSZUSTAND_AUSSTATTUNG = 7,
GEF_KONFIGURATION_TEILNEHMER = 8,
GEF_KONFIGURATION_WIRKMODELL = 9,
GEF_ANFORDERUNG_KONFIGURATIONSDATEN = 10,
GEF_KONFIGURATIONSMELDUNG = 11,
GEF_FEHLERMELDUNG_GFD = 12,
GEF_POSITIONS_MELDUNG = 21,
GEF_POSITIONS_MELDUNG_MIT_TEILNEHMER = 22,
GEF_POSITIONS_MELDUNG_LFZ = 23,
GEF_POSITIONSKORREKTURDATEN = 24,
GEF_WIRKFELD_EINZELGESCHOSS = 31,
GEF_WIRKFELD_FLAECHENDECKENDES_FEUER = 32,
GEF_WIRKFELD_FLAECHENDECKENDES_FEUER_STOP = 33,
GEF_WIRKFELD_FLAECHENDECKENDES_FEUER_FORTSETZEN = 34,
GEF_WIRKFELD_MINENSPERRE = 35,
GEF_WIRKFELD_STATUS_MINENSPERRE = 36,
GEF_WIRKFELD_A_KAMPFMITTEL = 37,
GEF_WIRKFELD_C_KAMPFSTOFF = 38,
GEF_DEAKTIVIERUNG_WIRKFELD = 39,
GEF_WIRKFELD_AENDERUNG_BEZEICHNER = 40,
GEF_DEAKTIVIERUNG_EINZELMINE = 41,
GEF_REAKTIVIERUNG_DUS_MINE = 42,
GEF_DEFINITION_IED = 43,
GEF_ZUSTAND_IED = 44,
GEF_STATUS_EINZELMINENSIMULATOR = 45,
GEF_WIRKFELD_EINZELMINENSIMULATOR = 46,
GEF_FEUER_EREIGNIS = 51,
GEF_TREFFER_EREIGNIS_DUS = 52,
GEF_TREFFER_EREIGNIS_WIRKSIMULATION = 53,
GEF_TREFFER_AUSLOESUNG = 54,
GEF_SCHIEDSRICHTEREINGRIFF = 55,
GEF_SELEKTIVE_AUFMUNITIONIERUNG = 56,
GEF_TREFFER_EREIGNIS_DUS_IPS = 228,
GEF_TREFFER_EREIGNIS_WIRKSIMULATION_IPS = 229,
GEF_TAKTISCHER_STATUS = 61,
GEF_FUNKTIONSRAUM = 62,
GEF_EINTRETEN_FUNKTIONSRAUM = 63,
GEF_DEAKTIVIEREN_FUNKTIONSRAUM = 64,
GEF_DATENVERKEHR_SRT_TDS = 71,
GEF_DATENVERKEHR_TDS_SRT = 72,
GEF_DATENVERKEHR_DMF_TDS = 73,
GEF_DATENVERKEHR_TDS_DMF = 74,
GEF_STEUERUNG_VERKEHRSAUFKOMMEN = 81,
GEF_NACHFORDERUNG_BROADCAST_TELEGRAMME = 82,
GEF_NOP = 83,
GEF_SONDERSENSORIK_BETRIEBSZUSTAND = 91,
GEF_SONDERSENSORIK_FAHRSPUR = 92,
GEF_SONDERSENSORIK_DATEN = 93,
GEF_SONDERSENSORIK_TREFFER_AUFGES_TLN = 94,
GEF_SONDERSENSORIK_MIVANH_VERLEGEDATEN = 95,
GEF_SONDERSENSORIK_WMIV_VERLEGEDATEN = 96,
GEF_SONDERSENSORIK_MIVANH_VERLEGEPOSITION = 97,
GEF_SPRACHAUSWAHL = 101,
GEF_ALLGEMEINE_NACHRICHT = 102,
GEF_ECHO_ON_OFF = 103,
GEF_ESW_MELDUNG = 104,
GEF_WF_SAMMELDEAKTIVIERUNG = 105,
GEF_WF_SAMMELDEAKTIVIERUNG_DUS_MINEN = 106,
GEF_WF_SAMMELDEAKTIVIERUNG_FUNKTIONSRAUM = 107,
GEF_DATENVERKEHR_GEOP_TDS = 181,
GEF_DATENVERKEHR_TDS_GEOP = 182,
GEF_DATENVERKEHR_TGTS_TDS = 183,
GEF_DATENVERKEHR_TDS_TGTS = 184,
GEF_GERAETEEREIGNIS = 185,
GEF_WAFFENZUORDNUNG = 200,
GEF_IPS_POSITIONSDATEN = 201,
GEF_STANDORTBESTIMMUNG = 25,
GEF_MUNITIONSVORRAT_EINER_ZUGEORDNETEN_WAFFE = 202,
GEF_FEUEREREIGNIS_MIT_WAFFENZUORDNUNG = 210,
GEF_AUSLOESUNG_DUS_TREFFER = 211,
GEF_ANFORDERUNG_SW_VERSION = 212,
GEF_SW_VERSIONSMELDUNG = 213,
GEF_TREFFER_EREIGNIS_SEKUNDAERWIRKUNG = 218,
GEF_TECHNIK_FUNKTIONSRAUM = 219,
GEF_ANFORDERUNG_KONFIG_ZEG = 220,
GEF_KONFIGURATION_IPS = 221,
GEF_KONFIGURATION_ZEG = 222,
GEF_TREFFEREREIGNIS_SEKUNDAERWIRKUNG = 223,
GEF_TREFFEREREIGNIS_GEBAEUDE = 224,
GEF_TEILNEHMERMODE_SETZEN = 230,
GEF_TEILNEHMERMODE_MELDUNG = 231,
GEF_TEILNEHMERMODE_ANFORDERN = 232,
GEF_TEILNEHMER_KONFIG_ANTWORT = 233,
GEF_TEILNEHMER_KONFIG_SETZEN = 234,
GEF_TEILNEHMER_KONFIG_ANFORDERN = 235,
GEF_SANITAETSDIENST_INSTANDSETZUNG = 240,
GEF_BESTANDSMELDUNG_SANITAETSMATERIAL = 241,
GEF_SANITAETSDIENST_INSTANDSETZUNG_PVSAN = 242,
GEF_GEFECHTSFELDTELEGRAMM = 300,
GEF_UEBERLAST_WARNUNG_ENTWARNUNG = 301,
GEF_DATENFUNK_INIT = 302,
GEF_DATENFUNK_EXIT = 303,
GEF_DATENFUNK_EXIT_ACKNOWLEDGE = 304,
GEF_ZUORDNUNG_GRUPPENRUFADRESSE = 305,
GEF_NOTRUF = 1120
};
/*==============================================================*/
/* Strukturtypen, die mehrfach verwendet werden */
/*==============================================================*/
/*---------------------------------------*/
/* Identifikation */
/*---------------------------------------*/
typedef UInt16 gef_ausstattungs_id_t;
/*---------------------------------------*/
/* Header */
/*---------------------------------------*/
struct gef_header_rt {
gef_ausstattungs_id_t identitaet;
};
/*---------------------------------------*/
/* GPS-Zeit */
/*---------------------------------------*/
struct gef_gps_zeit_rt {
u_int GPS_zeit;
};
/*---------------------------------------*/
/* GPS-Position */
/*---------------------------------------*/
struct gef_gps_position_rt {
SInt24 nordwert;
SInt24 ostwert;
};
/*---------------------------------------*/
/* Lastzustand Datenfunk */
/*---------------------------------------*/
enum8 gef_lastzustand_datenfunk_et {
Normallast = 0,
Hochlast = 1,
Ueberlast = 2
};
/*==============================================================*/
/* Beschreibung der speziellen TETRA-Telegramme */
/*==============================================================*/
struct TETRA_register_indication_rt {
UInt32LE ISSI_ext_host;
};
enum8 TETRA_registration_status_et {
ISSI_successful_registered = 0,
Duplicate_ISSI = 1,
Invalid_ISSI = 2,
Invalid_IP_address = 3
};
struct TETRA_register_response_rt {
TETRA_registration_status_et registration_status;
};
enum8 TETRA_login_status_et {
Login_Request = 1,
Login_Accept = 2,
Login_Reject = 3
};
enum8 TETRA_login_mastering_et {
No_Mastering = 0,
Mastering = 1
};
enum8 TETRA_reject_cause_et {
Reserved = 0,
EqIdAlreadyAssigned = 1,
IssiAlreadyAssigned = 2,
EqIdAssignedInOtherExercise = 3
};
struct TETRA_login_telegram_rt {
gef_header_rt header;
TETRA_login_status_et:0..1 login_status;
TETRA_login_mastering_et:2..2 login_mastering;
TETRA_reject_cause_et:3..6! reject_cause;
};
enum8 TETRA_telegram_type_et {
NotFragmented = 0,
FirstFragment = 1,
MiddleFragment = 3,
LastFragment = 2
};
enum8 TETRA_fragment_counter_et {
0 = 0,
1 = 1,
2 = 2,
3 = 3,
4 = 4,
5 = 5,
6 = 6,
7 = 7,
8 = 8,
9 = 9,
10 = 10,
11 = 11,
12 = 12,
13 = 13,
14 = 14,
15 = 15
};
struct TETRA_first_fragment_rt {
TETRA_telegram_type_et:0..1 telegram_type;
TETRA_fragment_counter_et:4..7! fragment_counter;
gef_telegramm_id_et telegram_id;
opaque data<28>; /* 28 => dyn.-array-offset */
};
struct TETRA_middle_fragment_rt {
TETRA_telegram_type_et:0..1 telegram_type;
TETRA_fragment_counter_et:4..7! fragment_counter;
opaque data<27>; /* 27 => dyn.-array-offset */
};
struct TETRA_last_fragment_rt {
TETRA_telegram_type_et:0..1 telegram_type;
TETRA_fragment_counter_et:4..7! fragment_counter;
opaque data<27>; /* 27 => dyn.-array-offset */
};
struct TETRA_air_interface_load_report_rt {
UInt8 network_index;
UInt16LE base_station_ID;
UInt8 channel_ID;
UInt8 queue_length;
};
struct TETRA_status_ind_req_rt {
UInt32LE ISSI_host;
UInt32LE ISSI_destination;
UInt32LE status;
};
enum8 TETRA_monitor_et {
No_Monitoring = 0,
Monitoring = 1
};
struct TETRA_group_monitoring_ind_rt {
UInt32LE ISSI_host;
TETRA_monitor_et monitor;
UInt16LEIdx count_gssi;
UInt32LE gssi<5>;
};
struct TETRA_air_interface_load_req_rt {
UInt16LEIdx number_of_reports;
TETRA_air_interface_load_report_rt air_interface_load_report<4>;
};
struct TETRA_unknown_PDU_rt {
UInt8 magic_number;
UInt8 counter;
UInt16LE length;
UInt8 PDU_Type;
opaque data<5>; /* 5 => dyn.-array-offset */
};
/*==============================================================*/
/* Beschreibung der Telegramme */
/*==============================================================*/
/*----------------------------------------------------------------*/
/* Automatische Conversion */
/*----------------------------------------------------------------*/
/*
Alle TETRA-Meldungen, die mit der Klasse CoPrtCnvTelegramConverter in
eine Zentral-Meldung konvertiert werden, müssen trotzdem in der TETRA-
union definiert werden, damit die Telegramme Namen bekommen.
*/
struct gef_automatic_conversion_rt {
gef_header_rt header;
UInt8 fehler_diese_meldung_sollte_automatisch_konvertiert_werden;
};
/*----------------------------------------------------------------*/
/* Init-Meldung */
/* INIT_MELDUNG */
/*----------------------------------------------------------------*/
enum8 gef_tln_aufmunitionieren_et {
tln_am_nein = 0,
tln_am_ja = 1
};
enum8 gef_tln_zuruecksetzen_et {
tln_zs_nein = 0,
tln_zs_ja = 1
};
enum8 gef_tln_manipulation_et {
tln_mp_nein = 0,
tln_mp_reset = 1
};
enum8 gef_tln_medizinische_vorraete_auffuellen_et {
tln_mv_nein = 0,
tln_mv_reset = 1
};
/* MSB = 0 ... */
struct gef_initialisierungsdaten_rt {
gef_tln_aufmunitionieren_et:2..2 tln_aufmunitionieren;
gef_tln_zuruecksetzen_et:1..1 tln_zuruecksetzen;
gef_tln_manipulation_et:7..7 tln_manipulation;
gef_tln_medizinische_vorraete_auffuellen_et:6..6 tln_mediziniesche_vorraete_auffuellen;
};
struct gef_init_meldung_rt {
gef_header_rt header;
gef_initialisierungsdaten_rt initialisierungsdaten;
};
/*----------------------------------------------------------------*/
/* Umgebungs-Meldung */
/* UMGEBUNGS_MELDUNG */
/*----------------------------------------------------------------*/
enum8 gef_uebungspause_et {
KEINE_UEBUNGSPAUSE = 0,
B_MIT_TEST = 1
};
enum8 gef_inhbit_time_et {
IH_UNDEFINED = 0,
IH_1_SEKUNDE = 1,
IH_2_SEKUNDEN = 2,
IH_3_SEKUNDEN = 3,
IH_4_SEKUNDEN = 4,
IH_5_SEKUNDEN = 5,
IH_6_SEKUNDEN = 6,
IH_7_SEKUNDEN = 7,
IH_8_SEKUNDEN = 8,
IH_9_SEKUNDEN = 9,
IH_10_SEKUNDEN = 10,
IH_11_SEKUNDEN = 11,
IH_12_SEKUNDEN = 12,
IH_13_SEKUNDEN = 13,
IH_14_SEKUNDEN = 14,
IH_15_SEKUNDEN = 15,
IH_16_SEKUNDEN = 16,
IH_17_SEKUNDEN = 17,
IH_18_SEKUNDEN = 18,
IH_19_SEKUNDEN = 19,
IH_20_SEKUNDEN = 20,
IH_21_SEKUNDEN = 21,
IH_22_SEKUNDEN = 22,
IH_23_SEKUNDEN = 23,
IH_24_SEKUNDEN = 24,
IH_25_SEKUNDEN = 25,
IH_26_SEKUNDEN = 26,
IH_27_SEKUNDEN = 27,
IH_28_SEKUNDEN = 28,
IH_29_SEKUNDEN = 29,
IH_30_SEKUNDEN = 30,
IH_31_SEKUNDEN = 31
};
struct gef_betriebszustaende_gefechtsfeld_rt {
gef_uebungspause_et:0..0 uebungspause;
gef_inhbit_time_et:1..5 pos_inhibit_time;
gef_lastzustand_datenfunk_et:6..7! lastzustand_datenfunk;
};
struct gef_basiskoordinate_zur_positionsbestimmung_rt {
UInt8 zone;
string band;
string quadrat[2];
UInt8 ostwert;
UInt8 nordwert;
};
struct gef_umgebungs_meldung_rt {
gef_header_rt header;
UInt16 broadcast_index;
UInt16 uebungskennung;
UInt8 ruecksetzzaehler;
gef_betriebszustaende_gefechtsfeld_rt betriebszustaende_gefechtsfeld;
string zeitzone;
gef_basiskoordinate_zur_positionsbestimmung_rt basiskoordinate_zur_positionsbestimmung;
};
struct gef_umgebungs_meldung2_rt {
gef_header_rt header;
UInt16 broadcast_index;
UInt16 uebungskennung;
UInt8 ruecksetzzaehler;
gef_betriebszustaende_gefechtsfeld_rt betriebszustaende_gefechtsfeld;
string zeitzone;
gef_basiskoordinate_zur_positionsbestimmung_rt basiskoordinate_zur_positionsbestimmung;
gef_gps_zeit_rt aktuelle_zeit;
};
/*----------------------------------------------------------------*/
/* Aufforderung BITE-Meldung */
/* AUFFORDERUNG_BITE_MELDUNG */
/*----------------------------------------------------------------*/
enum8 gef_bite_meldungsart_et {
NUR_STATUSABFRAGE = 0,
ERST_SELBSTTEST = 1
};
struct gef_aufforderung_bite_meldung_rt {
gef_header_rt header;
gef_bite_meldungsart_et bite_meldungsart;
};
/*----------------------------------------------------------------*/
/* Konfiguration Wirkmodell */
/* GEF_KONFIGURATION_WIRKMODELL */
/*----------------------------------------------------------------*/
struct gef_wirkmodell_rt {
UInt8 minen_ied;
UInt8 steilfeuer;
UInt8 einsatzmittel;
UInt8 ac_waffen;
};
struct gef_konfiguration_wirkmodell_rt {
gef_header_rt header;
gef_wirkmodell_rt wirkmodelle;
};
/*----------------------------------------------------------------*/
/* Konfigurationsmeldung */
/* GEF_KONFIGURATION_TEILNEHMER */
/*----------------------------------------------------------------*/
struct gef_login_parameter_rt {
UInt8 wartezeit_versuche;
UInt8 anzahl_versuche;
UInt8 mastering_flag;
};
enum8 gef_sprache_et {
keine_aenderung = 0,
deutsch = 1,
englisch = 2,
franzoesisch = 3
};
struct gef_konfiguration_abe_rt {
UInt8 sprachausgabe;
gef_sprache_et sprache;
};
struct gef_konfiguration_wirkdarstellung_rt {
UInt8 pyrotechnik;
};
enum8 gef_betriebsart_mhgr_sensorik_et {
BetriebAmAusbAusstgPers = 0,
BetriebAnSonstigenFzg = 2,
BetriebAnSrFahrzeug = 3
};
struct gef_konfiguration_mhgr_sensorik_rt {
gef_betriebsart_mhgr_sensorik_et betriebsart;
UInt8 energiesparmodus;
};
enum8 gef_konfiguration_ss_fir_et {
keineKonfigurationFir = 0,
fir = 1,
firSpzMarder = 2
};
enum8 gef_konfiguration_ss_minenverlegung_et {
keineKonfigurationMinenverlegung = 0,
MvAnh = 1,
Wmv = 2
};
enum8 gef_konfiguration_ss_standard_et {
keineKonfigurationSsStandard = 0,
ZABC = 3,
CSF = 4,
PzBr = 5,
MRF = 7
};
struct gef_konfiguration_sondersenoriken_rt {
gef_konfiguration_ss_fir_et fir;
gef_konfiguration_ss_minenverlegung_et minenverlegung;
gef_konfiguration_ss_standard_et standard;
};
enum8 gef_agdus_hw_modus_et {
ohneHelmOhneWeste = 1,
mitHelmOhneWeste = 2,
mitHelmMitWeste = 3
};
enum8 gef_konfigurations_positionsupdate_et {
Fahrzeug = 0,
Person = 1,
Luftfahrzeug = 2
};
struct gef_konfiguration_anzeige_rt {
UInt8 hauptgruppe;
UInt8 untergruppe;
};
struct gef_konfigurationsdaten_rt {
gef_ausstattungs_id_t identitaet;
UInt16 can_startup_zeit;
unsigned char teilnehmertyp;
gef_login_parameter_rt login_parameter;
UInt32LE can_geraete_konfiguration;
gef_konfiguration_abe_rt abe;
gef_konfiguration_wirkdarstellung_rt wirkdarstellung;
gef_konfiguration_mhgr_sensorik_rt mhgr_sensorik;
gef_konfiguration_sondersenoriken_rt sondersenrik;
gef_agdus_hw_modus_et agdus_hw_modus;
gef_konfigurations_positionsupdate_et positionsupdate;
gef_konfiguration_anzeige_rt anzeige;
UInt8 wirkmodellAgdus;
};
%
struct gef_konfiguration_teilnehmer_rt {
gef_header_rt header;
gef_gps_zeit_rt gps_zeit;
gef_konfigurationsdaten_rt konfiguration;
gef_wirkmodell_rt wirkmodelle;
};
/*----------------------------------------------------------------*/
/* Lizensierung TNE-Meldung */
/* LIZENSIERUNG_TNE_MELDUNG */
/*----------------------------------------------------------------*/
enum8 gef_lizenzierungsart_et {
ANMELDUNG_ERFOLGREICH = 0,
ANMELDUNG_ABGELEHNT = 1,
ABMELDUNG = 2
};
struct gef_lizensierung_tne_meldung_rt {
gef_header_rt header;
gef_lizenzierungsart_et lizenzierungsart;
opaque fehlercode_lizenzierung[3];
};
enum8 gef_qualifikation_et {
Undefiniert = 0,
Arzt = 1,
Sanitaeter = 2,
Ersthelfer = 3
};
/*----------------------------------------------------------------*/
/* Bestandsmeldung Saniätsmaterial */
/* GEF_BESTANDSMELDUNG_SANITAETSMATERIAL */
/*----------------------------------------------------------------*/
struct gef_bestandmseldung_sanitatsmaterial_rt {
gef_header_rt header;
gef_gps_zeit_rt gps_zeit;
UInt16 id_behandelnder;
gef_qualifikation_et qualifikation;
UInt8 anzahl_sanmat;
UInt24 bestand_sanmaterialien;
};
/*----------------------------------------------------------------*/
/* SaniätsDienst Instandssetzung PVSAN */
/* GEF_SANITAETSDIENST_INSTANDSETZUNG_PVSAN */
/*----------------------------------------------------------------*/
struct gef_sanitetsdienst_instandsetzung_pvsan_rt {
gef_header_rt header;
gef_gps_zeit_rt gps_zeit;
UInt16 massnahmen_getaetigt;
UInt16 id_behandelnder;
gef_qualifikation_et qualifikation;
UInt16 massnahmen_benoetigt;
};
/*----------------------------------------------------------------*/
/* Technik Funktionsraum-Meldung */
/* TECHNIK_FUNKTIONSRAUM */
/*----------------------------------------------------------------*/
struct gef_technik_funktionsraum_rt {
gef_header_rt header;
UInt16 broadcast_index;
UInt16 wirkfeldkennung;
UInt8 typ;
string wirkfeldbezeichner[8];
gef_gps_position_rt zentrum;
UInt16 breite;
UInt16 hoehe;
};
/*----------------------------------------------------------------*/
/* Wirkfeld Einzelgeschoss-Meldung */
/* WIRKFELD_EINZELGESCHOSS_MELDUNG */
/*----------------------------------------------------------------*/
enum8 gef_munitionsart_steilfeuer_et {
STEILFEUER_AZ = 1,
STEILFEUER_HE_ANNZ = 2,
STEILFEUER_BOMBLET = 3,
STEILFEUER_SM_ART = 4,
STEILFEUER_NEBEL = 5,
MOERSER_AZ = 10,
MOERSER_ANNZ = 11,
BORDKANONE = 20,
UNGEL_RAKETE = 21,
BOMBLET = 22,
SPRENGBOMBE = 23
};
struct gef_beschreibung_wirkfeld_einzelgeschoss_rt {
UInt16 wirkfeldkennung;
string wirkfeldbezeichner[8];
UInt8 partei_id;
gef_gps_zeit_rt wirkbeginn;
gef_gps_position_rt einschlagort;
UInt8 wirkdurchmesser;
gef_munitionsart_steilfeuer_et munitionsart;
};
struct gef_wirkfeld_einzelgeschoss_meldung_rt {
gef_header_rt header;
UInt16 broadcast_index;
gef_beschreibung_wirkfeld_einzelgeschoss_rt beschreibung_wirkfeld_einzelgeschoss;
};
/*----------------------------------------------------------------*/
/* Wirkfeld Flächendeckes Feuer-Meldung */
/* WIRKFELD_FLAECHENDECKENDES_FEUER_MELDUNG */
/*----------------------------------------------------------------*/
struct gef_beschreibung_wirkfeld_flaechendeckendes_feuer_rt {
UInt16 wirkfeldkennung;
string wirkfeldbezeichner[8];
UInt8 partei_id;
gef_gps_zeit_rt wirkbeginn;
UInt16 wirkdauer;
gef_gps_position_rt wirkfeldeckpunkt;
UInt8 wirkfeldbreite;
UInt8 wirkfeldtiefe;
UInt16 drehwinkel_alt;
UInt8 mtpbreite;
UInt8 mtpdtiefe;
UInt16 drehwinkel;
UInt16 anzahl_einschlaege;
UInt16 wirkfeldradius;
gef_munitionsart_steilfeuer_et munitionsart;
UInt8 gefahrenabstand;
UInt8 gefahrenart;
gef_gps_position_rt mtp1;
gef_gps_position_rt mtp2;
gef_gps_position_rt mtp3;
gef_gps_position_rt mtp4;
};
struct gef_wirkfeld_flaechendeckendes_feuer_meldung_rt {
gef_header_rt header;
UInt16 broadcast_index;
gef_beschreibung_wirkfeld_flaechendeckendes_feuer_rt beschreibung_wirkfeld_flaechendeckendes_feuer;
};
/*----------------------------------------------------------------*/
/* Wirkfeld Flächendeckes Feuer-Feuer Stop-Meldung */
/* WIRKFELD_FLAECHENDECKENDES_FEUER_STOP_MELDUNG */
/*----------------------------------------------------------------*/
struct gef_wirkfeld_flaechendeckendes_feuer_stop_meldung_rt {
gef_header_rt header;
UInt16 broadcast_index;
UInt16 wirkfeldkennung;
};
/*----------------------------------------------------------------*/
/* Wirkfeld Flächendeckes Feuer-Feuer Fortsetzen-Meldung */
/* WIRKFELD_FLAECHENDECKENDES_FEUER_FORTSETZEN_MELDUNG */
/*----------------------------------------------------------------*/
struct gef_beschreibung_wirkfeld_flaechendeckendes_feuer_fortsetzen_rt {
UInt16 wirkfeldkennung;
UInt16 fortsetzungswert_zufallszahl;
UInt16 nummer_des_naechsten_einschags;
gef_gps_zeit_rt fortsetzungszeit;
UInt16 verbleibende_wirkdauer;
};
struct gef_wirkfeld_flaechendeckendes_feuer_fortsetzen_meldung_rt {
gef_header_rt header;
UInt16 broadcast_index;
gef_beschreibung_wirkfeld_flaechendeckendes_feuer_fortsetzen_rt beschreibung_wirkfeld_flaechendeckendes_feuer_fortsetzen;
};
/*----------------------------------------------------------------*/
/* Wirkfeld Minensperre-Meldung */
/* WIRKFELD_MINENSPERRE_MELDUNG */
/*----------------------------------------------------------------*/
enum8 gef_minentyp_et {
SchtzAbwMi_DUS = 211,
SchtzAbVMi_DUS = 212,
PzAbwVMi_DUS = 213,
SchtzAbwMi_virtuell = 214,
PzAbwVMi_virtuell = 215,
PzAbwWMi_virtuell = 216,
PzAbwRiMi_AGDUS = 60
};
struct gef_segment_rt {
gef_gps_position_rt startpunkt;
gef_gps_position_rt endpunkt;
};
struct gef_beschreibung_wirkfeld_minensperre_rt {
UInt16 wirkfeldkennung;
string wirkfeldbezeichner[8];
UInt8 partei_id;
gef_gps_zeit_rt wirkbeginn;
UInt8 wirkdauer;
gef_gps_position_rt wirkfeldeckpunkt;
UInt8 verlegetiefe;
UInt8 verlegedichte;
gef_minentyp_et minentyp;
UInt16 minenanzahl;
UInt8Idx anzahl_segmente;
gef_segment_rt segment<5>;
};
struct gef_wirkfeld_minensperre_meldung_rt {
gef_header_rt header;
UInt16 broadcast_index;
gef_beschreibung_wirkfeld_minensperre_rt beschreibung_wirkfeld_minensperre;
};
/*----------------------------------------------------------------*/
/* Wirkfeld Status Minensperre-Meldung */
/* WIRKFELD_STATUS_MINENSPERRE_MELDUNG */
/*----------------------------------------------------------------*/
struct gef_beschreibung_minenstatus_rt {
UInt16 wirkfeldkennung;
UInt16IdxDiv8 anzahl_minen;
opaque minenstatus<150>;
};
struct gef_wirkfeld_status_minensperre_meldung_rt {
gef_header_rt header;
UInt16 broadcast_index;
gef_beschreibung_minenstatus_rt beschreibung_minenstatus;
};
/*----------------------------------------------------------------*/
/* Wirkfeld A-Kampfmittel-Meldung */
/* WIRKFELD_A_KAMPFMITTEL_MELDUNG */
/*----------------------------------------------------------------*/
struct gef_beschreibung_wirkfeld_a_kampfmittel_rt {
UInt16 wirkfeldkennung;
string wirkfeldbezeichner[8];
UInt8 partei_id;
gef_gps_zeit_rt wirkbeginn;
UInt16 wirkdauer;
gef_gps_position_rt einschlagort;
UInt16 radius;
UInt16 kantenlaenge_bereich_1;
UInt16 kantenlaenge_bereich_2;
UInt16 oeffnungswinkel;
UInt16 drehwinkel;
};
struct gef_wirkfeld_a_kampfmittel_meldung_rt {
gef_header_rt header;
UInt16 broadcast_index;
gef_beschreibung_wirkfeld_a_kampfmittel_rt beschreibung_wirkfeld_a_kampfmittel;
};
/*----------------------------------------------------------------*/
/* Wirkfeld C-Kampfstoff-Meldung */
/* WIRKFELD_C_KAMPFSTOFF_MELDUNG */
/*----------------------------------------------------------------*/
enum8 gef_kampfstofftyp_et {
fluechtig = 1,
sesshaft = 2
};
struct gef_beschreibung_wirkfeld_c_kampfstoff_rt {
UInt16 wirkfeldkennung;
string wirkfeldbezeichner[8];
UInt8 partei_id;
gef_gps_zeit_rt wirkbeginn;
UInt8 wirkdauer;
gef_gps_position_rt einschlagort;
UInt16 radius;
UInt8 vergroesserungsfaktor;
UInt16 windrichtung;
UInt8 windgeschwindigkeit;
gef_gps_zeit_rt gueltigkeitszeitpunkt_wetterdaten;
gef_gps_position_rt position_gueltigkeitszeitpunkt_wetterdaten;;
UInt8 kampfstoffkennung;
gef_kampfstofftyp_et kampfstofftyp;
};
struct gef_wirkfeld_c_kampfstoff_meldung_rt {
gef_header_rt header;
UInt16 broadcast_index;
gef_beschreibung_wirkfeld_c_kampfstoff_rt beschreibung_wirkfeld_c_kampfstoff;
};
/*----------------------------------------------------------------*/
/* Deaktivierung-Wirkfeld-Meldung */
/* DEAKTIVIERUNG_WIRKFELD_MELDUNG */
/*----------------------------------------------------------------*/
enum8 gef_wirkfeldtyp_et {
Undefined = 0,
Minensperre = 1,
Steilfeuer_Flaeche = 2,
Steilfeuer_Einzel = 3,
A_Waffe = 4,
C_Waffe = 5,
Funktionsraum = 6,
TechnicalArea = 7,
DusSingleMineSimulator = 8,
GasPipeDetonation = 9,
SpecialArea = 10,
BeStillWarning = 11,
DangerZoneExplosion = 12,
AirSupport = 13
};
struct gef_deaktivierung_wirkfeld_meldung_rt {
gef_header_rt header;
UInt16 broadcast_index;
gef_wirkfeldtyp_et wirkfeldtyp;
UInt16 wirkfeldkennung;
};
/*----------------------------------------------------------------*/
/* Wirkfeld Aenderung Bezeichner-Meldung */
/* WIRKFELD_AENDERUNG_BEZEICHNER_MELDUNG */
/*----------------------------------------------------------------*/
struct gef_wirkfeld_aenderung_bezeichner_meldung_rt {
gef_header_rt header;
UInt16 broadcast_index;
gef_wirkfeldtyp_et wirkfeldtyp;
UInt16 wirkfeldkennung;
string wirkfeldbezeichner[8];
};
/*----------------------------------------------------------------*/
/* Deaktivierung Einzelmine-Meldung */
/* DEAKTIVIERUNG_EINZELMINE_MELDUNG */
/*----------------------------------------------------------------*/
struct gef_deaktivierung_einzelmine_meldung_rt {
gef_header_rt header;
UInt16 broadcast_index;
gef_gps_zeit_rt GPS_Zeit;
UInt16 wirkfeldkennung;
UInt16 minenindex;
};
/*----------------------------------------------------------------*/
/* Reaktivierung DUS Mine-Meldung */
/* REAKTIVIERUNG_DUS_MINE_MELDUNG */
/*----------------------------------------------------------------*/
struct gef_dus_minenkennungen_rt {
UInt16Idx anzahl_DUS_Minen;
UInt16 kennung_DUS_Mine<500>;
};
struct gef_reaktivierung_dus_mine_meldung_rt {
gef_header_rt header;
UInt16 broadcast_index;
gef_dus_minenkennungen_rt DUS_minenkennungen;
};
/*----------------------------------------------------------------*/
/* Definition-IED */
/* DEFINITION_IED */
/*----------------------------------------------------------------*/
enum8 gef_ied_typ_et {
S_IED = 1,
IED_innen = 2,
IED_aussen = 3
};
enum8 gef_ied_kopplungsstatus_et {
IED_keine_Kopplung = 1,
IED_Kopplung_an_Tln = 2,
IED_Kopplung_an_IPS = 3
};
enum8 gef_ied_takitscher_zustand_et {
IED_inaktiv = 0, /* verlegt und gesichert */
IED_aktiv = 1, /* scharf */
IED_geloescht = 2, /* entschaerft */
IED_ausgeloest_Schalter = 3,
IED_ausgeloest_Fernbedienung = 4,
IED_ausgeloest_Lichtschranke = 5,
IED_ausgeloest_Zugdraht = 6,
IED_ausgeloest_Kontrollgeraet = 7,
IED_unbekannt = 255 /* Kontakt verloren */
};
struct gef_definition_ied_rt {
gef_header_rt header;
gef_gps_zeit_rt gps_zeit;
UInt16 kennung;
gef_ied_typ_et typ;
UInt8 ausloeser;
UInt8 sprengkraft;
gef_gps_position_rt gps_position;
UInt8 partei_id;
gef_ied_kopplungsstatus_et kopplungsstatus;
gef_ausstattungs_id_t gekoppelte_id;
gef_ied_takitscher_zustand_et taktischer_zustand; /* 0 inaktiv, 1 aktiv */
UInt8 pyrotechnik; /* 0 keine Pyro, 1 mit Pyro */
};
/*----------------------------------------------------------------*/
/* Zustand-IED */
/* ZUSTAND_IED */
/*----------------------------------------------------------------*/
enum8 gef_ied_fehler_et {
IED_kein_Fehler = 0,
IED_Kommunikations_Fehler = 1
};
struct gef_zustand_ied_rt {
gef_header_rt header;
gef_gps_zeit_rt gps_zeit;
UInt16 kennung;
gef_ied_takitscher_zustand_et taktischer_zustand;
UInt8 pyrotechnik; /* 0 keine Pyro, 1 mit Pyro */
UInt8 batteriewarnung; /* Bitleiste */
gef_ied_fehler_et fehler_status_elektronik;
gef_ied_fehler_et fehler_status_pyrotechnik1;
gef_ied_fehler_et fehler_status_pyrotechnik2;
gef_ied_fehler_et fehler_status_pyrotechnik3;
};
/*----------------------------------------------------------------*/
/* Treffer Ausloesung-Meldung */
/* TREFFER_AUSLOESUNG_MELDUNG */
/*----------------------------------------------------------------*/
enum8 gef_verwundung_beschaedigung_et {
Einsatzbereit = 0,
Leichter_Treffer = 1,
Mittlerer_Treffer = 2,
Schwerer_Treffer = 3,
Bewegungsunfaehig = 4,
Bewegungsunfaehig_sichtbar = 5,
Ausfall_Waffenanlage = 6,
Ausfall_Waffenanlage_sichtbar = 7,
Totalausfall_sichtbar = 8,
Zeitlicher_Ausfall = 9,
Annaehernder_Treffer = 10,
Treffer_ohne_Wirkung = 11
};
struct gef_treffer_ausloesung_meldung_rt {
gef_header_rt header;
gef_gps_zeit_rt GPS_zeit;
gef_verwundung_beschaedigung_et verwundung_beschaedigung;
};
/*----------------------------------------------------------------*/
/* Status Einzelminensimulator */
/* STATUS_EINZELMINENSIMULATOR */
/*----------------------------------------------------------------*/
struct gef_status_einzelminensimulator_rt {
gef_header_rt header;
gef_gps_zeit_rt gps_zeit;
UInt16 minenkennung;
gef_gps_position_rt gps_position;
UInt8 minentyp;
UInt8 status;
};
/*----------------------------------------------------------------*/
/* Wirkfeld Einzelminensimulator */
/* WIRKFELD_EINZELMINENSIMULATOR */
/*----------------------------------------------------------------*/
struct gef_beschreibung_einzelminensimulator_rt {
UInt16 wirkfeldkennung;
UInt8 partei_id;
UInt16 minenkennung;
gef_gps_zeit_rt wirkbeginn;
gef_gps_position_rt minenposition;
UInt8 minentyp;
};
struct gef_wirkfeld_einzelminensimulator_rt {
gef_header_rt header;
UInt16 broadcast_index;
gef_beschreibung_einzelminensimulator_rt beschreibung_einzelminensimulator;
};
/*----------------------------------------------------------------*/
/* Schiedsrichtereingriff */
/* SCHIEDSRICHTEREINGRIFF */
/*----------------------------------------------------------------*/
/*
struct gef_schiedsrichtereingriff_rt {
gef_header_rt header;
gef_gps_zeit_rt gps_zeit;
gef_gps_position_rt gps_position;
UInt16 schiedsrichter_aktion;
UInt8 schiedsrichter;
};
/*----------------------------------------------------------------*/
/* Selektive Aufmunitionierung */
/* GEF_SELEKTIVE_AUFMUNITIONIERUNG */
/*----------------------------------------------------------------*/
struct gef_aufmunitionierung_rt {
UInt16 munitionsart;
UInt8 ort; /* Turm / Wanne */
UInt16 neuer_vorrat; /* 0xffff = default, 0xfffe = unveraendert lassen, 0xfffd = unbegrenzt */
UInt16 neuer_default_vorrat; /* 0xffff = factory default, 0xfffe = unveraendert lassen, 0xfffd = unbegrenzt */
UInt8 tracer_ratio; /* 0 = kein Trace, 1 = jedes Projektil, 2 = jedes 2. Projektil, ... */
};
struct gef_selektive_aufmunitionierung_rt {
gef_header_rt header;
u_int waffen_id;
UInt8Idx anzahl_aufmunitionierungen;
gef_aufmunitionierung_rt aufmunitionierung<10>;
};
/*----------------------------------------------------------------*/
/* SaniätsDienst Instandssetzung */
/* GEF_SANITAETSDIENST_INSTANDSETZUNG */
/*----------------------------------------------------------------*/
enum8 gef_behandlungs_ergebnis_et {
Keine = 0,
Erfolg = 1,
Stabilisiert = 2,
Fehler = 3
};
struct gef_sanitetsdienst_instandsetzung_rt {
gef_header_rt header;
gef_gps_zeit_rt gps_zeit;
UInt8 verurschaer_typ;
UInt16 ausstattung_behandelnder;
gef_verwundung_beschaedigung_et status_start;
UInt8 typ_der_behandlung;
UInt8 triage;
UInt8 typ_der_behandlung;
gef_verwundung_beschaedigung_et status_ergebnis;
gef_behandlungs_ergebnis_et ergebhnis_behandlung;
UInt8 triage_priorität;
UInt8 komplett_status;
UInt24 behandlungszeit;
UInt24 erholungszeit;
};
*/
/*----------------------------------------------------------------*/
/* Funktionsraum-Meldung */
/* FUNKTIONSRAUM_MELDUNG */
/*----------------------------------------------------------------*/
enum8 gef_betriebsmodus_et {
Nicht_vorhanden = 0,
Eingriff_durch_schiedsrichter = 1,
Wartezeit_nach_Erreichen_des_Funktionsraums = 2
};
struct gef_funktionsraum_rt {
gef_betriebsmodus_et betriebsmodus;
UInt8 wartezeit;
};
struct gef_beschreibung_funktionsraum_rt {
UInt16 funktionsraumkennung;
string funktionsraumbezeichner[8];
UInt8 partei_id;
gef_gps_position_rt funktionsraumeckpunkt;
UInt8 funktionsraumbreite;
UInt8 funktionsraumtiefe;
gef_funktionsraum_rt funktionsraum_fuer_entgiftungsmassnahmen;
gef_funktionsraum_rt funktionsraum_fuer_instandsetzungsmassnahmen;
gef_funktionsraum_rt funktionsraum_fuer_sandienstliche_versorgung;
};
struct gef_funktionsraum_meldung_rt {
gef_header_rt header;
UInt16 broadcast_index;
gef_beschreibung_funktionsraum_rt beschreibung_funktionsraum;
};
/*----------------------------------------------------------------*/
/* Funktionsraum-Meldung */
/* FUNKTIONSRAUM_MELDUNG */
/*----------------------------------------------------------------*/
struct gef_deaktivieren_funktionsraum_meldung_rt {
gef_header_rt header;
UInt16 broadcast_index;
UInt16 funktionsraumkennung;
};
/*----------------------------------------------------------------*/
/* Datenverkehr TDS-SRT-Meldung */
/* DATENVERKEHR_TDS_SRT_MELDUNG */
/*----------------------------------------------------------------*/
struct gef_fuer_tne_transparente_daten_rt {
opaque data<30>; /* 30 => dyn.-array-offset */
};
struct gef_datenverkehr_tds_srt_meldung_rt {
gef_header_rt header;
gef_fuer_tne_transparente_daten_rt fuer_TNE_transparente_daten;
};
/*----------------------------------------------------------------*/
/* Datenverkehr TDS-DMF-Meldung */
/* DATENVERKEHR_TDS_DMF_MELDUNG */
/*----------------------------------------------------------------*/
struct gef_datenverkehr_tds_dmf_meldung_rt {
gef_header_rt header;
gef_fuer_tne_transparente_daten_rt fuer_TNE_transparente_daten;
};
/*----------------------------------------------------------------*/
/* Steuerung Verkehrsaufkommen-Meldung */
/* STEUERUNG_VERKEHRSAUFKOMMEN_MELDUNG */
/*----------------------------------------------------------------*/
struct gef_steuerung_verkehrsaufkommen_meldung_rt {
gef_header_rt header;
gef_lastzustand_datenfunk_et lastzustand_datenfunk;
UInt16 inhibit_zeit_fuer_positionsmeldungen;
};
/*----------------------------------------------------------------*/
/* Nachforderung Broadcast Telegramme-Meldung */
/* NACHFORDERUNG_BROADCAST_TELEGRAMME_MELDUNG */
/*----------------------------------------------------------------*/
struct gef_nachforderung_broadcast_telegramme_meldung_rt {
gef_header_rt header;
gef_gps_zeit_rt GPS_zeit;
UInt8 ruecksetzzaehler;
UInt16 broadcast_index;
};
/*----------------------------------------------------------------*/
/* Nop-Meldung */
/* NOP_MELDUNG */
/*----------------------------------------------------------------*/
struct gef_broadcasttelegramme_rt {
UInt16 feld_anfang;
UInt16 feld_ende;
};
struct gef_nop_meldung_rt {
gef_header_rt header;
gef_broadcasttelegramme_rt broadcasttelegramme;
};
/*----------------------------------------------------------------*/
/* Sprachauswahl-Meldung */
/* SPRACHAUSWAHL_MELDUNG */
/*----------------------------------------------------------------*/
struct gef_sprachauswahl_meldung_rt {
gef_header_rt header;
UInt16 broadcast_index;
gef_sprache_et sprachauswahl;
};
/*----------------------------------------------------------------*/
/* Allgemeine Nachricht-Meldung */
/* ALLGEMEINE_NACHRICHT_MELDUNG */
/*----------------------------------------------------------------*/
struct gef_nachricht_rt {
UInt8Idx laenge;
string text<80>;
};
struct gef_allgemeine_nachricht_meldung_rt {
gef_header_rt header;
UInt16 broadcast_index;
gef_nachricht_rt nachricht;
};
/*----------------------------------------------------------------*/
/* Sammeldeaktivierung Wirkfeld-Meldung */
/* SAMMELDEAKTIVIERUNG_WIRKFELD_MELDUNG */
/*----------------------------------------------------------------*/
struct gef_liste_wirkfeldkennungen_rt {
UInt8Idx anzahl_kennungen;
UInt16 wirkfeldkennung<100>;
};
struct gef_wf_sammeldeaktivierung_meldung_rt {
gef_header_rt header;
UInt16 broadcast_index;
gef_liste_wirkfeldkennungen_rt liste_der_wirkfeldkennungen;
};
/*----------------------------------------------------------------*/
/* Sammeldeaktivierung DUS-Minen-Meldung */
/* SAMMELDEAKTIVIERUNG_DUS_MINEN_MELDUNG */
/*----------------------------------------------------------------*/
struct gef_liste_dus_minenkennungen_rt {
UInt16Idx anzahl_DUS_minen;
UInt16 kennung_DUS_Mine<500>;
};
struct gef_wf_sammeldeaktivierung_dus_minen_meldung_rt {
gef_header_rt header;
UInt16 broadcast_index;
gef_liste_dus_minenkennungen_rt liste_DUS_minenkennungen;
};
/*----------------------------------------------------------------*/
/* Sammeldeaktivierung Funktionsraum-Meldung */
/* SAMMELDEAKTIVIERUNG_FUNKTIONSRAUM_MELDUNG */
/*----------------------------------------------------------------*/
struct gef_liste_funktionsraumkennungen_rt {
UInt8Idx anzahl_kennungen;
UInt16 funktionsraumkennung<100>;
};
struct gef_wf_sammeldeaktivierung_funktionsraum_meldung_rt {
gef_header_rt header;
UInt16 broadcast_index;
gef_liste_funktionsraumkennungen_rt liste_der_funktionsraumkennungen;
};
/*----------------------------------------------------------------*/
/* Datenverkehr TDS-GeoP-Meldung */
/* DATENVERKEHR_TDS_GEOP_MELDUNG */
/*----------------------------------------------------------------*/
struct gef_geop_daten_rt {
opaque data<31>; /* 31 => dyn.-array-offset */
};
struct gef_datenverkehr_tds_geop_meldung_rt {
gef_header_rt header;
UInt8 laenge_GeoP_Daten;
gef_geop_daten_rt geop_daten;
};
/*----------------------------------------------------------------*/
/* Datenverkehr TDS-TgtS-Meldung */
/* DATENVERKEHR_TDS_TGTS_MELDUNG */
/*----------------------------------------------------------------*/
struct gef_tgts_daten_rt {
opaque data<31>; /* 31 => dyn.-array-offset */
};
struct gef_datenverkehr_tds_tgts_meldung_rt {
gef_header_rt header;
UInt8 laenge_tgts_Daten;
gef_tgts_daten_rt tgts_daten;
};
/*----------------------------------------------------------------*/
/* Konfiguration IPS-Meldung */
/* KONFIGURATION_IPS_MELDUNG */
/*----------------------------------------------------------------*/
struct gef_zuordnung_rt {
UInt16 raumnummer_des_gebaeudemodell;
UInt16 IPS_Platz_des_gebaeudemodell;
UInt16 IPS_Kennung;
};
struct gef_ips_konfiguration_rt {
UInt8Idx anzahl;
gef_zuordnung_rt zuordnung<255>;
};
struct gef_konfiguration_ips_meldung_rt {
gef_header_rt header;
UInt16 gebaeudemodell;
gef_ips_konfiguration_rt ips_konfiguration;
};
/*----------------------------------------------------------------*/
/* GEF_TREFFER_EREIGNIS_SEKUNDAERWIRKUNG */
/*----------------------------------------------------------------*/
struct gef_treffer_ereignis_sekundaerwirkung_rt {
gef_header_rt header;
gef_gps_zeit_rt wirkbeginn;
UInt16 munCode;
UInt16 verursacher;
gef_wirkfeldtyp_et wirkfeldtyp;
UInt8 effectCode;
UInt16 minenIndex;
UInt16 unused;
};
/*----------------------------------------------------------------*/
/* Konfiguration ZEG-Meldung */
/* KONFIGURATION_ZEG_MELDUNG */
/*----------------------------------------------------------------*/
struct gef_zeg_zuordnung_rt {
UInt16 referenzmodul_des_gebaeudemodell;
UInt16 ZEG_Kennung;
};
struct gef_zeg_konfiguration_rt {
UInt8Idx anzahl;
gef_zeg_zuordnung_rt zeg_zuordnung<255>;
};
struct gef_konfiguration_zeg_meldung_rt {
gef_header_rt header;
UInt16 gebaeudemodell;
gef_zeg_konfiguration_rt zeg_konfiguration;
};
/*----------------------------------------------------------------*/
/* Ausloseung DUS-Treffer */
/* GEF_AUSLOESUNG_DUS_TREFFER */
/*----------------------------------------------------------------*/
struct gef_ausloesung_dus_treffer_rt {
gef_header_rt header;
gef_gps_zeit_rt zeit;
UInt8Idx munitionsart;
UInt16 richtung;
UInt16 entfernung;
UInt8Idx wirkung;
UInt16 verursacher;
};
/*----------------------------------------------------------------*/
/* GEF_ANFORDERUNG_SW_VERSION */
/* GEF_SW_VERSIONSMELDUNG */
/*----------------------------------------------------------------*/
struct gef_anforderung_sw_version_rt {
gef_header_rt header;
UInt16 geraetekennung;
};
/*----------------------------------------------------------*/
/* TEILNEHMERMODE_SETZEN (Zentrale -> SFM) */
/*----------------------------------------------------------*/
enum8 gef_tln_sprache_et {
TLN_SPRACHE_KEINE_AENDERUNG = 0,
TLN_SPRACHE_DE = 1,
TLN_SPRACHE_EN = 2,
TLN_SPRACHE_FR = 3,
TLN_SPRACHE_AR = 4,
TLN_SPRACHE_ES = 5,
TLN_SPRACHE_RU = 6
};
enum8 gef_operation_mode_et {
OP_MODE_KEINE_AENDERUNG = 0,
OP_MODE_NORMAL = 1,
OP_MODE_BE_STILL = 2
};
enum8 gef_wph_mode_weste_et {
WPH_MODE_WESTE_KEINE_AENDERUNG = 0,
WPH_MODE_WESTE_OHNE = 1,
WPH_MODE_WESTE_MIT = 2
};
enum8 gef_wph_mode_helm_et {
WPH_MODE_HELM_KEINE_AENDERUNG = 0,
WPH_MODE_HELM_OHNE = 1,
WPH_MODE_HELM_MIT = 2
};
enum8 gef_wph_mode_personenschutz_et {
WPH_MODE_PERSONENSCHUTZ_KEINE_AENDERUNG = 0,
WPH_MODE_PERSONENSCHUTZ_OHNE = 1,
WPH_MODE_PERSONENSCHUTZ_ANZUG = 2,
WPH_MODE_PERSONENSCHUTZ_ANZUG_HANDSCHUHE_SCHUHE = 3
};
enum8 gef_schutzniveau_et {
SN_SCHUTZ_KEINE_AENDERUNG = 0,
SN_IDZ_ES = 1,
SN_IDZ_BS = 2,
SN_KSK = 3,
SN_SOLDAT_MIT_KOERPERSCHUTZ = 4,
SN_SOLDAT_DARSTELLER = 5
};
enum8 gef_handgranaten_suche_et {
HS_KEINE_AENDERUNG = 0,
HS_SUCHE_AUS = 1,
HS_SUCHE_EIN = 2
};
enum8 gef_international_mode_et {
IM_KEINE_AENDERUNG = 0,
IM_AUS = 1,
IM_EIN = 2
};
/* Reaktivierung: in Minuten (0, 10 .. 2550) */
struct gef_teilnehmermode_rt {
gef_tln_sprache_et sprache;
gef_operation_mode_et op_mode;
UInt8 reaktivierung_entgiftung;
UInt8 reaktivierung_inst;
UInt8 reaktivierung_sanitaet;
gef_wph_mode_personenschutz_et:1..3 mode_personenschutz;
gef_wph_mode_weste_et:4..5 mode_weste;
gef_wph_mode_helm_et:6..7! mode_helm;
gef_schutzniveau_et schutzniveau;
gef_handgranaten_suche_et:6..7! handgranaten_suche;
gef_international_mode_et:4..5 international_mode;
};
struct gef_teilnehmermode_setzen_rt {
gef_header_rt header;
UInt16 bcIndex;
gef_teilnehmermode_rt mode;
};
/*----------------------------------------------------------*/
/* TEILNEHMERMODE_MELDUNG (SFM -> Zentrale) */
/*----------------------------------------------------------*/
struct gef_teilnehmermode_meldung_rt {
gef_header_rt header;
gef_gps_zeit_rt gps_zeit;
gef_teilnehmermode_rt mode;
};
/*----------------------------------------------------------------*/
/* GEF_TEILNEHMER_KONFIG_SETZEN */
/*----------------------------------------------------------------*/
enum8 gef_positions_handling_et {
POS_HANDLING_DEFAULT = 0,
POS_HANDLING_UNGUELTIG_NICHT_SCHICKEN = 1,
POS_HANDLING_UNGUELTIG_KENNZEICHNEN = 2,
POS_HANDLING_UNGUELTIG_SCHICKEN = 3
};
enum8 gef_optischer_code_et {
OPTISCHER_CODE_KEINE_AENDERUNG = 0,
OPTISCHER_CODE_OSAG_1_0 = 1,
OPTISCHER_CODE_OSAG_2_0_BASIC = 2
};
struct gef_sfm_konfig_rt {
UInt16 pos_aenderung_fz;
UInt16 pos_aenderung_personal;
UInt16 pos_aenderung_lfz;
UInt16 pos_uebertragungs_interval;
UInt16 hoehengrenze;
gef_positions_handling_et:6..7 positions_handling;
UInt8Idx:0..1! pos_interval_umschaltung;
UInt16 wartezeit_nachforderung;
UInt8 faktor_wartezeit_hochlast;
UInt8 wartezeit_vbg_1_2;
UInt8 wartezeit_vbg_2_3;
UInt8 wartezeit_vbg_3_8;
gef_optischer_code_et optischer_code;
UInt8 verwundungsmodel;
UInt8 gueltigkeitsdauer_standortbestimmung;
};
struct gef_teilnehmer_konfig_setzen_rt {
gef_header_rt header;
UInt16 broadcast_index;
gef_sfm_konfig_rt konfig;
};
/*----------------------------------------------------------------*/
/* GEF_TEILNEHMER_KONFIG_ANTWORT */
/*----------------------------------------------------------------*/
struct gef_teilnehmer_konfig_antwort_rt {
gef_header_rt header;
gef_gps_zeit_rt GPS_zeit;
gef_sfm_konfig_rt konfig;
};
/*-------------------------------------------------------*/
/* GEF_NOTRUF */
/*-------------------------------------------------------*/
struct gef_notruf_rt {
gef_gps_position_rt gps_position;
};
/*==============================================================*/
/* Zusammenfassung der Telegramm-Typen */
/*==============================================================*/
union gef_tg_nd_ switch (gef_telegramm_id_et telegramm_id) {
case GEF_INIT:
gef_init_meldung_rt init_meldung;
case GEF_MANIPULATIONSMELDUNG:
case GEF_BITE_MELDUNG:
case GEF_BITE_MELDUNG2:
case GEF_BETRIEBSZUSTAND_AUSSTATTUNG:
case GEF_ANFORDERUNG_KONFIGURATIONSDATEN:
case GEF_FEHLERMELDUNG_GFD:
case GEF_POSITIONS_MELDUNG:
case GEF_POSITIONS_MELDUNG_MIT_TEILNEHMER:
case GEF_POSITIONS_MELDUNG_LFZ:
case GEF_FEUER_EREIGNIS:
case GEF_TREFFER_EREIGNIS_DUS:
case GEF_TREFFER_EREIGNIS_WIRKSIMULATION:
case GEF_FEUEREREIGNIS_MIT_WAFFENZUORDNUNG:
case GEF_TAKTISCHER_STATUS:
case GEF_TREFFER_EREIGNIS_DUS_IPS:
case GEF_TREFFER_EREIGNIS_WIRKSIMULATION_IPS:
case GEF_EINTRETEN_FUNKTIONSRAUM:
case GEF_DATENVERKEHR_SRT_TDS:
case GEF_DATENVERKEHR_DMF_TDS:
case GEF_SONDERSENSORIK_BETRIEBSZUSTAND:
case GEF_SONDERSENSORIK_FAHRSPUR:
case GEF_SONDERSENSORIK_DATEN:
case GEF_SONDERSENSORIK_MIVANH_VERLEGEDATEN:
case GEF_SONDERSENSORIK_WMIV_VERLEGEDATEN:
case GEF_SONDERSENSORIK_MIVANH_VERLEGEPOSITION:
case GEF_DATENVERKEHR_GEOP_TDS:
case GEF_DATENVERKEHR_TGTS_TDS:
case GEF_GERAETEEREIGNIS:
case GEF_WAFFENZUORDNUNG:
case GEF_IPS_POSITIONSDATEN:
case GEF_STANDORTBESTIMMUNG:
case GEF_MUNITIONSVORRAT_EINER_ZUGEORDNETEN_WAFFE:
case GEF_ANFORDERUNG_KONFIG_ZEG:
case GEF_TREFFEREREIGNIS_SEKUNDAERWIRKUNG:
case GEF_TREFFEREREIGNIS_GEBAEUDE:
case GEF_TEILNEHMERMODE_ANFORDERN:
case GEF_TEILNEHMER_KONFIG_ANFORDERN:
case GEF_SCHIEDSRICHTEREINGRIFF:
gef_automatic_conversion_rt manipulations_meldung;
case GEF_SELEKTIVE_AUFMUNITIONIERUNG:
gef_selektive_aufmunitionierung_rt selektive_aufmunitionierung;
case GEF_SANITAETSDIENST_INSTANDSETZUNG:
gef_sanitetsdienst_instandsetzung_rt sanitetsdienst_instandsetzung;
case GEF_BESTANDSMELDUNG_SANITAETSMATERIAL:
gef_bestandmseldung_sanitatsmaterial_rt bestandmseldung_sanitatsmaterial;
case GEF_SANITAETSDIENST_INSTANDSETZUNG_PVSAN:
gef_sanitetsdienst_instandsetzung_pvsan_rt sanitetsdienst_instandsetzung_pvsan;
case GEF_TECHNIK_FUNKTIONSRAUM:
gef_technik_funktionsraum_rt technik_funktionsraum;
case GEF_UMGEBUNGS_MELDUNG:
gef_umgebungs_meldung_rt umgebungs_meldung;
case GEF_UMGEBUNGS_MELDUNG2:
gef_umgebungs_meldung2_rt umgebungs_meldung2;
case GEF_AUFFORDERUNG_BITE_MELDUNG:
gef_aufforderung_bite_meldung_rt aufforderung_bite_meldung;
case GEF_LIZENSIERUNG_TNE:
gef_lizensierung_tne_meldung_rt linzensierung_tne_meldung;
case GEF_KONFIGURATION_TEILNEHMER:
gef_konfiguration_teilnehmer_rt konfiguration_teilnehmer;
case GEF_KONFIGURATION_WIRKMODELL:
gef_konfiguration_wirkmodell_rt konfiguration_wirkmodell;
case GEF_TEILNEHMERMODE_SETZEN:
gef_teilnehmermode_setzen_rt teilnehmermode_setzen;
case GEF_TEILNEHMERMODE_MELDUNG:
gef_teilnehmermode_meldung_rt teilnehmermode_meldung;
case GEF_TEILNEHMER_KONFIG_SETZEN:
gef_teilnehmer_konfig_setzen_rt teilnehmer_konfig_setzen;
case GEF_TEILNEHMER_KONFIG_ANTWORT:
gef_teilnehmer_konfig_antwort_rt teilnhemer_konfig_antwort;
/* case GEF_POSITIONSKORREKTURDATEN:
*/
case GEF_WIRKFELD_EINZELGESCHOSS:
gef_wirkfeld_einzelgeschoss_meldung_rt wirkfeld_einzelgeschoss_meldung;
case GEF_WIRKFELD_FLAECHENDECKENDES_FEUER:
gef_wirkfeld_flaechendeckendes_feuer_meldung_rt wirkfeld_flaechendeckendes_feuer_meldung;
case GEF_WIRKFELD_FLAECHENDECKENDES_FEUER_STOP:
gef_wirkfeld_flaechendeckendes_feuer_stop_meldung_rt wirkfeld_flaechendeckendes_feuer_stop_meldung;
case GEF_WIRKFELD_FLAECHENDECKENDES_FEUER_FORTSETZEN:
gef_wirkfeld_flaechendeckendes_feuer_fortsetzen_meldung_rt wirkfeld_flaechendeckendes_feuer_fortsetzen_meldung;
case GEF_WIRKFELD_MINENSPERRE:
gef_wirkfeld_minensperre_meldung_rt wirkfeld_minensperre_meldung;
case GEF_WIRKFELD_STATUS_MINENSPERRE:
gef_wirkfeld_status_minensperre_meldung_rt wirkfeld_status_minensperre_meldung;
case GEF_WIRKFELD_A_KAMPFMITTEL:
gef_wirkfeld_a_kampfmittel_meldung_rt wirkfeld_a_kampfmittel_meldung;
case GEF_WIRKFELD_C_KAMPFSTOFF:
gef_wirkfeld_c_kampfstoff_meldung_rt wirkfeld_c_kampfstoff_meldung;
case GEF_DEAKTIVIERUNG_WIRKFELD:
gef_deaktivierung_wirkfeld_meldung_rt deaktivierung_wirkfeld_meldung;
case GEF_WIRKFELD_AENDERUNG_BEZEICHNER:
gef_wirkfeld_aenderung_bezeichner_meldung_rt wirkfeld_aenderung_bezeichner_meldung;
case GEF_DEAKTIVIERUNG_EINZELMINE:
gef_deaktivierung_einzelmine_meldung_rt deaktivierung_einzelmine_meldung;
case GEF_REAKTIVIERUNG_DUS_MINE:
gef_reaktivierung_dus_mine_meldung_rt reaktivierung_dus_mine_meldung;
case GEF_DEFINITION_IED:
gef_definition_ied_rt definition_ied;
case GEF_ZUSTAND_IED:
gef_zustand_ied_rt zustand_ied;
case GEF_STATUS_EINZELMINENSIMULATOR:
gef_status_einzelminensimulator_rt status_einzelminensimulator_rt;
case GEF_WIRKFELD_EINZELMINENSIMULATOR:
gef_wirkfeld_einzelminensimulator_rt wirkfeld_einzelminensimulator_rt;
case GEF_TREFFER_AUSLOESUNG:
gef_treffer_ausloesung_meldung_rt treffer_ausloesung_meldung;
case GEF_FUNKTIONSRAUM:
gef_funktionsraum_meldung_rt funktionsraum_meldung;
case GEF_DEAKTIVIEREN_FUNKTIONSRAUM:
gef_deaktivieren_funktionsraum_meldung_rt deaktivieren_funktionsraum_meldung;
case GEF_DATENVERKEHR_TDS_SRT:
gef_datenverkehr_tds_srt_meldung_rt datenverkehr_tds_srt_meldung;
case GEF_DATENVERKEHR_TDS_DMF:
gef_datenverkehr_tds_dmf_meldung_rt datenverkehr_tds_dmf_meldung_meldung;
case GEF_STEUERUNG_VERKEHRSAUFKOMMEN:
gef_steuerung_verkehrsaufkommen_meldung_rt steuerung_verkehrsaufkommen_meldung;
case GEF_NACHFORDERUNG_BROADCAST_TELEGRAMME:
gef_nachforderung_broadcast_telegramme_meldung_rt nachforderung_broadcast_telegramme_meldung;
case GEF_NOP:
gef_nop_meldung_rt nop_meldung;
case GEF_SPRACHAUSWAHL:
gef_sprachauswahl_meldung_rt sprachauswahl_meldung;
case GEF_ALLGEMEINE_NACHRICHT:
gef_allgemeine_nachricht_meldung_rt allgemeine_nachricht_meldung;
/* case GEF_ECHO_ON_OFF:
case GEF_ESW_MELDUNG:
case GEF_GEFECHTSFELDTELEGRAMM: */
case GEF_WF_SAMMELDEAKTIVIERUNG:
gef_wf_sammeldeaktivierung_meldung_rt wf_sammeldeaktivierung_meldung;
case GEF_WF_SAMMELDEAKTIVIERUNG_DUS_MINEN:
gef_wf_sammeldeaktivierung_dus_minen_meldung_rt wf_sammeldeaktivierung_dus_minen_meldung;
case GEF_WF_SAMMELDEAKTIVIERUNG_FUNKTIONSRAUM:
gef_wf_sammeldeaktivierung_funktionsraum_meldung_rt wf_sammeldeaktivierung_funktionsraum_meldung;
case GEF_DATENVERKEHR_TDS_GEOP:
gef_datenverkehr_tds_geop_meldung_rt datenverkehr_tds_geop_meldung;
case GEF_DATENVERKEHR_TDS_TGTS:
gef_datenverkehr_tds_tgts_meldung_rt datenverkehr_tds_tgts_meldung;
case GEF_KONFIGURATION_IPS:
gef_konfiguration_ips_meldung_rt konfiguration_ips_meldung;
case GEF_KONFIGURATION_ZEG:
gef_konfiguration_zeg_meldung_rt konfiguration_zeg_meldung;
case GEF_AUSLOESUNG_DUS_TREFFER:
gef_ausloesung_dus_treffer_rt gef_ausloesung_dus_treffer;
case GEF_ANFORDERUNG_SW_VERSION:
gef_anforderung_sw_version_rt anforderung_sw_version;
case GEF_SW_VERSIONSMELDUNG:
gef_automatic_conversion_rt manipulations_meldung;
case GEF_TREFFER_EREIGNIS_SEKUNDAERWIRKUNG:
gef_treffer_ereignis_sekundaerwirkung_rt treffer_ereignis_sekundaerwirkung;
case GEF_NOTRUF:
gef_notruf_rt notruf;
default:
void;
};
/*
struct dafu_tele {
u_long telegramm_zaehler;
unsigned short telegramm_prioritaet;
gef_tg_nd_ daten;
};
*/