/***************************************************************************/ /** **/ /** HPE CONFIDENTIAL. This software is confidential proprietary software **/ /** licensed by Hewlett-Packard Enterprise Development, LP, and is not **/ /** authorized to be used, duplicated OR disclosed to anyone without the **/ /** prior written permission of HPE. **/ /** © 2023 Copyright Hewlett-Packard Enterprise Development, LP **/ /** **/ /** VMS SOFTWARE, INC. CONFIDENTIAL. This software is confidential **/ /** proprietary software licensed by VMS Software, Inc., and is not **/ /** authorized to be used, duplicated or disclosed to anyone without **/ /** the prior written permission of VMS Software, Inc. **/ /** © 2023 Copyright VMS Software, Inc. **/ /** **/ /***************************************************************************/ /********************************************************************************************************************************/ /* Created: 9-Nov-2023 12:06:46 by OpenVMS SDL V3.7 */ /* Source: 22-APR-1993 13:34:38 $1$DGA8345:[LIB_H.SRC]NTEDEF.SDL;1 */ /********************************************************************************************************************************/ /*** MODULE $NTEDEF ***/ #ifndef __NTEDEF_LOADED #define __NTEDEF_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 /*+ */ /* NOTIFICATION TABLE ENTRY DEFINITIONS */ /* */ /* NOTIFICATION TABLE ENTRIES ARE USED BY THE NOTIFICATION MODULE ROUTINES. */ /* EACH ENTRY STORES THE INFORMATION NEEDED FOR A SINGLE NOTIFICATION. THE */ /* SYSTEM MAINTAINS TWO TABLES OF SUCH ENTRIES, ONE EACH FOR JOIN NOTIFICATION */ /* AND REMOVAL NOTIFICATION. */ /* */ /*- */ #define NTE$K_LENGTH 12 /* LENGTH OF AN ENTRY */ #define NTE$C_LENGTH 12 /* LENGTH OF AN ENTRY */ #define NTE$S_NTEDEF 12 typedef struct _nte { __union { __union { unsigned int nte$l_notifn_list_hdr; __struct { unsigned short int nte$w_notifnefl; /* INDEX OF FIRST NOTIFICATION ENTRY ON THE TABLE */ unsigned short int nte$w_noofent; /* NUMBER OF ENTRIES IN THE TABLE */ } nte$r_fill_1_; } nte$r_fill_0_; __union { unsigned int nte$l_notifn_id; __struct { unsigned short int nte$w_link; /* LINK TO THE NEXT ENTRY ON THE LIST */ unsigned short int nte$w_seqno; /* SEQUENCE NUMBER OF THIS ENTRY */ } nte$r_fill_3_; } nte$r_fill_2_; } nte$r_notifn_list_overlay; __union { int (*nte$l_routine_address)(); /* ADDRESS OF ROUTINE TO BE CALLED DURING NOTIFICATION */ __union { unsigned int nte$l_free_list_hdr; __struct { unsigned short int nte$w_freefl; /* INDEX OF FIRST FREE ENTRY ON THE TABLE */ short int nte$w_fill_1; } nte$r_fill_5_; } nte$r_fill_4_; } nte$r_free_list_overlay; __union { unsigned int nte$l_notifn_param; /* PARAMETER TO BE PASSED TO THE ROUTINE */ __union { unsigned int nte$l_type_defn; __struct { unsigned short int nte$w_size; /* SIZE OF THE TABLE */ unsigned char nte$b_type; /* TYPE OF THE DATA STRUCTURE */ unsigned char nte$b_subtype; /* SUBTYPE OF THE DATA STRUCTURE */ } nte$r_fill_7_; } nte$r_fill_6_; } nte$r_notifn_param_overlay; } NTE; #if !defined(__VAXC) #define nte$l_notifn_list_hdr nte$r_notifn_list_overlay.nte$r_fill_0_.nte$l_notifn_list_hdr #define nte$w_notifnefl nte$r_notifn_list_overlay.nte$r_fill_0_.nte$r_fill_1_.nte$w_notifnefl #define nte$w_noofent nte$r_notifn_list_overlay.nte$r_fill_0_.nte$r_fill_1_.nte$w_noofent #define nte$l_notifn_id nte$r_notifn_list_overlay.nte$r_fill_2_.nte$l_notifn_id #define nte$w_link nte$r_notifn_list_overlay.nte$r_fill_2_.nte$r_fill_3_.nte$w_link #define nte$w_seqno nte$r_notifn_list_overlay.nte$r_fill_2_.nte$r_fill_3_.nte$w_seqno #define nte$l_routine_address nte$r_free_list_overlay.nte$l_routine_address #define nte$l_free_list_hdr nte$r_free_list_overlay.nte$r_fill_4_.nte$l_free_list_hdr #define nte$w_freefl nte$r_free_list_overlay.nte$r_fill_4_.nte$r_fill_5_.nte$w_freefl #define nte$l_notifn_param nte$r_notifn_param_overlay.nte$l_notifn_param #define nte$l_type_defn nte$r_notifn_param_overlay.nte$r_fill_6_.nte$l_type_defn #define nte$w_size nte$r_notifn_param_overlay.nte$r_fill_6_.nte$r_fill_7_.nte$w_size #define nte$b_type nte$r_notifn_param_overlay.nte$r_fill_6_.nte$r_fill_7_.nte$b_type #define nte$b_subtype nte$r_notifn_param_overlay.nte$r_fill_6_.nte$r_fill_7_.nte$b_subtype #endif /* #if !defined(__VAXC) */ #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 /* __NTEDEF_LOADED */