NCBI C Toolkit Cross Reference

C/corelib/ncbilang.h


  1 /*  ncbilang.h
  2 * ===========================================================================
  3 *
  4 *                            PUBLIC DOMAIN NOTICE
  5 *            National Center for Biotechnology Information (NCBI)
  6 *
  7 *  This software/database is a "United States Government Work" under the
  8 *  terms of the United States Copyright Act.  It was written as part of
  9 *  the author's official duties as a United States Government employee and
 10 *  thus cannot be copyrighted.  This software/database is freely available
 11 *  to the public for use. The National Library of Medicine and the U.S.
 12 *  Government do not place any restriction on its use or reproduction.
 13 *  We would, however, appreciate having the NCBI and the author cited in
 14 *  any work or product based on this material
 15 *
 16 *  Although all reasonable efforts have been taken to ensure the accuracy
 17 *  and reliability of the software and data, the NLM and the U.S.
 18 *  Government do not and cannot warrant the performance or results that
 19 *  may be obtained by using this software or data. The NLM and the U.S.
 20 *  Government disclaim all warranties, express or implied, including
 21 *  warranties of performance, merchantability or fitness for any particular
 22 *  purpose.
 23 *
 24 * ===========================================================================
 25 *
 26 * File Name:  ncbilang.h
 27 *
 28 * Author:  T. Koike, DDBJ
 29 *   
 30 * Version Creation Date: 5/27/97
 31 *
 32 * $Revision: 6.0 $
 33 *
 34 * File Description:
 35 *
 36 * Modifications:  
 37 * --------------------------------------------------------------------------
 38 * $Log: ncbilang.h,v $
 39 * Revision 6.0  1997/08/25 18:15:37  madden
 40 * Revision changed to 6.0
 41 *
 42 * Revision 5.3  1997/07/16 21:59:01  vakatov
 43 * Adopted for 32-bit MS-Win DLLs
 44 *
 45 * ==========================================================================
 46 */
 47 
 48 #ifndef _NCBILANG_H_
 49 #define _NCBILANG_H_
 50 
 51 #include <ncbistd.h>
 52 
 53 #undef NLM_EXTERN
 54 #ifdef NLM_IMPORT
 55 #define NLM_EXTERN NLM_IMPORT
 56 #else
 57 #define NLM_EXTERN extern
 58 #endif
 59 
 60 #ifdef __cplusplus
 61 extern "C" {
 62 #endif
 63 
 64 enum _Nlm_langEnum {
 65   LangUninit = -1,
 66   LangSystem,
 67   LangEnglish,
 68   LangJapanese,
 69   LangFrench,
 70   LangGerman,
 71   LangItalian,
 72   LangUnknown
 73 };
 74 typedef enum _Nlm_langEnum Nlm_LangEnum;
 75 
 76 /* what language is used on this system ? */
 77 NLM_EXTERN Nlm_LangEnum Nlm_GetLanguage PROTO((void));
 78 
 79 #define IsSystemLang()  (LangSystem   == Nlm_GetLanguage() ? TRUE : FALSE)
 80 #define IsEnglish()     (LangEnglish  == Nlm_GetLanguage() ? TRUE : FALSE)
 81 #define IsJapanese()    (LangJapanese == Nlm_GetLanguage() ? TRUE : FALSE)
 82 #define IsFrench()      (LangFrench   == Nlm_GetLanguage() ? TRUE : FALSE)
 83 #define IsGerman()      (LangGerman   == Nlm_GetLanguage() ? TRUE : FALSE)
 84 #define IsItalian()     (LangItalian  == Nlm_GetLanguage() ? TRUE : FALSE)
 85 
 86 /* how much bytes for the next letter ? */
 87 /* NULL or "" -> return 0 */
 88 /* illegal code -> return 1 to avoid infinite loop. */
 89 NLM_EXTERN int Nlm_LetterByte PROTO((const char* str));
 90 
 91 /* is the next letter muti-byte one ? */
 92 #define IsMBLetter(str) (1 < Nlm_LetterByte(str) ? TRUE : FALSE)
 93 
 94 #ifdef __cplusplus
 95 }
 96 #endif
 97 
 98 #undef NLM_EXTERN
 99 #ifdef NLM_EXPORT
100 #define NLM_EXTERN NLM_EXPORT
101 #else
102 #define NLM_EXTERN
103 #endif
104 
105 #endif /*_NCBILANG_H_*/
106 

source navigation ]   [ diff markup ]   [ identifier search ]   [ freetext search ]   [ file search ]  

This page was automatically generated by the LXR engine.
Visit the LXR main site for more information.