/********************************************************************************************************************************/ /* Created: 9-Mar-2021 22:28:06 by OpenVMS SDL EV3-3 */ /* Source: 09-MAR-2021 22:28:01 $1$DGA8085:[STARLET_H.SRC]STARDEFQZ.SDI;1 */ /********************************************************************************************************************************/ /*** MODULE $SBKDEF ***/ #ifndef __SBKDEF_LOADED #define __SBKDEF_LOADED 1 #pragma __nostandard /* This file uses non-ANSI-Standard features */ #pragma __member_alignment __save #pragma __nomember_alignment #ifdef __INITIAL_POINTER_SIZE /* Defined whenever ptr size pragmas supported */ #pragma __required_pointer_size __save /* Save the previously-defined required ptr size */ #pragma __required_pointer_size __short /* And set ptr size default to 32-bit pointers */ #endif #ifdef __cplusplus extern "C" { #define __unknown_params ... #define __optional_params ... #else #define __unknown_params #define __optional_params ... #endif #ifndef __struct #if !defined(__VAXC) #define __struct struct #else #define __struct variant_struct #endif #endif #ifndef __union #if !defined(__VAXC) #define __union union #else #define __union variant_union #endif #endif /*+ */ /* */ /* Statistics block. This block is used to report various data regarding */ /* an open file to the requesting program. */ /* */ /*- */ /* */ /* The first two longwords are presented in inverted form for compatibility */ /* with the old RSX-11 statistics block. */ /* */ #define SBK$K_LENGTH 32 #define SBK$C_LENGTH 32 #ifdef __NEW_STARLET typedef struct _sbkdef { __union { unsigned int sbk$l_stlbn; /* starting LBN if contiguous */ __struct { unsigned short int sbk$w_stlbnh; /* high order word */ unsigned short int sbk$w_stlbnl; /* low order word */ } sbk$r_stlbn_fields; } sbk$r_stlbn_overlay; __union { unsigned int sbk$l_filesize; /* file size */ __struct { unsigned short int sbk$w_filesizh; /* high order word */ unsigned short int sbk$w_filesizl; /* low order word */ /* */ /* The following two fields are for RSX-11 compatibility */ /* */ } sbk$r_filesize_fields; } sbk$r_filesize_overlay; unsigned char sbk$b_acnt; /* low byte of access count */ unsigned char sbk$b_lcnt; /* low byte of lock count */ unsigned int sbk$l_fcb; /* address of file control block */ short int sbkdef$$_fill_1; /* spare */ unsigned short int sbk$w_acnt; /* access count */ unsigned short int sbk$w_lcnt; /* lock count (against writers) */ unsigned short int sbk$w_wcnt; /* writer count */ unsigned short int sbk$w_tcnt; /* truncate lock count */ unsigned int sbk$l_reads; /* count of reads executed on channel */ unsigned int sbk$l_writes; /* count of writes executed on channel */ } SBKDEF; #if !defined(__VAXC) #define sbk$l_stlbn sbk$r_stlbn_overlay.sbk$l_stlbn #define sbk$w_stlbnh sbk$r_stlbn_overlay.sbk$r_stlbn_fields.sbk$w_stlbnh #define sbk$w_stlbnl sbk$r_stlbn_overlay.sbk$r_stlbn_fields.sbk$w_stlbnl #define sbk$l_filesize sbk$r_filesize_overlay.sbk$l_filesize #define sbk$w_filesizh sbk$r_filesize_overlay.sbk$r_filesize_fields.sbk$w_filesizh #define sbk$w_filesizl sbk$r_filesize_overlay.sbk$r_filesize_fields.sbk$w_filesizl #endif /* #if !defined(__VAXC) */ #else /* __OLD_STARLET */ struct sbkdef { __union { unsigned int sbk$l_stlbn; /* starting LBN if contiguous */ __struct { unsigned short int sbk$w_stlbnh; /* high order word */ unsigned short int sbk$w_stlbnl; /* low order word */ } sbk$r_stlbn_fields; } sbk$r_stlbn_overlay; __union { unsigned int sbk$l_filesize; /* file size */ __struct { unsigned short int sbk$w_filesizh; /* high order word */ unsigned short int sbk$w_filesizl; /* low order word */ /* */ /* The following two fields are for RSX-11 compatibility */ /* */ } sbk$r_filesize_fields; } sbk$r_filesize_overlay; unsigned char sbk$b_acnt; /* low byte of access count */ unsigned char sbk$b_lcnt; /* low byte of lock count */ unsigned int sbk$l_fcb; /* address of file control block */ short int sbkdef$$_fill_1; /* spare */ unsigned short int sbk$w_acnt; /* access count */ unsigned short int sbk$w_lcnt; /* lock count (against writers) */ unsigned short int sbk$w_wcnt; /* writer count */ unsigned short int sbk$w_tcnt; /* truncate lock count */ unsigned int sbk$l_reads; /* count of reads executed on channel */ unsigned int sbk$l_writes; /* count of writes executed on channel */ } ; #if !defined(__VAXC) #define sbk$l_stlbn sbk$r_stlbn_overlay.sbk$l_stlbn #define sbk$w_stlbnh sbk$r_stlbn_overlay.sbk$r_stlbn_fields.sbk$w_stlbnh #define sbk$w_stlbnl sbk$r_stlbn_overlay.sbk$r_stlbn_fields.sbk$w_stlbnl #define sbk$l_filesize sbk$r_filesize_overlay.sbk$l_filesize #define sbk$w_filesizh sbk$r_filesize_overlay.sbk$r_filesize_fields.sbk$w_filesizh #define sbk$w_filesizl sbk$r_filesize_overlay.sbk$r_filesize_fields.sbk$w_filesizl #endif /* #if !defined(__VAXC) */ #endif /* #ifdef __NEW_STARLET */ #pragma __member_alignment __restore #ifdef __INITIAL_POINTER_SIZE /* Defined whenever ptr size pragmas supported */ #pragma __required_pointer_size __restore /* Restore the previously-defined required ptr size */ #endif #ifdef __cplusplus } #endif #pragma __standard #endif /* __SBKDEF_LOADED */