/********************************************************************************************************************************/ /* Created: 30-Mar-2010 17:29:54 by OpenVMS SDL EV3-3 */ /* Source: 30-MAR-2010 17:29:22 $1$DGA7274:[STARLET_H.SRC]STARDEFQZ.SDI;1 */ /********************************************************************************************************************************/ /*** MODULE $STSDEF ***/ #ifndef __STSDEF_LOADED #define __STSDEF_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 /* */ /* MACROS TO DEFINE SYSTEM SERVICE FAILURE AND STATUS CODES. */ /* */ /* */ /* $STRUCT SS */ /* */ /* THIS STRUCTURE IS NOW CONTAINED IN 'SSMSG.MDL' */ /*+ */ /* Define 32-bit VAX-11 error code longword fields */ /* Changed to agree with Handbook - TNH 26-OCT-77 - CHANGE M 1 to P 1 */ /* Changed to agree with new status value W. H. Brown 18-NOV-1977 */ /*- */ #define STS$M_SEVERITY 0x7 #define STS$M_COND_ID 0xFFFFFF8 #define STS$M_CONTROL 0xF0000000 #define STS$M_SUCCESS 0x1 #define STS$M_MSG_NO 0xFFF8 #define STS$M_CODE 0x7FF8 #define STS$M_FAC_SP 0x8000 #define STS$M_CUST_DEF 0x8000000 #define STS$M_INHIB_MSG 0x10000000 #define STS$M_FAC_NO 0xFFF0000 #define STS$K_WARNING 0 /* WARNING */ #define STS$K_SUCCESS 1 /* SUCCESSFUL COMPLETION */ #define STS$K_ERROR 2 /* ERROR */ #define STS$K_INFO 3 /* INFORMATION */ #define STS$K_SEVERE 4 /* SEVERE ERROR */ #ifdef __NEW_STARLET typedef union _stsdef { __struct { unsigned sts$v_severity : 3; /* severity code */ unsigned sts$v_cond_id : 25; /* condition id */ unsigned sts$v_control : 4; /* control bits */ } sts$r_stsdef_bits0; __struct { unsigned sts$v_success : 1; /* Success */ unsigned stsdef$$_fill_1 : 2; /* skip severity field */ unsigned sts$v_msg_no : 13; /* Message number */ } sts$r_stsdef_bits1; __struct { unsigned stsdef$$_fill_2 : 3; /* Skip severity field */ unsigned sts$v_code : 12; /* code */ unsigned sts$v_fac_sp : 1; /* 1 if facility specific */ unsigned stsdef$$_fill_3 : 11; unsigned sts$v_cust_def : 1; /* 1 if sub-system is customer (or CSS) defined */ unsigned sts$v_inhib_msg : 1; /* 1 if message should not be printed */ unsigned stsdef$$_fill_4 : 3; /* reserved control bits */ } sts$r_stsdef_bits2; __struct { unsigned stsdef$$_fill_5 : 16; /* Skip message nubmer field */ unsigned sts$v_fac_no : 12; /* Facility is 12 bits */ unsigned stsdef$$_fill_6 : 4; /* Control bits */ } sts$r_stsdef_bits3; /*+ */ /* Define severity codes */ /*- */ } STSDEF; #if !defined(__VAXC) #define sts$v_severity sts$r_stsdef_bits0.sts$v_severity #define sts$v_cond_id sts$r_stsdef_bits0.sts$v_cond_id #define sts$v_control sts$r_stsdef_bits0.sts$v_control #define sts$v_success sts$r_stsdef_bits1.sts$v_success #define sts$v_msg_no sts$r_stsdef_bits1.sts$v_msg_no #define sts$v_code sts$r_stsdef_bits2.sts$v_code #define sts$v_fac_sp sts$r_stsdef_bits2.sts$v_fac_sp #define sts$v_cust_def sts$r_stsdef_bits2.sts$v_cust_def #define sts$v_inhib_msg sts$r_stsdef_bits2.sts$v_inhib_msg #define sts$v_fac_no sts$r_stsdef_bits3.sts$v_fac_no #endif /* #if !defined(__VAXC) */ #else /* __OLD_STARLET */ union stsdef { __struct { unsigned sts$v_severity : 3; /* severity code */ unsigned sts$v_cond_id : 25; /* condition id */ unsigned sts$v_control : 4; /* control bits */ } sts$r_stsdef_bits0; __struct { unsigned sts$v_success : 1; /* Success */ unsigned stsdef$$_fill_1 : 2; /* skip severity field */ unsigned sts$v_msg_no : 13; /* Message number */ } sts$r_stsdef_bits1; __struct { unsigned stsdef$$_fill_2 : 3; /* Skip severity field */ unsigned sts$v_code : 12; /* code */ unsigned sts$v_fac_sp : 1; /* 1 if facility specific */ unsigned stsdef$$_fill_3 : 11; unsigned sts$v_cust_def : 1; /* 1 if sub-system is customer (or CSS) defined */ unsigned sts$v_inhib_msg : 1; /* 1 if message should not be printed */ unsigned stsdef$$_fill_4 : 3; /* reserved control bits */ } sts$r_stsdef_bits2; __struct { unsigned stsdef$$_fill_5 : 16; /* Skip message nubmer field */ unsigned sts$v_fac_no : 12; /* Facility is 12 bits */ unsigned stsdef$$_fill_6 : 4; /* Control bits */ } sts$r_stsdef_bits3; /*+ */ /* Define severity codes */ /*- */ } ; #if !defined(__VAXC) #define sts$v_severity sts$r_stsdef_bits0.sts$v_severity #define sts$v_cond_id sts$r_stsdef_bits0.sts$v_cond_id #define sts$v_control sts$r_stsdef_bits0.sts$v_control #define sts$v_success sts$r_stsdef_bits1.sts$v_success #define sts$v_msg_no sts$r_stsdef_bits1.sts$v_msg_no #define sts$v_code sts$r_stsdef_bits2.sts$v_code #define sts$v_fac_sp sts$r_stsdef_bits2.sts$v_fac_sp #define sts$v_cust_def sts$r_stsdef_bits2.sts$v_cust_def #define sts$v_inhib_msg sts$r_stsdef_bits2.sts$v_inhib_msg #define sts$v_fac_no sts$r_stsdef_bits3.sts$v_fac_no #endif /* #if !defined(__VAXC) */ #endif /* #ifdef __NEW_STARLET */ #define STS$S_CODE 0x0C #define STS$S_COND_ID 0x19 #define STS$S_CONTROL 0x04 #define STS$S_FAC_NO 0x0C #define STS$S_MSG_NO 0x0D #define STS$S_SEVERITY 0x03 #define STS$V_CODE 0x03 #define STS$V_COND_ID 0x03 #define STS$V_CONTROL 0x1C #define STS$V_CUST_DEF 0x1B #define STS$V_FAC_NO 0x10 #define STS$V_FAC_SP 0x0F #define STS$V_INHIB_MSG 0x1C #define STS$V_MSG_NO 0x03 #define STS$V_SEVERITY 0x00 #define STS$V_SUCCESS 0x00 /* Define MACROS to extract individual fields from a status value */ #define $VMS_STATUS_CODE(code) ( ( (code) & STS$M_CODE ) >> STS$V_CODE ) #define $VMS_STATUS_COND_ID(code) ( ( (code) & STS$M_COND_ID ) >> STS$V_COND_ID ) #define $VMS_STATUS_CONTROL(code) ( ( (code) & STS$M_CONTROL ) >> STS$V_CONTROL ) #define $VMS_STATUS_CUST_DEF(code) ( ( (code) & STS$M_CUST_DEF ) >> STS$V_CUST_DEF ) #define $VMS_STATUS_FAC_NO(code) ( ( (code) & STS$M_FAC_NO ) >> STS$V_FAC_NO ) #define $VMS_STATUS_FAC_SP(code) ( ( (code) & STS$M_FAC_SP ) >> STS$V_FAC_SP ) #define $VMS_STATUS_INHIB_MSG(code) ( ( (code) & STS$M_INHIB_MSG ) >> STS$V_INHIB_MSG ) #define $VMS_STATUS_MSG_NO(code) ( ( (code) & STS$M_MSG_NO ) >> STS$V_MSG_NO ) #define $VMS_STATUS_SEVERITY(code) ( ( (code) & STS$M_SEVERITY ) >> STS$V_SEVERITY ) #define $VMS_STATUS_SUCCESS(code) ( ( (code) & STS$M_SUCCESS ) >> STS$V_SUCCESS ) #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 /* __STSDEF_LOADED */