michael@0: /* michael@0: ******************************************************************************* michael@0: * michael@0: * Copyright (C) 1999-2008, International Business Machines michael@0: * Corporation and others. All Rights Reserved. michael@0: * michael@0: ******************************************************************************* michael@0: * file name: ucol_wgt.h michael@0: * encoding: US-ASCII michael@0: * tab size: 8 (not used) michael@0: * indentation:4 michael@0: * michael@0: * created on: 2001mar08 michael@0: * created by: Markus W. Scherer michael@0: */ michael@0: michael@0: #ifndef UCOL_WGT_H michael@0: #define UCOL_WGT_H michael@0: michael@0: #include "unicode/utypes.h" michael@0: michael@0: #if !UCONFIG_NO_COLLATION michael@0: michael@0: /* definitions for CE weights */ michael@0: michael@0: typedef struct WeightRange { michael@0: uint32_t start, end; michael@0: int32_t length, count; michael@0: int32_t length2; michael@0: uint32_t count2; michael@0: } WeightRange; michael@0: michael@0: /** michael@0: * Determine heuristically michael@0: * what ranges to use for a given number of weights between (excluding) michael@0: * two limits. michael@0: * michael@0: * @param lowerLimit A collation element weight; the ranges will be filled to cover michael@0: * weights greater than this one. michael@0: * @param upperLimit A collation element weight; the ranges will be filled to cover michael@0: * weights less than this one. michael@0: * @param n The number of collation element weights w necessary such that michael@0: * lowerLimit