Prototype and description of the function setntvbinautofile()

(Function of the unlock requiring group "NTv2 grid data")

 

setntvbinautofile()
Sets a NTv2 grid binary file for automaticaly call in a wait position.

Prototype of the DLL function in C++ syntax (attend lower case!):
extern "C" __declspec(dllimport) unsigned long __stdcall setntvbinautofile(
     char *pszFileBinary);

Prototype of the DLL function in Visual Objects syntax:
_DLL function setntvbinautofile(;
     pszFileBinary AS PSZ);                 // 4 Byte, char*
as logic pascal:geodll32.setntvbinautofile  // 4 Byte


The function passes the path and the name of a NTv2 grid data binary file
to the DLL. The file is automatically checked, opened and used with the
first NTv2 Reference System Transition. It is located so far in a waiting
position. This approach makes sense, because the use of NTv2 binary data
is memory intensive and the memory space only will be allocated, if NTv2
Reference System Transitions are executed. In the NTv2 binary file the grid
data for NTv2 Reference System Transitions are contained. The grid data are
used, when one of the functions coordtrans???() has set the reference
system flags for a NTv2 Reference System Transition. The testing of the
file content takes place primary with the first NTv2 Reference System
Transition, then the possible error messages are initialized by the later
used function coordtrans???().

Beim Aufruf von setntvbinautofile() wird eine eventuell noch vorhandene
NTv2-Instanz zunächst aufgelöst. Beim ersten NTv2-Bezugssystemwechsel bildet
GeoDLL dann automatisch eine neue NTv2-Instanz mit der übergebenen NTv2-Datei.
Die NTv2-Instanz bleibt bis zum nächsten Aufruf von setntvbinaryfile() oder
setntvbinautofile() für weitere NTv2-Berechnungen bestehen.

When calling setntvbinautofile() at first a still existing NTv2 class
instance is destroyed. When doing the first NTv2 Reference System Transition,
GeoDLL automatically creates a new NTv2 instance using the specified NTv2
file. The NTv2 instance remains for further NTv2 calculations until another
call of setntvbinaryfile() or setntvbinautofile() occurs.

Alternatively, the function setntvbinaryfile() can be used to test the
file contents directly and allocates the necessary memory space for the
grid data.

You can download the NTv2 files supported by GeoDLL directly from the
KilletSoft Internet site "http://www.killetsoft.de", product descriptions
of TRANSDAT or GeoDLL or use the download links to the original sources
there. On the Internet site you also find a detailed description of the
NTv2 standards.

The file name may contain a drive letter, a directory path and a file name
extension. The file name extension for NTv2 binary files is by standard "gsb".
Example: "c:\program_ntv2data\beta2007.gsb".
Attention, in C syntax double backslashes must be used!

With the functions getntvbinaryfile() and setntvbinautofile() an
automatically selection and initializtion of the required NTv2 file can be
realized. For this purpose, the required NTv2 files must be stored in a
common directory. When changing to a NTv2-based reference system, the name of
the required NTv2 file is determined by the function getntvbinaryfile(). If
the file is present in the common directory, it is initialized there with the
function setntvbinautofile().


The parameters are passed and/or returned as follows:
pszFileBinary File name of a NTv2 binary file.
              The file name may contain a drive letter, a directory path
              and a file name extension.

returnVal     In case of an error the function returns FALSE, otherwise TRUE.


Unlocking
This function is a component of the unlock requiring function group
"NTv2 grid data". It is unlocked for unrestricted use together with the
other functions of the group by passing the unlock parameters, acquired
from the software distribution company, trough the function setunlockcode().
Without unlocking only a few function calls for test purposes (shareware
principle) are possible. It should be noted that in addition the function
group "Coordinate Transformations" must be unlocked.