Updated: 11 December 1998 |
OpenVMS Programming Interfaces: Calling a System
Routine
Previous | Contents | Index |
Table B-8 lists the OpenVMS data types and their corresponding FORTRAN data type declarations.
OpenVMS Data Types | FORTRAN Declarations |
---|---|
access_bit_names |
INTEGER*4(2,32)
or STRUCTURE /access_bit_names/ INTEGER*4 access_name_len INTEGER*4 access_name_buf END STRUCTURE !access_bit_names RECORD /access_bit_names/ my_names(32) |
access_mode |
BYTE
or ++INTEGER*1 |
address | INTEGER*4 |
address_range |
INTEGER*4(2)
or ++INTEGER*8 or STRUCTURE /address_range/ INTEGER*4 low_address INTEGER*4 high_address END STRUCTURE |
arg_list |
INTEGER*4(
n)
or ++INTEGER*8( n) |
ast_procedure | EXTERNAL |
boolean | LOGICAL*4 |
byte_signed |
BYTE
or INTEGER*1 |
byte_unsigned |
BYTE
1
or ++INTEGER*1 1 |
channel | INTEGER*2 |
char_string | CHARACTER* n |
complex_number |
COMPLEX*8
COMPLEX*16 |
cond_value | INTEGER*4 |
context | INTEGER*4 |
date_time |
INTEGER*4(2)
or ++INTEGER*8 |
device_name | CHARACTER* n |
ef_cluster_name | CHARACTER* n |
ef_number | INTEGER*4 |
exit_handler_block |
STRUCTURE /exhblock/
INTEGER*4 flink INTEGER*4 exit_handler_addr BYTE(3) /0/ BYTE arg_count INTEGER*4 cond_value ! . ! .(optional arguments ... one argument ! . per longword) ! END STRUCTURE !cntrlblk RECORD /exhblock/ myexh_block |
fab |
INCLUDE '($FABDEF)'
RECORD /fabdef/ myfab |
file_protection | INTEGER*4 |
floating_point |
REAL*4
2
REAL*8 2 DOUBLE PRECISION 2 REAL*16 3 |
function_code | INTEGER*4 |
identifier | INTEGER*4 |
++invo_context_blk |
INCLUDE ('LIBICB')
RECORD /INVO_CONTEXT_BLK/ invo_context_blk |
++invo_handle | INTEGER*4 |
io_status_block |
STRUCTURE /iosb/
INTEGER*2 iostat, !return status 2 term_offset, !location of line terminator 2 terminator, !value of terminator 2 term_size !size of terminator END STRUCTURE RECORD /iosb/ my_iosb |
item_list_2 |
STRUCTURE /itmlst/
UNION MAP INTEGER*2 buflen,code INTEGER*4 bufadr END MAP MAP INTEGER*4 end_list /0/ END MAP END UNION END STRUCTURE !itmlst RECORD /itmlst/ my_itmlst_2( n) (Allocate n records, where n is the number of item codes plus an extra element for the end-of-list item.) |
item_list_3 |
STRUCTURE /itmlst/
UNION MAP INTEGER*2 buflen,code INTEGER*4 bufadr,retlenadr END MAP MAP INTEGER*4 end_list /0/ END MAP END UNION END STRUCTURE !itmlst RECORD /itmlst/ my_itmlst_2( n) (Allocate n records, where n is the number of item codes plus an extra element for the end-of-list item.) |
item_list_pair |
STRUCTURE /itmlist_pair/
UNION MAP INTEGER*4 code INTEGER*4 value END MAP MAP INTEGER*4 end_list /0/ END MAP END UNION END STRUCTURE !itmlst_pair RECORD /itmlst_pair/ my_itmlst_pair( n) (Allocate n records, where n is the number of item codes plus an extra element for the end-of-list item.) |
item_quota_list |
STRUCTURE /item_quota_list/
MAP BYTE quota_name INTEGER*4 quota_value END MAP MAP BYTE end_quota_list END MAP END STRUCTURE !item_quota_list |
lock_id | INTEGER*4 |
lock_status_block |
STRUCTURE/lksb/
INTEGER*2 cond_value INTEGER*2 unused INTEGER*4 lock_id BYTE(16) END STRUCTURE !lock_status_lock |
lock_value_block | BYTE(16) |
logical_name | CHARACTER* n |
longword_signed | INTEGER*4 |
longword_unsigned | INTEGER*4 1 |
mask_byte |
BYTE
or INTEGER*1 |
mask_longword | INTEGER*4 |
mask_quadword |
INTEGER*4(2)
or ++INTEGER*8 |
mask_word | INTEGER*2 |
mechanism_args |
INCLUDE '($CHFDEF)'
RECORD /CHFDEF2/ mechargs |
null_arg | %VAL(0) |
octaword_signed | INTEGER*4(4) |
octaword_unsigned | INTEGER*4(4) 1 |
page_protection | INTEGER*4 |
procedure | INTEGER*4 |
process_id | INTEGER*4 |
process_name | CHARACTER* n |
quadword_signed |
INTEGER*4(2)
or ++INTEGER*8 |
quadword_unsigned |
INTEGER*4(2)
1
or ++INTEGER*8 |
rights_holder |
INTEGER*4(2)
or STRUCTURE /rights_holder/ INTEGER*4 rights_id INTEGER*4 rights_mask END STRUCTURE !rights_holder |
rights_id | INTEGER*4 |
rab |
INCLUDE '($RABDEF)'
RECORD /rabdef/ myrab |
section_id |
INTEGER*4(2)
or ++INTEGER*8 |
section_name | CHARACTER* n |
system_access_id |
INTEGER*4(2)
or ++INTEGER*8 |
time_name | CHARACTER*23 |
transaction_id | INTEGER*4(4) 1 |
uic | INTEGER*4 |
user_arg | Any longword quantity |
varying_arg | INTEGER*4 |
vector_byte_signed | BYTE( n) |
vector_byte_unsigned | BYTE( n) 1 |
vector_longword_signed | INTEGER*4( n) |
vector_longword_unsigned | INTEGER*4( n) 1 |
vector_quadword_signed |
INTEGER*4(2,
n)
or ++INTEGER*8( n) |
vector_quadword_unsigned |
INTEGER*4(2,
n)
1
or ++INTEGER*8( n) 1 |
vector_word_signed | INTEGER*2( n) |
vector_word_unsigned | INTEGER*2( n) 1 |
word_signed | INTEGER*2( n) |
word_unsigned | INTEGER*2( n) 1 |
Table B-9 lists the OpenVMS data types and their corresponding Pascal data type declarations.
OpenVMS Data Types | Pascal Declarations |
---|---|
access_bit_names | PACKED ARRAY [1..32] OF [QUAD] RECORD END; 1,2 |
access_mode | [BYTE] 0..3; 2 |
address | UNSIGNED; |
address_range | PACKED ARRAY [1..2] OF UNSIGNED; 2 |
arg_list | PACKED ARRAY [1.. n] OF UNSIGNED; 2 |
ast_procedure | UNSIGNED; |
boolean | BOOLEAN; 3 |
byte_signed | [BYTE] - 128..127; 2 |
byte_unsigned | [BYTE] 0..255; 2 |
channel | [WORD] 0..65535; 2 |
char_string | [CLASS_S] PACKED ARRAY [L..U:INTEGER] OF CHAR; 4 |
complex_number |
[LONG(2)] RECORD END; * F_Floating Complex *
1,2
[QUAD(2)] RECORD END; * D/G_Floating Complex * [OCTA(2)] RECORD END; * H_Floating Complex * |
cond_value | UNSIGNED; |
context | UNSIGNED; |
date_time | [QUAD] RECORD END; 1,2 |
device_name | [CLASS_S] PACKED ARRAY [L..U:INTEGER] OF CHAR; 4 |
ef_cluster_name | [CLASS_S] PACKED ARRAY [L..U:INTEGER] OF CHAR; 4 |
ef_number | UNSIGNED; |
exit_handler_block | PACKED ARRAY [1.. n] OF UNSIGNED; 2 |
fab | FAB$TYPE; 5 |
file_protection | [WORD] RECORD END; 1,2 |
floating_point |
REAL; { F_Floating }
SINGLE; { F_Floating } DOUBLE; { D_Floating/G_Floating } 6 QUADRUPLE; { H_Floating } |
function_code | UNSIGNED; |
identifier | UNSIGNED; |
++invo_context_blk | LIBICB$INFO_CONTEXT_BLK 5 |
++invo_handle | [UNSAFE]INTEGER; |
io_status_block | [QUAD] RECORD END; 1,2 |
item_list_2 |
PACKED ARRAY [1..
n] OF PACKED RECORD
2
CASE INTEGER OF 1: ( FIELD1 : [WORD] 0..65535; FIELD2 : [WORD] 0..65535; FIELD3 : UNSIGNED); 2: ( TERMINATOR : UNSIGNED); END; |
item_list_3 |
PACKED ARRAY [1..
n] OF PACKED RECORD
2
CASE INTEGER OF 1: ( FIELD1 : [WORD] 0..65535; FIELD2 : [WORD] 0..65535; FIELD3 : UNSIGNED; FIELD4 : UNSIGNED); 2: ( TERMINATOR : UNSIGNED); END; |
item_list_pair |
PACKED ARRAY [1..
n] OF PACKED RECORD
2
CASE INTEGER OF 1: ( FIELD1 : INTEGER; FIELD2 : INTEGER); 2: ( TERMINATOR : UNSIGNED); END; |
item_quota_list |
PACKED ARRAY [1..
n] OF PACKED RECORD
2
CASE INTEGER OF 1: ( QUOTA_NAME : [BYTE] 0..255; QUOTA_VALUE: UNSIGNED); 2: ( QUOTA_TERM : [BYTE] 0..255); END; |
lock_id | UNSIGNED; |
lock_status_block | [BYTE(24)] RECORD END; 1,2 |
lock_value_block | [BYTE(16)] RECORD END; 1,2 |
logical_name | [CLASS_S] PACKED ARRAY [L..U:INTEGER] OF CHAR; 4 |
longword_signed | INTEGER; |
longword_unsigned | UNSIGNED; |
mask_byte | [BYTE,UNSAFE] PACKED ARRAY [1..8] OF BOOLEAN; 2 |
mask_longword | [LONG,UNSAFE] PACKED ARRAY [1..32] OF BOOLEAN; 2 |
mask_quadword | [QUAD,UNSAFE] PACKED ARRAY [1..64] OF BOOLEAN; 2 |
mask_word | [WORD,UNSAFE] PACKED ARRAY [1..16] OF BOOLEAN; 2 |
mechanism_args | CHF$TYPE; 5 |
null_arg | UNSIGNED; |
octaword_signed | [OCTA] RECORD END; 1,2 |
octaword_unsigned | [OCTA] RECORD END; 1,2 |
page_protection | [LONG] 0..7; 2 |
procedure | UNSIGNED; |
process_id | UNSIGNED; |
process_name | [CLASS_S] PACKED ARRAY [L..U:INTEGER] OF CHAR; 4 |
quadword_signed | [QUAD] RECORD END; 1,2 |
quadword_unsigned | [QUAD] RECORD END; 1,2 |
rights_holder | [QUAD] RECORD END; 1,2 |
rights_id | UNSIGNED; |
rab | RAB$TYPE; 5 |
section_id | [QUAD] RECORD END; 1,2 |
section_name | [CLASS_S] PACKED ARRAY [L..U:INTEGER] OF CHAR; 4 |
system_access_id | [QUAD] RECORD END; 1,2 |
time_name | [CLASS_S] PACKED ARRAY [L..U:INTEGER] OF CHAR; 4 |
transaction_id | [OCTA] RECORD END; 1,2 |
uic | UNSIGNED; |
user_arg | [UNSAFE] UNSIGNED; |
varying_arg | [UNSAFE,REFERENCE] PACKED ARRAY [L..U:INTEGER] OF [BYTE] 0..255; |
vector_byte_signed | PACKED ARRAY [1.. n] OF [BYTE] - 128..127; 2 |
vector_byte_unsigned | PACKED ARRAY [1.. n] OF [BYTE] 0..255; 2 |
vector_longword_signed | PACKED ARRAY [1.. n] OF INTEGER; 2 |
vector_longword_unsigned | PACKED ARRAY [1.. n] OF UNSIGNED; 2 |
vector_quadword_signed | PACKED ARRAY [1.. n] OF [QUAD] RECORD END; 1,2 |
vector_quadword_unsigned | PACKED ARRAY [1.. n] OF [QUAD] RECORD END; 1,2 |
vector_word_signed | PACKED ARRAY [1.. n] OF [WORD] - 32768..32767; 2 |
vector_word_unsigned | PACKED ARRAY [1.. n] OF [WORD] 0..65535; 2 |
word_signed | [WORD] - 32768..32767; 2 |
word_unsigned | [WORD] 0..65535; 2 |
Previous | Next | Contents | Index |
Copyright © Compaq Computer Corporation 1998. All rights reserved. Legal |
5843PRO_011.HTML
|