Muster einer Visual Objects-Schnittstelle |
//************************************************************************ // Visual Objects 1.0 / 2.0 / 2.5 / 2.6 / 2.7 / 2.8-Schnittstelle * // zu einigen Funktionen der 32 Bit Dynamic Link Library GeoDLL. * // Sie muss gegebenenfalls um andere Funktionen erweitert werden. * // Die Schnittstelle kann direkt in den VO Quellcode eingebaut werden * // oder als Library in das VO-Resposity eingebaut werden. * // * // Eine komplette Visual-Objects Schnittstelle steht als Datei * // geodllvo.aef zur Verfügung * // * // Autor: Killet GeoSoftware Ing.-GbR * // * // Im Aufrufverzeichnis von GeoDLL müssen die Dateien geodll32.dll * // und geodllbn.bin vorhanden sein. * //************************************************************************
_DLL FUNCTION coordtrans; (nCoordXQ AS REAL8,; // 8 Byte nCoordYQ AS REAL8,; // 8 Byte pszKoordQ AS PSZ,; // 4 Byte, char* nCoordSysQ AS WORD,; // 2 Byte nRefSysQ AS WORD,; // 2 Byte nCoordXZ REF REAL8,; // 4 Byte nCoordYZ REF REAL8,; // 4 Byte pszKoordZ REF PSZ,; // 4 Byte, char**, 16 alloc. nCoordSysZ AS WORD,; // 2 Byte nRefSysZ AS WORD,; // 2 Byte nStripZ AS WORD); // 2 Byte AS LOGIC PASCAL:geodll32.coordtrans // 4 Byte // Prototyp der DLL-Funktion coordtrans() in Visual-Objects Syntax. // Die Allokation von Speicher für das zurückzugebende PSZ ist nur dann // notwendig, wenn zuvor setstringallocate(FALSE) aufgerufen worden ist.
_DLL FUNCTION coordtrans2; (nCoordXQ AS REAL8,; // 8 Byte nCoordYQ AS REAL8,; // 8 Byte pszCoordQ AS PSZ,; // 4 Byte, char* nCoordSysQ AS WORD,; // 2 Byte nRefSysQ AS WORD,; // 2 Byte nCoordXZ REF REAL8,; // 4 Byte nCoordYZ REF REAL8,; // 4 Byte pszCoordZ AS PSZ,; // 4 Byte, char*, 16 alloc. nCoordSysZ AS WORD,; // 2 Byte nRefSysZ AS WORD,; // 2 Byte nStripZ AS WORD); // 2 Byte AS LOGIC PASCAL:geodll32.coordtrans2 // 4 Byte // Prototyp der DLL-Funktion coordtrans2() in Visual-Objects Syntax. // Die Allokation von Speicher für das zurückzugebende PSZ ist zwingend // notwendig!
_DLL FUNCTION coordtrans3; (nCoordXQ AS REAL8,; // 8 Byte nCoordYQ AS REAL8,; // 8 Byte nCoordSysQ AS WORD,; // 2 Byte nRefSysQ AS WORD,; // 2 Byte nNotationQ AS WORD,; // 2 Byte nCoordXZ REF REAL8,; // 4 Byte nCoordYZ REF REAL8,; // 4 Byte nCoordSysZ AS WORD,; // 2 Byte nRefSysZ AS WORD,; // 2 Byte nNotationZ AS WORD,; // 2 Byte nStripZ AS WORD); // 2 Byte AS LOGIC PASCAL:geodll32.coordtrans3 // 4 Byte // Prototyp der DLL-Funktion coordtrans3() in Visual-Objects Syntax.
_DLL FUNCTION distancegeo; (nGeoLaenge1 AS REAL8,; // 8 Byte nGeoBreite1 AS REAL8,; // 8 Byte nGeoLaenge2 AS REAL8,; // 8 Byte nGeoBreite2 AS REAL8,; // 8 Byte nStrecke REF REAL8,; // 4 Byte nEllipsoid AS WORD); // 2 Byte AS LOGIC PASCAL:geodll32.distancegeo // 4 Byte // Prototyp der DLL-Funktion distancegeo() in Visual-Objects Syntax.
_DLL FUNCTION distanceutm; (nUtmRechts1 AS REAL8,; // 8 Byte nUtmHoch1 AS REAL8,; // 8 Byte nUtmRechts2 AS REAL8,; // 8 Gyte nUtmHoch2 AS REAL8,; // 8 Byte nStrecke REF REAL8); // 4 Byte AS LOGIC PASCAL:geodll32.distanceutm // 4 Byte // Prototyp der DLL-Funktion distanceutm() in Visual-Objects Syntax.
_DLL FUNCTION getauthor; (pszAuthor REF PSZ); // 4 Byte, char**, 200 alloc. AS LOGIC PASCAL:geodll32.getauthor // 4 Byte // Prototyp der DLL-Funktion getauthor() in Visual-Objects Syntax. // Die Allokation von Speicher für das zurückzugebende PSZ ist nur dann // notwendig, wenn zuvor setstringallocate(FALSE) aufgerufen worden ist.
_DLL FUNCTION getcoordsys; (wCoordSysQ AS WORD,; // 2 Byte pszCoordSys REF PSZ); // 4 Byte, char**, 800 alloc. AS LOGIC PASCAL:geodll32.getcoordsys // 4 Byte // Prototyp der DLL-Funktion getcoordsys() in Visual-Objects Syntax. // Die Allokation von Speicher für das zurückzugebende PSZ ist nur dann // notwendig, wenn zuvor setstringallocate(FALSE) aufgerufen worden ist.
_DLL FUNCTION getdllversion; (pszVersion REF PSZ); // 4 Byte, char**, 10 alloc. AS LOGIC PASCAL:geodll32.getdllversion // 4 Byte // Prototyp der DLL-Funktion getdllversion() in Visual-Objects Syntax. // Die Allokation von Speicher für das zurückzugebende PSZ ist nur dann // notwendig, wenn zuvor setstringallocate(FALSE) aufgerufen worden ist.
_DLL FUNCTION geterrorcode; (pszError REF PSZ); // 4 Byte, char**, 200 alloc. AS LOGIC PASCAL:geodll32.geterrorcode // 4 Byte // Prototyp der DLL-Funktion geterrorcode() in Visual-Objects Syntax. // Die Allokation von Speicher für das zurückzugebende PSZ ist nur dann // notwendig, wenn zuvor setstringallocate(FALSE) aufgerufen worden ist.
_DLL FUNCTION getlicensee; (pszLicensee REF PSZ); // 4 Byte, char**, 120 alloc. AS LOGIC PASCAL:geodll32.getlicensee // 4 Byte // Prototyp der DLL-Funktion getlicensee() in Visual-Objects Syntax. // Die Allokation von Speicher für das zurückzugebende PSZ ist nur dann // notwendig, wenn zuvor setstringallocate(FALSE) aufgerufen worden ist.
_DLL FUNCTION getrefsys; (wRefSysQ AS WORD,; // 2 Byte wRefSysZ AS WORD,; // 2 Byte wCoordSysQ AS WORD,; // 2 Byte wCoordSysZ AS WORD,; // 2 Byte pszRefSys REF PSZ); // 4 Byte, char**, 1200 alloc. AS LOGIC PASCAL:geodll32.getrefsys // 4 Byte // Prototyp der DLL-Funktion getrefsys() in Visual-Objects Syntax. // Die Allokation von Speicher für das zurückzugebende PSZ ist nur dann // notwendig, wenn zuvor setstringallocate(FALSE) aufgerufen worden ist.
_DLL FUNCTION meritrans; (nCoordXQ AS REAL8,; // 8 Byte nCoordYQ AS REAL8,; // 8 Byte nCoordXZ REF REAL8,; // 4 Byte nCoordYZ REF REAL8,; // 4 Byte nCoordSys AS WORD,; // 2 Byte nEllipsoid AS WORD,; // 2 Byte nStrip AS WORD); // 2 Byte AS LOGIC PASCAL:geodll32.meritrans // 4 Byte // Prototyp der DLL-Funktion meritrans() in Visual-Objects Syntax.
_DLL FUNCTION setcoordarea; (lSchalter AS LOGIC); // 4 Byte AS LOGIC PASCAL:geodll32.setcoordarea // 4 Byte // Prototyp der DLL-Funktion setcoordarea() in Visual-Objects Syntax.
_DLL FUNCTION setstringallocate; (lSchalter AS LOGIC); // 4 Byte AS LOGIC PASCAL:geodll32.setstringallocate // 4 Byte // Prototyp der DLL-Funktion setstringallocate() in Visual-Objects Syntax.
_DLL FUNCTION setunlockcode; (pszFreischaltcode AS PSZ,; // 4 Byte, char* pszLizenznehmer AS PSZ); // 4 Byte, char* AS LOGIC PASCAL:geodll32.setunlockcode // 4 Byte // Prototyp der DLL-Funktion setunlockcode() in Visual-Objects Syntax.
_DLL FUNCTION setuserellsource; (nEllipsoid AS WORD,; // 2 Byte nHalbAchsGr AS REAL8,; // 8 Byte nHalbAchsKl AS REAL8); // 8 Byte AS LOGIC PASCAL:geodll32.setuserellsource // 4 Byte // Prototyp der DLL-Funktion setuserellsource() in Visual-Objects Syntax.
_DLL FUNCTION setuserelltarget; (nEllipsoid AS WORD,; // 2 Byte nHalbAchsGr AS REAL8,; // 8 Byte nHalbAchsKl AS REAL8); // 8 Byte AS LOGIC PASCAL:geodll32.setuserelltarget // 4 Byte // Prototyp der DLL-Funktion setuserelltarget() in Visual-Objects Syntax.
_DLL FUNCTION setuserrefsys; (nRefSysTyp AS WORD,; // 2 Byte nVerschX AS REAL8,; // 8 Byte nVerschY AS REAL8,; // 8 Byte nVerschZ AS REAL8,; // 8 Byte nDrehungX AS REAL8,; // 8 Byte nDrehungY AS REAL8,; // 8 Byte nDrehungZ AS REAL8,; // 8 Byte nMasstab AS REAL8); // 8 Byte AS LOGIC PASCAL:geodll32.setuserrefsys // 4 Byte // Prototyp der DLL-Funktion setuserrefsys() in Visual-Objects Syntax.
|