/**/ /***************************************************************************/ /** **/ /** © Copyright 2010, Hewlett-Packard Development Company, L.P. **/ /** **/ /** Confidential computer software. Valid license from HP and/or **/ /** its subsidiaries required for possession, use, or copying. **/ /** **/ /** Consistent with FAR 12.211 and 12.212, Commercial Computer Software, **/ /** Computer Software Documentation, and Technical Data for Commercial **/ /** Items are licensed to the U.S. Government under vendor's standard **/ /** commercial license. **/ /** **/ /** Neither HP nor any of its subsidiaries shall be liable for technical **/ /** or editorial errors or omissions contained herein. The information **/ /** in this document is provided "as is" without warranty of any kind and **/ /** is subject to change without notice. The warranties for HP products **/ /** are set forth in the express limited warranty statements accompanying **/ /** such products. Nothing herein should be construed as constituting an **/ /** additional warranty. **/ /** **/ /***************************************************************************/ /********************************************************************************************************************************/ /* Created: 30-Mar-2010 17:26:37 by OpenVMS SDL EV3-3 */ /* Source: 20-NOV-2006 15:52:45 $1$DGA7274:[LIB_H.SRC]PKTADEF.SDL;1 */ /********************************************************************************************************************************/ /*** MODULE $PKTADEF ***/ #ifndef __PKTADEF_LOADED #define __PKTADEF_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 #define PKTA$M_TM_ACTIVE 0x1 #define PKTA$M_AVOID_PREEMPT 0x2 #define PKTA$M_IMF_PENDING 0x4 #define PKTA$M_EVENT_NO_FLAG 0x1 #ifdef __cplusplus /* Define structure prototypes */ struct _ktb; struct _phd; struct _fred; #endif /* #ifdef __cplusplus */ #if !defined(__NOBASEALIGN_SUPPORT) && !defined(__cplusplus) /* If using pre DECC V4.0 or C++ */ #pragma __nomember_alignment __quadword #else #pragma __nomember_alignment #endif typedef struct _pkta { #pragma __nomember_alignment __union { unsigned __int64 pkta$q_tm_flags; /* Threads manager flags */ __struct { unsigned pkta$v_tm_active : 1; /* Threads manager is active */ unsigned pkta$v_avoid_preempt : 1; /* Try to avoid preemption */ unsigned pkta$v_imf_pending : 1; /* IMSEM-free upcall is coming */ unsigned pkta$v_fill_6_ : 5; } pkta$r_fill_1_; } pkta$r_fill_0_; __union { unsigned __int64 pkta$q_persona_handle; /* Security persona handle */ __struct { unsigned int pkta$l_persona_id; /* */ unsigned int pkta$l_security_reserved; /* */ } pkta$r_fill_3_; } pkta$r_fill_2_; /* */ unsigned __int64 pkta$q_ieee_fp_control; /* IEEE exceptions control register */ __union { #ifdef __INITIAL_POINTER_SIZE /* Defined whenever ptr size pragmas supported */ #pragma __required_pointer_size __long /* And set ptr size default to 64-bit pointers */ void (*pkta$q_ast_address)(); /* User AST routine */ #else unsigned __int64 pkta$q_ast_address; #endif unsigned __int64 pkta$q_iosa; /* start of embedded iosa */ unsigned __int64 pkta$q_iosb; /* start of embedded iosa */ unsigned int pkta$l_iosa_status; /* iosa$l_status */ } pkta$r_iosa1; __union { unsigned __int64 pkta$q_ast_parameter; /* User AST parameter */ unsigned __int64 pkta$q_iosa_count; /* IOSA$Q_COUNT */ } pkta$r_iosa_2; __union { unsigned __int64 pkta$q_ast_thread_id; /* Target user mode thread ID */ unsigned __int64 pkta$q_iosa_context_q; /* IOSA$Q_CONTEXT_Q */ } pkta$r_iosa_3; __union { unsigned __int64 pkta$q_postef; /* Posted event flags */ unsigned __int64 pkta$q_iosa_context_id; /* IOSA$Q_CONTEXT_ID */ } pkta$r_iosa_4; __union { unsigned __int64 pkta$q_thread_events; /* Other events to be reported to thread manager */ __struct { unsigned pkta$v_event_no_flag : 1; /* The no-flag event */ unsigned pkta$v_fill_7_ : 7; } pkta$r_fill_5_; } pkta$r_fill_4_; unsigned __int64 pkta$q_sw_fen_u; /* Don't use for other flags because of synchronization */ unsigned __int64 pkta$q_fp_restore_area; /* Pointer to register save area to restore FP regs from */ /* It should be ponter_quad (FLOAT), but I don't think SDL understands that. */ unsigned __int64 pkta$q_rpcc_64_context; /* Context to allow returning a 64-bit time value with SYS$RPCC_64 */ unsigned __int64 pkta$q_uw_spare_1; unsigned __int64 pkta$q_uw_spare_2; #ifdef __INITIAL_POINTER_SIZE /* Defined whenever ptr size pragmas supported */ #pragma __required_pointer_size __long /* And set ptr size default to 64-bit pointers */ struct _ktb *pkta$q_ktb; /* Address of KTB for this thread */ #else unsigned __int64 pkta$q_ktb; #endif unsigned int pkta$l_pid; /* PID for this thread */ unsigned int pkta$l_epid; /* EPID for this thread */ #ifdef __INITIAL_POINTER_SIZE /* Defined whenever ptr size pragmas supported */ #pragma __required_pointer_size __long /* And set ptr size default to 64-bit pointers */ struct _phd *pkta$q_phd; /* Address of PHD */ #else unsigned __int64 pkta$q_phd; #endif #ifdef __INITIAL_POINTER_SIZE /* Defined whenever ptr size pragmas supported */ #pragma __required_pointer_size __long /* And set ptr size default to 64-bit pointers */ void *pkta$q_kstack_base; /* Kstack base address */ #else unsigned __int64 pkta$q_kstack_base; #endif #ifdef __INITIAL_POINTER_SIZE /* Defined whenever ptr size pragmas supported */ #pragma __required_pointer_size __long /* And set ptr size default to 64-bit pointers */ void *pkta$q_stack [4]; /* STACK pointer array */ #else unsigned __int64 pkta$q_stack; #endif #ifdef __INITIAL_POINTER_SIZE /* Defined whenever ptr size pragmas supported */ #pragma __required_pointer_size __long /* And set ptr size default to 64-bit pointers */ void *pkta$q_stacklim [4]; /* STACK limit pointer */ #else unsigned __int64 pkta$q_stacklim; #endif #ifdef __INITIAL_POINTER_SIZE /* Defined whenever ptr size pragmas supported */ #pragma __required_pointer_size __long /* And set ptr size default to 64-bit pointers */ struct _fred *pkta$q_fred; /* Address of FRED */ #else unsigned __int64 pkta$q_fred; #endif #ifdef __INITIAL_POINTER_SIZE /* Defined whenever ptr size pragmas supported */ #pragma __required_pointer_size __long /* And set ptr size default to 64-bit pointers */ void *pkta$q_regstack [4]; /* Register stack pointer array */ #else unsigned __int64 pkta$q_regstack; #endif #ifdef __INITIAL_POINTER_SIZE /* Defined whenever ptr size pragmas supported */ #pragma __required_pointer_size __long /* And set ptr size default to 64-bit pointers */ void *pkta$q_regstacklim [4]; /* Register stack limit array */ #else unsigned __int64 pkta$q_regstacklim; #endif unsigned __int64 pkta$q_stack_peak [4]; /* Memory stack peak array */ unsigned __int64 pkta$q_regstack_peak [4]; /* Register stack peak array */ } PKTA; #if !defined(__VAXC) #define pkta$q_tm_flags pkta$r_fill_0_.pkta$q_tm_flags #define pkta$v_tm_active pkta$r_fill_0_.pkta$r_fill_1_.pkta$v_tm_active #define pkta$v_avoid_preempt pkta$r_fill_0_.pkta$r_fill_1_.pkta$v_avoid_preempt #define pkta$v_imf_pending pkta$r_fill_0_.pkta$r_fill_1_.pkta$v_imf_pending #define pkta$q_persona_handle pkta$r_fill_2_.pkta$q_persona_handle #define pkta$l_persona_id pkta$r_fill_2_.pkta$r_fill_3_.pkta$l_persona_id #define pkta$l_security_reserved pkta$r_fill_2_.pkta$r_fill_3_.pkta$l_security_reserved #define pkta$q_ast_address pkta$r_iosa1.pkta$q_ast_address #define pkta$q_iosa pkta$r_iosa1.pkta$q_iosa #define pkta$q_iosb pkta$r_iosa1.pkta$q_iosb #define pkta$l_iosa_status pkta$r_iosa1.pkta$l_iosa_status #define pkta$q_ast_parameter pkta$r_iosa_2.pkta$q_ast_parameter #define pkta$q_iosa_count pkta$r_iosa_2.pkta$q_iosa_count #define pkta$q_ast_thread_id pkta$r_iosa_3.pkta$q_ast_thread_id #define pkta$q_iosa_context_q pkta$r_iosa_3.pkta$q_iosa_context_q #define pkta$q_postef pkta$r_iosa_4.pkta$q_postef #define pkta$q_iosa_context_id pkta$r_iosa_4.pkta$q_iosa_context_id #define pkta$q_thread_events pkta$r_fill_4_.pkta$q_thread_events #define pkta$v_event_no_flag pkta$r_fill_4_.pkta$r_fill_5_.pkta$v_event_no_flag #endif /* #if !defined(__VAXC) */ #define PKTA$S_URUW 104 /* Length URUW section */ #define PKTA$S_UREW 232 /* Length UREW section */ #define PKTA$C_LENGTH 336 /* Length PKTA */ #define PKTA$K_LENGTH 336 /* Length PKTA */ #define PKTA$S_PKTADEF 336 /* Old size name - synonym */ #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 /* __PKTADEF_LOADED */