ICU 49.1.1
49.1.1
|
00001 /* 00002 ******************************************************************************* 00003 * Copyright (C) 2000-2011, International Business Machines 00004 * Corporation and others. All Rights Reserved. 00005 ******************************************************************************* 00006 * 00007 * file name: uversion.h 00008 * encoding: US-ASCII 00009 * tab size: 8 (not used) 00010 * indentation:4 00011 * 00012 * Created by: Vladimir Weinstein 00013 * 00014 * Gets included by utypes.h and Windows .rc files 00015 */ 00016 00021 /*===========================================================================*/ 00022 /* Main ICU version information */ 00023 /*===========================================================================*/ 00024 00025 #ifndef UVERSION_H 00026 #define UVERSION_H 00027 00028 #include "unicode/umachine.h" 00029 00030 /* Actual version info lives in uvernum.h */ 00031 #include "unicode/uvernum.h" 00032 00036 #define U_COPYRIGHT_STRING_LENGTH 128 00037 00041 #define U_MAX_VERSION_LENGTH 4 00042 00046 #define U_VERSION_DELIMITER '.' 00047 00051 #define U_MAX_VERSION_STRING_LENGTH 20 00052 00057 typedef uint8_t UVersionInfo[U_MAX_VERSION_LENGTH]; 00058 00059 /*===========================================================================*/ 00060 /* C++ namespace if supported. Versioned unless versioning is disabled. */ 00061 /*===========================================================================*/ 00062 00106 /* Define namespace symbols if the compiler supports it. */ 00107 #ifdef __cplusplus 00108 # if U_DISABLE_RENAMING 00109 # define U_ICU_NAMESPACE icu 00110 namespace U_ICU_NAMESPACE { } 00111 # else 00112 # define U_ICU_NAMESPACE U_ICU_ENTRY_POINT_RENAME(icu) 00113 namespace U_ICU_NAMESPACE { } 00114 namespace icu = U_ICU_NAMESPACE; 00115 # endif 00116 00117 # define U_NAMESPACE_BEGIN extern "C++" { namespace U_ICU_NAMESPACE { 00118 # define U_NAMESPACE_END } } 00119 # define U_NAMESPACE_USE using namespace U_ICU_NAMESPACE; 00120 # define U_NAMESPACE_QUALIFIER U_ICU_NAMESPACE:: 00121 00122 # ifndef U_USING_ICU_NAMESPACE 00123 # define U_USING_ICU_NAMESPACE 1 00124 # endif 00125 # if U_USING_ICU_NAMESPACE 00126 U_NAMESPACE_USE 00127 # endif 00128 #else 00129 # define U_NAMESPACE_BEGIN 00130 # define U_NAMESPACE_END 00131 # define U_NAMESPACE_USE 00132 # define U_NAMESPACE_QUALIFIER 00133 #endif 00134 00135 /*===========================================================================*/ 00136 /* General version helper functions. Definitions in putil.c */ 00137 /*===========================================================================*/ 00138 00150 U_STABLE void U_EXPORT2 00151 u_versionFromString(UVersionInfo versionArray, const char *versionString); 00152 00164 U_STABLE void U_EXPORT2 00165 u_versionFromUString(UVersionInfo versionArray, const UChar *versionString); 00166 00167 00180 U_STABLE void U_EXPORT2 00181 u_versionToString(const UVersionInfo versionArray, char *versionString); 00182 00191 U_STABLE void U_EXPORT2 00192 u_getVersion(UVersionInfo versionArray); 00193 #endif