Contains Pascal API data types.
The /usr/include/g32types.inc file provides data types and structures for use with HCON Pascal-language functions. The g32types.inc file is an include file that contains the g32_api record. Each module that uses the HCON Pascal API must include the g32types.inc file.
The fields in the g32types.inc file are:
g32_api = record /* information and parameter structure */ lpid : integer; /* logical path id */ errcode : integer; /* error code indicator */ xerrinfo : integer; /* extra error information */ row : integer; /* row number */ column : integer; /* column number */ length : integer; /* length for patterns */ eventf : integer; /* message queue ID/file descriptor */ maxbuf : integer; /* the maximum transfer message size */ /* from the maximum IO buffer size */ /* characteristic in the HCON profile. */ /* The user may override the default */ /* value only during a call to */ /* g32allc */ timeout : integer; /* the amount of time, in seconds, */ /* to wait for data from the host */ /* computer. The default value is */ /* 15 seconds. The user may override */ /* the default value at anytime. */ end; /* record g32_api */ fxs = record fxs_bytcnt : integer; /* Byte count */ fxs_src : stringptr; /* Source file name */ fxs_dst : stringptr; /* Destination file name */ fxs_ctime : stringptr; /* Destination file creation time */ fxs_stat : integer; /* Status code */ fxs_errno : integer; /* Errno */ end; /* Record fxs */ fx_s = record s_space : integer; /* Allocation space */ s_increment : integer; /* Alloction space increment */ s_unit : integer; /* Unit of allocation */ end; /* Record f_s */ fxc_opt = record /* Options record */ f_flags : integer; /* Flags options */ f_logonid : stringptr; /* Address of logon id string */ f_lrecl : integer; /* Logical record length */ f_blksize : integer; /* Block size */ f_inputfld : stringptr; /* Input mode for VSE or CICS */ f_s : fx_s; /* S option record */ end; /* Record fxc_opts */ fxc = record fxc_src : stringptr; /* Source file name */ fxc_dst : stringptr; /* Destination file name */ fxc_opts : fxc_opt; /* Options record */ end;
The following example illustrates the use of the Pascal header files:
program example(input, output); const %include /usr/include/g32const.inc { user's constant definitions } type %include /usr/include/g32types.inc { user's type definitions } var User_Buffer : packed array[k.1..100]k. of char; API_BUF_PTR : integer; { user's variable declarations } %include /usr/include/g32hfile.inc { user's external function declarations } begin API_BUF_PTR = addr(User_Buffer); { user's program } end
The API_BUF_PTR declaration must be an integer and must be assigned the address of the User_Buffer declaration.
The g32types.inc file is part of the Host Connection Program (HCON).
This file requires the use of a Pascal compiler.
Other HCON Pascal header files are /usr/include/g32const.inc, /usr/include/g32hfile.inc, and /usr/include/g32keys.inc.