Prototype and description of the function setntvbinautodir() (Function of the unlock requiring group "NTv2 Transformations") |
setntvbinautodir() Set or reset a directory for the automatically use of NTv2 binary files. Prototype of the DLL function in C++ syntax (attend lower case!): extern "C" __declspec(dllimport) unsigned long __stdcall setntvbinautodir( const char *pszBinaryDir); Prototype of the DLL function in Visual Objects syntax: _DLL function setntvbinautodir; (pszBinaryDir as psz) // 4 Byte, char* as logic pascal:geodll32.setntvbinautodir // 4 Byte With the function setntvbinautodir() 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 with up to three subdirectories. When changing to an NTv2-based Reference System, the required NTv2 file is searched there. If the file is present in the common directory, it is initialized automatically. When calling setntvbinautodir() 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 automatically found NTv2 file. The NTv2 instance remains for further NTv2 calculations until the another NTv2 Reference System is adjusted. Thereby a new NTv2 instance useing the required NTv2 file will be created. With calls of the functions setntvbinaryfile() and setntvbinautofile() also the existing NTv2 instance will be destroyed and replaced with a new one. For geodetic calculations with NTv2 grid files GeoDLL can make aware of the paths of the files with further functions: With the function setntvbinaryfile(), a particular NTv2 file can be initialized specifically in any directory. That is, for example, necessary if with the GeoDLL Reference Systems 208 and 209 any, not implicitly by GeoDLL supported NTv2 file must be initialized. However, the function also works with all implicitly by GeoDLL supported NTv2 files. The function setntvbinautofile() can be used to store the NTv2 file path only in a waiting position. Testing and the allocation of memory space takes place primary with the first NTv2 Reference System Transition. To close an already opened NTv2-grid file and to release the corresponding NTv2 instance in GeoDLL, the function closentvbinaryfile() can be used. But this is only necessary in special cases. Please read the function description. Alternatively the NTv2 search directory can be reseted by calling this function with a null string as a parameter. You can download the NTv2 files supported by GeoDLL directly from the KilletSoft website http://www.killetsoft.de/p_gdln_e.htm#download or use the download links to the original sources there. On that Internet site you also find a detailed description of the NTv2 standard. The path name may contain a drive letter and a directory path. The path name should end with a backslash (\) Example: "c:\calculations\ntv2_files\" Attention, in C syntax double backslashes must be used! Subdirectories are scanned to the third level for NTv2 binaries. Example: c:\calculations\ntv2_files\world.gsb c:\calculations\ntv2_files\australia\A66_NAT.gsb c:\calculations\ntv2_files\brasilia\SAD69_003.gsb c:\calculations\ntv2_files\germany\beta2007.gsb c:\calculations\ntv2_files\germany\berlin\ntv2berlin.gsb c:\calculations\ntv2_files\germany\hessen\HeTa2010.gsb The parameters are passed and/or returned as follows: pszBinaryDir Path of a common directory for NTv2 binary file. The path may must contain a drive letter and a directory path with a trailing backslash. 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 Transformations". 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. |