#ifndef __LOCALE_LOADED #define __LOCALE_LOADED 1 #ifndef __LOCALE_PROCESSED #define __LOCALE_PROCESSED /**************************************************************************** ** ** - Localization ** ***************************************************************************** ** Header introduced by the ANSI C Standard ***************************************************************************** ** ** Copyright 2004 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. ** ***************************************************************************** */ #pragma __nostandard #include #ifdef __cplusplus extern "C" { #endif #if __INITIAL_POINTER_SIZE # pragma __pointer_size __save # pragma __pointer_size 32 #endif /* ** Member align structures */ #pragma __member_alignment __save #pragma __member_alignment #ifdef __NAMESPACE_STD namespace std { #endif /* ** Define the lconv structure */ struct lconv { char *decimal_point; char *thousands_sep; char *grouping; char *int_curr_symbol; char *currency_symbol; char *mon_decimal_point; char *mon_thousands_sep; char *mon_grouping; char *positive_sign; char *negative_sign; char int_frac_digits; char frac_digits; char p_cs_precedes; char p_sep_by_space; char n_cs_precedes; char n_sep_by_space; char p_sign_posn; char n_sign_posn; }; #ifdef __NAMESPACE_STD } /* namespace std */ #endif /* ** Define NULL */ #ifndef NULL # define NULL __NULL #endif /* ** Define lconv enumerated values */ #define LC_ALL (-1) #define LC_COLLATE 0 #define LC_CTYPE 1 #define LC_MONETARY 2 #define LC_NUMERIC 3 #define LC_TIME 4 #if __CRTL_VER >= 60200000 && (_POSIX_C_SOURCE >= 2 || !defined _ANSI_C_SOURCE) # define LC_MESSAGES 5 #endif #if __CRTL_VER >= 60200000 && !defined _ANSI_C_SOURCE # define LC_MAX 5 #endif /* ** Change MIA environment to use MIA setlocale semantics */ #ifdef __MIA # ifdef setlocale # undef setlocale # endif # define setlocale decc$mia_setlocale_v1 #endif #ifdef __NAMESPACE_STD namespace std { #endif /* ** Function prototypes which always return 32 bit pointers */ struct lconv * localeconv (void); #ifdef __NAMESPACE_STD } /* namespace std */ #endif /* ** When compiling with /POINTER_SIZE, change to long pointers so that ** prototypes reflect the implementation for widened pointers. When not ** using /POINTER_SIZE, the prototypes do not allow for long pointers. */ #if __INITIAL_POINTER_SIZE # pragma __pointer_size 64 #endif #ifdef __NAMESPACE_STD namespace std { #endif /* ** Function prototypes */ __char_ptr32 setlocale (int __category, const char *__locale); #ifdef __NAMESPACE_STD } /* namespace std */ #endif /* ** Restore the users pointer context */ #if __INITIAL_POINTER_SIZE # pragma __pointer_size __restore #endif #ifdef __cplusplus } #endif #pragma __member_alignment __restore #pragma __standard #endif /* __LOCALE_PROCESSED */ #if defined(__NAMESPACE_STD) && !defined(__NAMESPACE_STD_ONLY) # ifndef __USING_LOCALE_NAMES # define __USING_LOCALE_NAMES using std::lconv; using std::localeconv; using std::setlocale; # endif #endif #endif /* __LOCALE_LOADED */