Prototyp und Beschreibung der Funktion getntvdirmatch() (Funktion der freischaltpflichtigen Gruppe "NTv2-Transformationen") |
getntvdirmatch() Ermittlung einer passenden NTv2-Datei aus einem Sammelverzeichnis. Prototyp der DLL-Funktion in C++ Syntax (Kleinschreibung beachten!): extern "C" __declspec(dllimport) unsigned long __stdcall getntvdirmatch( unsigned short wRefSys, const char *pszNtvDir, char **pszNtvDirFile); Prototyp der DLL-Funktion in Visual Objects Syntax: _DLL function getntvdirmatch; (wRefSys as word,; // 2 Byte pszNtvDir as psz,; // 4 Byte, char* pszNtvDirFile ref psz); // 4 Byte, char**, 125 alloc. as logic pascal:geodll32.getntvdirmatch // 4 Byte GeoDLL unterstützt die automatische Zuordnung der benötigten NTv2-Dateien aus einem gemeinsamen Verzeichnis mit bis zu drei Verzeichnisebenen. Nach der Übergabe des Verzeichnispfades mit der Funktion setntvbinautodir() wird dort jedesmal beim Wechsel zu einem NTv2-gestützten Bezugssystem die erforderliche NTv2-Datei gesucht. Wenn die Datei im gemeinsamen Verzeichnis gefunden worden ist, wird sie automatisch für NTv2-Transformationen initialisiert. Unabhängig vom Aufruf der Funktion setntvbinautodir() kann mit der Funktion getntvdirmatch() in dem gemeinsamen Verzeichnis eine zu dem Bezugssystem wRefSys passende NTv2-Binärdatei aufgefunden werden. Der vollständige Dateipfad der im Verzeichnis pszNtvDir oder dessen Unterverzeichnissen gefundenen Datei wird dann in pszNtvDirFile zurückgegeben. Der Verzeichnisname darf einen Laufwerksbuchstaben und eine Verzeichniskette enthalten. Der Verzeichnisname muss mit einem Backslash (\) abschließen. Beispiel: "c:\berechnungen\ntv2_dateien\". Achtung, in C-Syntax müssen doppelte Backslashes verwendet werden! Es werden Unterverzeichnisse bis in die dritte Ebene unterstützt. Beispiel: c:\berechnungen\ntv2_dateien\world.gsb c:\berechnungen\ntv2_dateien\australien\A66_NAT.gsb c:\berechnungen\ntv2_dateien\brasilien\SAD69_003.gsb c:\berechnungen\ntv2_dateien\deutschland\beta2007.gsb c:\berechnungen\ntv2_dateien\deutschland\berlin\ntv2berlin.gsb c:\berechnungen\ntv2_dateien\deutschland\hessen\HeTa2010.gsb Die Parameter werden folgendermaßen übergeben bzw. zurückgegeben: wRefSys NTv2-gestütztes Bezugssystem. Die verfügbaren Bezugssysteme sind in der Liste "Koordinatenbezugssysteme" aufgeführt. pszNtvDir Pfad eines gemeinsamen Verzeichnisses für NTv2-Binärdateien. Der Pfad darf einen Laufwerksbuchstaben und eine Verzeichniskette mit abschließendem Backslash enthalten. pszNtvDirFile Pfad und Dateiname einer zu dem NTv2-Bezugssytem passenden (ref) NTv2-Binärdatei. Achtung: "ref pszNtvDirFile" entspricht "char**" in C. Es müssen 125 Byte Speicher für den Null terminated string in Abhängigkeit vom Aufruf der Funktion setstringallocate() allokiert werden. Beachten Sie dazu die Hinweise im Kapitel "Prototyp und Beschreibung der Funktion setstringallocate()". returnWert Im Fehlerfall gibt die Funktion FALSE zurück, sonst TRUE. Freischaltung: Die Funktion ist Bestandteil der freischaltpflichtigen Funktionsgruppe "NTv2-Transformationen". Sie wird zusammen mit den anderen Funktionen der Gruppe durch die Eingabe der bei der Vertriebsfirma erworbenen Freischalt- parameter per Aufruf der Funktion setunlockcode() zur uneingeschränkten Nutzung frei geschaltet. Ohne die Freischaltung sind nur wenige Funktions- aufrufe zu Testzwecken (Sharewareprinzip) möglich. Es ist zu beachten, dass zusätzlich die Funktionsgruppe "Koordinatentransformationen" frei geschaltet sein muss. |