At the IEDTINF interface, users can see the version number of the loaded EDT. If no EDT is as yet loaded then it is now loaded but not initialized. If EDT is installed under IMON then it is possible to specify the desired EDT version.
The EDT version for dynamic loading is specified in the EGLRMSGF field (printable). The length of the version specification must be entered in the EGLRMSGL field.
Format of the version number: |
|
A version specification is recognized on the basis of the length entry in the EGLRMSGL field which must have a value of between 9 and 12 to be valid. If no version is specified and multiple versions co-exist then the version set using /SELECT-PRODUCT-VERSION or the highest EDT version is dynamically loaded.
If dynamic loading of the specified version is not possible then the return code EUPVEERR is set in the EGLMRET field and EDT is not loaded. If it is possible to identify the STD version then this is entered in the EGLRMSGF field. If it is not possible to determine the STD version then the sub-return code EUPVE04 is entered in the EGLSR1 field.
If the call is successful, the return code EUPRETOK is set in the EGLMRET (EDTGLCB) field.
EDT passes the loaded EDT version in the format described above in the EGLRMSGF field (independently of whether loading was performed at call time or EDT was already loaded).
If EDT is already loaded, then the version of the loaded EDT is always returned even if the caller has specified another version. In this case, the return code is again EUPRETOK.
Call
The following specifications are required:
Completion of the required fields in the
EDTGLCBcontrol blockCall of the
IEDTINFentry point address with the parameter list
Overview
(For the control block, see section “EDTGLCB - Global EDT control block”).
Entry point address |
Parameter list |
Call parameter | Return parameter | ||
| EGLUNITEGLVERSEGLINDBEGLRMSG |
| EGLRETCEGLRMSGEGLINFM |
Note
In Unicode mode, EDT always passes 0 in the EGLINFM field.
Return codes
EGLMRET | EGLSR1 |
|
|
The fields EGLMRET and EGLRS1 belong to the control block EDTGLCB. For the meaning of the return codes, see section “EDTGLCB - Global EDT control block”.
Call in the C program
Required include files:
#include <stdio.h>
#include <iedgle.h>
The EDTGLCB control block is declared and initialized as follows:
iedglcb glcb = IEDGLCB_INIT;
In the C program, the IEDTINF function is called as follows:
IEDTINF(&glcb);