/**/ /***************************************************************************/ /** **/ /** © 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:37:56 by OpenVMS SDL EV3-3 */ /* Source: 27-JUL-2005 15:03:05 $1$DGA7274:[LIB_H.SRC]SHM_CPPDEF.SDL;1 */ /********************************************************************************************************************************/ /*** MODULE $SHM_CPPDEF ***/ #ifndef __SHM_CPPDEF_LOADED #define __SHM_CPPDEF_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 /* */ /* Shared Memory CPP Definitions. The shared memory CPP structure contains */ /* the data needed to manage the physical pages within a shared memory CPP. */ /* */ #include /* Define the PMAP type; SHM_CPP contains embedded PMAP types */ #define SHM_CPP$M_VALID 0x1 #define SHM_CPP$M_INIT_IN_PROGRESS 0x2 #define SHM_CPP$M_RESERVED_2_31 0xFFFFFFFC #define SHM_CPP$C_LENGTH 192 /* Length of SHM_CPP */ #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 _shm_cpp { #pragma __nomember_alignment unsigned __int64 shm_cpp$q_spare1; /* Spare */ unsigned short int shm_cpp$w_mbo; /* Must be one */ unsigned char shm_cpp$b_type; /* Dynamic structure type */ unsigned char shm_cpp$b_subtype; /* Dynamic structure subtype */ unsigned int shm_cpp$l_version; /* Structure version number */ unsigned __int64 shm_cpp$q_size; /* Size of the structure */ __union { unsigned int shm_cpp$l_flags; /* FLAGS longword */ __struct { unsigned shm_cpp$v_valid : 1; /* SHM_CPP is valid */ unsigned shm_cpp$v_init_in_progress : 1; /* Initialization is in progress */ unsigned shm_cpp$v_reserved_2_31 : 30; } shm_cpp$r_flags_bits; } shm_cpp$r_flags_overlay; __union { unsigned int shm_cpp$l_pfn_count; /* Number of PFNs in this CPP */ unsigned int shm_cpp$i_pfn_count; /* Number of PFNs in this CPP */ } shm_cpp$r_pfn_count_overlay; __union { unsigned int shm_cpp$l_min_pfn; /* Lowest PFN in this CPP */ unsigned int shm_cpp$i_min_pfn; /* Lowest PFN in this CPP */ } shm_cpp$r_min_pfn_overlay; __union { unsigned int shm_cpp$l_max_pfn; /* Highest PFN in this CPP */ unsigned int shm_cpp$i_max_pfn; /* Highest PFN in this CPP */ } shm_cpp$r_max_pfn_overlay; unsigned int shm_cpp$l_max_fragments; /* Maximum number of memory fragments */ unsigned int shm_cpp$l_fragment_count; /* Number of memory fragments */ unsigned __int64 shm_cpp$q_pmap_off; /* Offset to PMAP array */ unsigned __int64 shm_cpp$q_pfndb_pmap_off; /* Offset to PFNDB PMAP array */ unsigned __int64 shm_cpp$q_spare2; /* Spare */ unsigned __int64 shm_cpp$q_spare3; /* Spare */ unsigned __int64 shm_cpp$q_spare4; /* Spare */ unsigned __int64 shm_cpp$q_spare5; /* Spare */ unsigned __int64 shm_cpp$q_glock_off; /* Offset to gLock structure */ unsigned __int64 shm_cpp$q_glock_handle; /* Handle for gLock */ unsigned __int64 shm_cpp$q_gnode_off; /* Offset to gNode bitmask block */ unsigned __int64 shm_cpp$q_spare10; /* Spare */ #if !defined(__NOBASEALIGN_SUPPORT) && !defined(__cplusplus) /* If using pre DECC V4.0 or C++ */ #pragma __nomember_alignment __quadword #else #pragma __nomember_alignment #endif PLNK shm_cpp$r_free_list; /* First PFN in free page list/total free pages */ PLNK shm_cpp$r_bad_list; /* First PFN in bad page list/total bad pages */ PLNK shm_cpp$r_untested_list; /* First PFN in untested page list/total untested pages */ #pragma __nomember_alignment __union { unsigned int shm_cpp$l_recover_pfn; /* Base PFN of last allocated block */ unsigned int shm_cpp$i_recover_pfn; /* Base PFN of last allocated block */ } shm_cpp$r_recover_pfn_overlay; unsigned int shm_cpp$l_recover_count; /* Count of last allocated block */ unsigned __int64 shm_cpp$q_spare11; /* Spare */ unsigned __int64 shm_cpp$q_spare12; /* Spare */ unsigned __int64 shm_cpp$q_spare13; /* Spare */ unsigned __int64 shm_cpp$q_spare14; /* Spare */ } SHM_CPP; #if !defined(__VAXC) #define shm_cpp$l_flags shm_cpp$r_flags_overlay.shm_cpp$l_flags #define shm_cpp$v_valid shm_cpp$r_flags_overlay.shm_cpp$r_flags_bits.shm_cpp$v_valid #define shm_cpp$v_init_in_progress shm_cpp$r_flags_overlay.shm_cpp$r_flags_bits.shm_cpp$v_init_in_progress #define shm_cpp$v_reserved_2_31 shm_cpp$r_flags_overlay.shm_cpp$r_flags_bits.shm_cpp$v_reserved_2_31 #define shm_cpp$l_pfn_count shm_cpp$r_pfn_count_overlay.shm_cpp$l_pfn_count #define shm_cpp$i_pfn_count shm_cpp$r_pfn_count_overlay.shm_cpp$i_pfn_count #define shm_cpp$l_min_pfn shm_cpp$r_min_pfn_overlay.shm_cpp$l_min_pfn #define shm_cpp$i_min_pfn shm_cpp$r_min_pfn_overlay.shm_cpp$i_min_pfn #define shm_cpp$l_max_pfn shm_cpp$r_max_pfn_overlay.shm_cpp$l_max_pfn #define shm_cpp$i_max_pfn shm_cpp$r_max_pfn_overlay.shm_cpp$i_max_pfn #define shm_cpp$l_recover_pfn shm_cpp$r_recover_pfn_overlay.shm_cpp$l_recover_pfn #define shm_cpp$i_recover_pfn shm_cpp$r_recover_pfn_overlay.shm_cpp$i_recover_pfn #endif /* #if !defined(__VAXC) */ typedef unsigned int SHM_CPP_ID; /* Shared memory CPP id */ #ifdef __INITIAL_POINTER_SIZE #pragma __required_pointer_size __save /* Save current pointer size */ #pragma __required_pointer_size __long /* Pointers are 64-bit */ typedef struct _shm_cpp * SHM_CPP_PQ; /* Long pointer to a SHM_CPP structure. */ typedef unsigned int * SHM_CPP_ID_PQ; /* Long pointer to a SHM_CPP_ID */ #pragma __required_pointer_size __restore /* Return to previous pointer size */ #else typedef unsigned __int64 SHM_CPP_PQ; typedef unsigned __int64 SHM_CPP_ID_PQ; #endif /* __INITIAL_POINTER_SIZE */ #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 /* __SHM_CPPDEF_LOADED */