diff options
Diffstat (limited to 'Build/source/libs/icu/icu-4.4/test/perf/normperf/normperf.h')
-rw-r--r-- | Build/source/libs/icu/icu-4.4/test/perf/normperf/normperf.h | 353 |
1 files changed, 0 insertions, 353 deletions
diff --git a/Build/source/libs/icu/icu-4.4/test/perf/normperf/normperf.h b/Build/source/libs/icu/icu-4.4/test/perf/normperf/normperf.h deleted file mode 100644 index 6a43a7727be..00000000000 --- a/Build/source/libs/icu/icu-4.4/test/perf/normperf/normperf.h +++ /dev/null @@ -1,353 +0,0 @@ -/* -********************************************************************** -* Copyright (c) 2002-2006, International Business Machines -* Corporation and others. All Rights Reserved. -********************************************************************** -********************************************************************** -*/ -#ifndef _NORMPERF_H -#define _NORMPERF_H - -#include "unicode/unorm.h" -#include "unicode/ustring.h" - -#include "unicode/uperf.h" -#include <stdlib.h> - -// Stubs for Windows API functions when building on UNIXes. -// -#if defined(U_WINDOWS) -// do nothing -#else -#define _UNICODE -typedef int DWORD; -inline int FoldStringW(DWORD dwMapFlags, const UChar* lpSrcStr,int cchSrc, UChar* lpDestStr,int cchDest); -#endif - -#define DEST_BUFFER_CAPACITY 6000 -typedef int32_t (*NormFn)(const UChar* src,int32_t srcLen, UChar* dest,int32_t dstLen, int32_t options, UErrorCode* status); -typedef int32_t (*QuickCheckFn)(const UChar* src,int32_t srcLen, UNormalizationMode mode, int32_t options, UErrorCode* status); - -class QuickCheckPerfFunction : public UPerfFunction{ -private: - ULine* lines; - int32_t numLines; - QuickCheckFn fn; - UNormalizationMode mode; - int32_t retVal; - UBool uselen; - const UChar* src; - int32_t srcLen; - UBool line_mode; - int32_t options; - -public: - virtual void call(UErrorCode* status){ - if(line_mode==TRUE){ - if(uselen){ - for(int32_t i = 0; i< numLines; i++){ - retVal = (*fn)(lines[i].name,lines[i].len,mode, options, status); - } - }else{ - for(int32_t i = 0; i< numLines; i++){ - retVal = (*fn)(lines[i].name,-1,mode, options, status); - } - } - }else{ - if(uselen){ - - retVal = (*fn)(src,srcLen,mode, options, status); - }else{ - retVal = (*fn)(src,-1,mode, options, status); - } - } - - } - virtual long getOperationsPerIteration(){ - if(line_mode==TRUE){ - int32_t totalChars=0; - for(int32_t i =0; i< numLines; i++){ - totalChars+= lines[i].len; - } - return totalChars; - }else{ - return srcLen; - } - } - QuickCheckPerfFunction(QuickCheckFn func, ULine* srcLines,int32_t srcNumLines, UNormalizationMode _mode, int32_t opts, UBool _uselen) : options(opts) { - fn = func; - lines = srcLines; - numLines = srcNumLines; - uselen = _uselen; - mode = _mode; - src = NULL; - srcLen = 0; - line_mode = TRUE; - } - QuickCheckPerfFunction(QuickCheckFn func, const UChar* source,int32_t sourceLen, UNormalizationMode _mode, int32_t opts, UBool _uselen) : options(opts) { - fn = func; - lines = NULL; - numLines = 0; - uselen = _uselen; - mode = _mode; - src = source; - srcLen = sourceLen; - line_mode = FALSE; - } -}; - - -class NormPerfFunction : public UPerfFunction{ -private: - ULine* lines; - int32_t numLines; - UChar dest[DEST_BUFFER_CAPACITY]; - UChar* pDest; - int32_t destLen; - NormFn fn; - int32_t retVal; - UBool uselen; - const UChar* src; - int32_t srcLen; - UBool line_mode; - int32_t options; - -public: - virtual void call(UErrorCode* status){ - if(line_mode==TRUE){ - if(uselen){ - for(int32_t i = 0; i< numLines; i++){ - retVal = (*fn)(lines[i].name,lines[i].len,pDest,destLen, options, status); - } - }else{ - for(int32_t i = 0; i< numLines; i++){ - retVal = (*fn)(lines[i].name,-1,pDest,destLen, options, status); - } - } - }else{ - if(uselen){ - retVal = (*fn)(src,srcLen,pDest,destLen, options, status); - }else{ - retVal = (*fn)(src,-1,pDest,destLen, options, status); - } - } - } - virtual long getOperationsPerIteration(){ - if(line_mode ==TRUE){ - int32_t totalChars=0; - for(int32_t i =0; i< numLines; i++){ - totalChars+= lines[i].len; - } - return totalChars; - }else{ - return srcLen; - } - } - NormPerfFunction(NormFn func, int32_t opts, ULine* srcLines,int32_t srcNumLines,UBool _uselen) : options(opts) { - fn = func; - lines = srcLines; - numLines = srcNumLines; - uselen = _uselen; - destLen = DEST_BUFFER_CAPACITY; - pDest = dest; - src = NULL; - srcLen = 0; - line_mode = TRUE; - } - NormPerfFunction(NormFn func, int32_t opts, const UChar* source,int32_t sourceLen,UBool _uselen) : options(opts) { - fn = func; - lines = NULL; - numLines = 0; - uselen = _uselen; - destLen = sourceLen*3; - pDest = (UChar*) malloc(destLen * U_SIZEOF_UCHAR); - src = source; - srcLen = sourceLen; - line_mode = FALSE; - } - ~NormPerfFunction(){ - if(dest != pDest){ - free(pDest); - } - } -}; - - - -class NormalizerPerformanceTest : public UPerfTest{ -private: - ULine* NFDFileLines; - ULine* NFCFileLines; - UChar* NFDBuffer; - UChar* NFCBuffer; - UChar* origBuffer; - int32_t origBufferLen; - int32_t NFDBufferLen; - int32_t NFCBufferLen; - int32_t options; - - void normalizeInput(ULine* dest,const UChar* src ,int32_t srcLen,UNormalizationMode mode, int32_t options); - UChar* normalizeInput(int32_t& len, const UChar* src ,int32_t srcLen,UNormalizationMode mode, int32_t options); - -public: - - NormalizerPerformanceTest(int32_t argc, const char* argv[], UErrorCode& status); - ~NormalizerPerformanceTest(); - virtual UPerfFunction* runIndexedTest(int32_t index, UBool exec,const char* &name, char* par = NULL); - /* NFC performance */ - UPerfFunction* TestICU_NFC_NFD_Text(); - UPerfFunction* TestICU_NFC_NFC_Text(); - UPerfFunction* TestICU_NFC_Orig_Text(); - - /* NFD performance */ - UPerfFunction* TestICU_NFD_NFD_Text(); - UPerfFunction* TestICU_NFD_NFC_Text(); - UPerfFunction* TestICU_NFD_Orig_Text(); - - /* FCD performance */ - UPerfFunction* TestICU_FCD_NFD_Text(); - UPerfFunction* TestICU_FCD_NFC_Text(); - UPerfFunction* TestICU_FCD_Orig_Text(); - - /*Win NFC performance */ - UPerfFunction* TestWin_NFC_NFD_Text(); - UPerfFunction* TestWin_NFC_NFC_Text(); - UPerfFunction* TestWin_NFC_Orig_Text(); - - /* Win NFD performance */ - UPerfFunction* TestWin_NFD_NFD_Text(); - UPerfFunction* TestWin_NFD_NFC_Text(); - UPerfFunction* TestWin_NFD_Orig_Text(); - - /* Quick check performance */ - UPerfFunction* TestQC_NFC_NFD_Text(); - UPerfFunction* TestQC_NFC_NFC_Text(); - UPerfFunction* TestQC_NFC_Orig_Text(); - - UPerfFunction* TestQC_NFD_NFD_Text(); - UPerfFunction* TestQC_NFD_NFC_Text(); - UPerfFunction* TestQC_NFD_Orig_Text(); - - UPerfFunction* TestQC_FCD_NFD_Text(); - UPerfFunction* TestQC_FCD_NFC_Text(); - UPerfFunction* TestQC_FCD_Orig_Text(); - - /* IsNormalized performnace */ - UPerfFunction* TestIsNormalized_NFC_NFD_Text(); - UPerfFunction* TestIsNormalized_NFC_NFC_Text(); - UPerfFunction* TestIsNormalized_NFC_Orig_Text(); - - UPerfFunction* TestIsNormalized_NFD_NFD_Text(); - UPerfFunction* TestIsNormalized_NFD_NFC_Text(); - UPerfFunction* TestIsNormalized_NFD_Orig_Text(); - - UPerfFunction* TestIsNormalized_FCD_NFD_Text(); - UPerfFunction* TestIsNormalized_FCD_NFC_Text(); - UPerfFunction* TestIsNormalized_FCD_Orig_Text(); - -}; - -//--------------------------------------------------------------------------------------- -// Platform / ICU version specific proto-types -//--------------------------------------------------------------------------------------- - - -#if (U_ICU_VERSION_MAJOR_NUM > 1 ) || ((U_ICU_VERSION_MAJOR_NUM == 1 )&&(U_ICU_VERSION_MINOR_NUM > 8) && (U_ICU_VERSION_PATCHLEVEL_NUM >=1)) - -int32_t ICUNormNFD(const UChar* src, int32_t srcLen,UChar* dest, int32_t dstLen, int32_t options, UErrorCode* status) { - return unorm_normalize(src,srcLen,UNORM_NFD, options,dest,dstLen,status); -} - -int32_t ICUNormNFC(const UChar* src, int32_t srcLen,UChar* dest, int32_t dstLen, int32_t options, UErrorCode* status) { - return unorm_normalize(src,srcLen,UNORM_NFC, options,dest,dstLen,status); -} - -int32_t ICUNormNFKD(const UChar* src, int32_t srcLen,UChar* dest, int32_t dstLen, int32_t options, UErrorCode* status) { - return unorm_normalize(src,srcLen,UNORM_NFKD, options,dest,dstLen,status); -} -int32_t ICUNormNFKC(const UChar* src, int32_t srcLen,UChar* dest, int32_t dstLen, int32_t options, UErrorCode* status) { - return unorm_normalize(src,srcLen,UNORM_NFKC, options,dest,dstLen,status); -} - -int32_t ICUNormFCD(const UChar* src, int32_t srcLen,UChar* dest, int32_t dstLen, int32_t options, UErrorCode* status) { - return unorm_normalize(src,srcLen,UNORM_FCD, options,dest,dstLen,status); -} - -int32_t ICUQuickCheck(const UChar* src,int32_t srcLen, UNormalizationMode mode, int32_t options, UErrorCode* status){ -#if (U_ICU_VERSION_MAJOR_NUM > 2 ) || ((U_ICU_VERSION_MAJOR_NUM == 2 )&&(U_ICU_VERSION_MINOR_NUM >= 6)) - return unorm_quickCheckWithOptions(src,srcLen,mode, options, status); -#else - return unorm_quickCheck(src,srcLen,mode,status); -#endif -} -int32_t ICUIsNormalized(const UChar* src,int32_t srcLen, UNormalizationMode mode, int32_t options, UErrorCode* status){ - return unorm_isNormalized(src,srcLen,mode,status); -} - - -#else - -int32_t ICUNormNFD(const UChar* src, int32_t srcLen,UChar* dest, int32_t dstLen, int32_t options, UErrorCode* status) { - return unorm_normalize(src,srcLen,UCOL_DECOMP_CAN, options,dest,dstLen,status); -} - -int32_t ICUNormNFC(const UChar* src, int32_t srcLen,UChar* dest, int32_t dstLen, int32_t options, UErrorCode* status) { - return unorm_normalize(src,srcLen,UCOL_COMPOSE_CAN, options,dest,dstLen,status); -} - -int32_t ICUNormNFKD(const UChar* src, int32_t srcLen,UChar* dest, int32_t dstLen, int32_t options, UErrorCode* status) { - return unorm_normalize(src,srcLen,UCOL_DECOMP_COMPAT, options,dest,dstLen,status); -} -int32_t ICUNormNFKC(const UChar* src, int32_t srcLen,UChar* dest, int32_t dstLen, int32_t options, UErrorCode* status) { - return unorm_normalize(src,srcLen,UCOL_COMPOSE_COMPAT, options,dest,dstLen,status); -} - -int32_t ICUNormFCD(const UChar* src, int32_t srcLen,UChar* dest, int32_t dstLen, int32_t options, UErrorCode* status) { - return unorm_normalize(src,srcLen,UNORM_FCD, options,dest,dstLen,status); -} - -int32_t ICUQuickCheck(const UChar* src,int32_t srcLen, UNormalizationMode mode, int32_t options, UErrorCode* status){ - return unorm_quickCheck(src,srcLen,mode,status); -} - -int32_t ICUIsNormalized(const UChar* src,int32_t srcLen, UNormalizationMode mode, int32_t options, UErrorCode* status){ - return 0; -} -#endif - -#if defined(U_WINDOWS) - -int32_t WinNormNFD(const UChar* src, int32_t srcLen, UChar* dest, int32_t dstLen, int32_t options, UErrorCode* status) { - return FoldStringW(MAP_COMPOSITE,src,srcLen,dest,dstLen); -} - -int32_t WinNormNFC(const UChar* src, int32_t srcLen, UChar* dest, int32_t dstLen, int32_t options, UErrorCode* status) { - return FoldStringW(MAP_PRECOMPOSED,src,srcLen,dest,dstLen); -} - -int32_t WinNormNFKD(const UChar* src, int32_t srcLen, UChar* dest, int32_t dstLen, int32_t options, UErrorCode* status) { - return FoldStringW(MAP_COMPOSITE+MAP_FOLDCZONE,src,srcLen,dest,dstLen); -} -int32_t WinNormNFKC(const UChar* src, int32_t srcLen, UChar* dest, int32_t dstLen, int32_t options, UErrorCode* status) { - return FoldStringW(MAP_FOLDCZONE,src,srcLen,dest,dstLen); -} -#else -int32_t WinNormNFD(const UChar* src, int32_t srcLen, UChar* dest, int32_t dstLen, int32_t options, UErrorCode* status) { - return 0 ; -} - -int32_t WinNormNFC(const UChar* src, int32_t srcLen, UChar* dest, int32_t dstLen, int32_t options, UErrorCode* status) { - return 0; -} - -int32_t WinNormNFKD(const UChar* src, int32_t srcLen, UChar* dest, int32_t dstLen, int32_t options, UErrorCode* status) { - return 0; -} -int32_t WinNormNFKC(const UChar* src, int32_t srcLen, UChar* dest, int32_t dstLen, int32_t options, UErrorCode* status) { - return 0; -} -#endif - - -#endif // NORMPERF_H - |