This is xplz.h in view mode; [Download] [Up]
/* $Id: xplz.h,v 2.6 1993/06/28 09:31:07 klute Exp klute $ */ /* * Copyright 1993 Rainer Klute <klute@irb.informatik.uni-dortmund.de> * * Permission to use, copy, modify, distribute, and sell this software and * its documentation for any purpose is hereby granted without fee, provided * that the above copyright notice appear in all copies and that both that * copyright notice and this permission notice appear in supporting * documentation. The author makes no representations about the suitability * of this software for any purpose. It is provided "as is" without express * or implied warranty. * */ #if !defined (XPLZ_H) #define XPLZ_H #include "boolean.h" /* * Beschreibung der Leitdateien der Deutschen Bundespost Postdienst. Die * folgenden Strukturen entsprechen dem Aufbau der Leitdateien. */ typedef struct Umsda { char ala[8]; /* Schlüssel der Postanstalt */ char satzalt[3]; /* Satzart des alten PLZ-Pflegeverfahrens */ char plz_w_o[1]; /* Unterscheidung Verkehrsgebiet West/Ost */ char plzalt[4]; /* alte vierstellige PLZ */ char ortname_a[40]; /* Ortsname (alt) */ char ortzusa[30]; /* Zusatzbezeichnung ("am Main" bei Frankfurt) */ char oname_sort_a[40]; /* Ortsname (alt) als Sortierfeld (nur Großbuchstaben, Umlaute aufgelöst, keine Sonderzeichen */ char geschl[8]; /* Gemeindeschlüssel */ char filler[1]; char nplzo_z[1]; /* Anzahl der neuen zustellbezogenen PLZ im Ort 0: keine neue PLZ 1: eine neue PLZ 2: mehrere neue PLZ, siehe Straßenverzeichnis */ char nplzo_p[1]; /* Anzahl der neuen postfachbezogenen PLZ im Ort 0: keine neue PLZ 1: eine neue PLZ 2: mehrere neue PLZ, siehe Postfachverzeichnis */ char npanst_a[3]; /* Nummer des Zustellpostamtes */ char zpanst_a[40]; /* Ortsname des Zustellpostamtes bei Zustellung von einem anderen Ort */ char nzpanst_a[3]; /* Nummer des Zustellpostamtes bei Zustellung von einem anderen Ort */ char alort[8]; /* Ortsschlüssel zum Zugriff auf Straßen- oder Postfachdatei */ char ortname_n[40]; /* neuer mit Einführung der neuen PLZ gültiger Ortsname. Beispiel: Berlin-Adlershof -> Berlin */ char oname_sort_n[40]; /* Ortsname als Sortierfeld */ char oname24_n[24]; /* 24stellige Abkürzung des Ortsnamens */ char nplz_z[1]; /* Anzahl der neuen zustellbezogenen PLZ zur Postanstalt (s. o.) */ char plz_z[5]; /* einzige zustellbezogene PLZ zur Postanstalt */ char nplz_p[1]; /* Anzahl der neuen postfachbezogenen PLZ zur Postanstalt (s. o.) */ char plz_p[5]; /* einzige postfachbezogene PLZ zur Postanstalt */ char crlf[2]; } Umsda; typedef struct Ortarda { char ala[8]; /* Schlüssel der Postanstalt */ char satzalt[3]; /* Satzart des alten PLZ-Pflegeverfahrens */ char plz_w_o[1]; /* Unterscheidung Verkehrsgebiet West/Ost */ char plzalt[4]; /* alte vierstellige PLZ */ char ortname_a[40]; /* Ortsname (alt) */ char oname_sort_a[40]; /* Ortsname (alt) als Sortierfeld (nur Großbuchstaben, Umlaute aufgelöst, keine Sonderzeichen */ char npanst_a[3]; /* Nummer des Zustellpostamtes */ char zpanst_a[40]; /* Ortsname des Zustellpostamtes bei Zustellung von einem anderen Ort */ char nzpanst_a[3]; /* Nummer des Zustellpostamtes bei Zustellung von einem anderen Ort */ char aejahr[2]; /* Jahr des Zugangs ins Archiv */ char aemonat[2]; /* Monat des Zugangs ins Archiv */ char alort[8]; /* Ortsschlüssel des aktuellen Ortes zum Zugriff auf Straßen- oder Postfachdatei */ char ortname_n[40]; /* neuer mit Einführung der neuen PLZ gültiger Ortsname. Beispiel: Berlin-Adlershof -> Berlin */ char oname_sort_n[40]; /* Ortsname als Sortierfeld */ char oname24_n[24]; /* 24stellige Abkürzung des Ortsnamens */ char nplz_z[1]; /* Anzahl der neuen zustellbezogenen PLZ zur Postanstalt (s. o.) */ char plz_z[5]; /* einzige zustellbezogene PLZ zur Postanstalt */ char nplz_p[1]; /* Anzahl der neuen postfachbezogenen PLZ zur Postanstalt (s. o.) */ char plz_p[5]; /* einzige postfachbezogene PLZ zur Postanstalt */ char crlf[2]; } Ortarda; typedef struct Strada { char alort[8]; /* Schlüssel des Ortes, der in der Zustellanschrift erscheint, oder der Gemeinde, in der die Straße liegt */ char geschl[8]; /* Gemeindeschlüssel */ char snamesort[46]; /* Straßenname als Sortierfeld */ char strlfdnr[2]; /* laufende Nummer bei Namengleichheit mehrerer Straßen */ char sname[46]; /* Straßenname in Groß-/Kleinschreibung */ char abkstr[23]; /* 23stellige Abkürzung des Straßennamens */ char anzgleist[1]; /* Anzahl der gleichnamiger Straßen 1: nur eine Straße dieses Namens 2: mehrere Straßen dieses Namens */ char nplz_z[1]; /* Anzahl der neuen zustellbezogenen PLZ für die Straße 1: nur eine PLZ in der Straße 2: mehrere PLZ in der Straße */ char hnrkenn[1]; /* 0: durchgehender Hausnummernbereich 1: gerader Hausnummernbereich 2: ungerader Hausnummernbereich */ char hnr1von[4]; /* Hausnummern von (numerischer Teil) */ char hnr2von[4]; /* Hausnummern von (Zusatz) */ char hnr1bis[4]; /* Hausnummern bis (numerischer Teil) */ char hnr2bis[4]; /* Hausnummern bis (Zusatz) */ char plz_z[5]; /* neue zustellbezogene PLZ des Straßenabschnitts oder der gesamten Straße */ char alort_g[8]; /* "alort" der Gemeinde, zu der die Straße gehört; leer, wenn "alort_g" = "alort" */ char alort_p[8]; /* Schlüssel des Ortes, der in der Zustelladresse erscheint; leer, wenn "alort_p" = "alort" */ char ortsteil[40]; /* Ortsteil, zu dem der Straßenabschnitt gehört */ char plz_w_o[1]; /* Unterscheidung Verkehrsgebiet */ char plzalt[4]; /* alte vierstellige PLZ */ char npanst[3]; /* Nummer der Zustellpostanstalt (alt) */ char crlf[2]; } Strada; typedef struct Pofada { char alort[8]; /* Schlüssel des Ortes */ char npanst[3]; /* Nummer der Ausgabepostanstalt */ char plz_w_o[1]; /* Unterscheidung Verkehrsgebiet */ char plzalt[4]; /* alte vierstellige PLZ */ char pfnrvon[6]; /* Postfachnummer von */ char pfnrbis[6]; /* Postfachnummer bis */ char plzneu_p[5]; /* neue fünfstellige PLZ */ char crlf[2]; } Pofada; typedef struct UmsdaSet { int entries; Umsda *list; } UmsdaSet; typedef struct OrtardaSet { int entries; Ortarda *list; } OrtardaSet; typedef struct StradaSet { int entries; Strada *list; } StradaSet; typedef struct PofadaSet { int entries; Pofada *list; } PofadaSet; typedef enum { PlzSucheOrt, PlzSucheArchivOrt, PlzOrtGefunden, PlzOrtNichtGefunden, /* Ort eingeben */ PlzOrtMehrdeutig, /* PLZ (alt) eingeben */ PlzPlzAltGeaendert, /* PLZ (alt) eingeben */ PlzOrtEindeutig, PlzPostanstaltBenoetigt, PlzStrassePostfachBenoetigt, /* Straße oder Postfach eingeben */ PlzSucheStrasse, PlzStrasseGefunden, PlzStrasseNichtGefunden, /* Straße korrigieren */ PlzStrasseEindeutig, PlzStrasseMehrfachInOrt, /* Postanstalt oder Ortsteil eingeben */ PlzStrasseMehrfachInPostanstalt, /* Ortsteil eingeben */ PlzStrasseMehrfachInOrtsteil, /* Postanstalt eingeben */ PlzHausnummerBenoetigt, /* Hausnummer eingeben */ PlzHausnummerNichtGefunden, /* Hausnummer korrigieren */ PlzSuchePostfach, PlzPostfachGefunden, PlzPostfachNichtGefunden, /* Postfach korrigieren */ PlzPostfachMehrfachInOrt, /* Postanstalt oder PLZ (alt) eingeben */ PlzPostfachMehrfachInPostanstalt, /* PLZ (alt) eingeben */ PlzPostfachMehrfachInPlz, /* Postanstalt eingeben */ PlzKeinZustellPostamt, PlzKeinAusgabePostamt, PlzPlzNeuGefunden, /* fertig */ PlzFehler, PlzUnzulaessigerZustand, PlzLetzterZustand } PlzConversionState; typedef struct { char *plz_alt; char *ort; char *postanstalt; char *ortsteil; char *strasse; char *hausnummer; char *postfach; char *plz_neu; char verkehrsgebiet; UmsdaSet *orte; OrtardaSet *archivOrte; StradaSet *strassen; PofadaSet *postfaecher; PlzConversionState status; } PlzConversion; #endif
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.