ICU 73.2  73.2
plruns.h
Go to the documentation of this file.
00001 // © 2016 and later: Unicode, Inc. and others.
00002 // License & terms of use: http://www.unicode.org/copyright.html
00003 /*
00004  *
00005  * (C) Copyright IBM Corp. 1998-2011 - All Rights Reserved
00006  *
00007  */
00008 
00009 #ifndef __PLRUNS_H
00010 #define __PLRUNS_H
00011 
00012 #include "unicode/utypes.h"
00013 
00014 #ifndef U_HIDE_INTERNAL_API
00015 
00016 #include "unicode/ubidi.h"
00017 #include "layout/LETypes.h"
00018 
00019 #include "layout/loengine.h"
00020 
00025 typedef void pl_fontRuns;
00030 typedef void pl_valueRuns;
00035 typedef void pl_localeRuns;
00036 
00061 U_CAPI pl_fontRuns * U_EXPORT2
00062 pl_openFontRuns(const le_font **fonts,
00063                 const le_int32 *limits,
00064                 le_int32 count);
00065 
00077 U_CAPI pl_fontRuns * U_EXPORT2
00078 pl_openEmptyFontRuns(le_int32 initialCapacity);
00079 
00088 U_CAPI void U_EXPORT2
00089 pl_closeFontRuns(pl_fontRuns *fontRuns);
00090 
00100 U_CAPI le_int32 U_EXPORT2
00101 pl_getFontRunCount(const pl_fontRuns *fontRuns);
00102 
00110 U_CAPI void U_EXPORT2
00111 pl_resetFontRuns(pl_fontRuns *fontRuns);
00112 
00123 U_CAPI le_int32 U_EXPORT2
00124 pl_getFontRunLastLimit(const pl_fontRuns *fontRuns);
00125 
00136 U_CAPI le_int32 U_EXPORT2
00137 pl_getFontRunLimit(const pl_fontRuns *fontRuns,
00138                    le_int32 run);
00139 
00152 U_CAPI const le_font * U_EXPORT2
00153 pl_getFontRunFont(const pl_fontRuns *fontRuns,
00154                   le_int32 run);
00155 
00156 
00175 U_CAPI le_int32 U_EXPORT2
00176 pl_addFontRun(pl_fontRuns *fontRuns,
00177               const le_font *font,
00178               le_int32 limit);
00179 
00194 U_CAPI pl_valueRuns * U_EXPORT2
00195 pl_openValueRuns(const le_int32 *values,
00196                  const le_int32 *limits,
00197                  le_int32 count);
00198 
00210 U_CAPI pl_valueRuns * U_EXPORT2
00211 pl_openEmptyValueRuns(le_int32 initialCapacity);
00212 
00221 U_CAPI void U_EXPORT2
00222 pl_closeValueRuns(pl_valueRuns *valueRuns);
00223 
00233 U_CAPI le_int32 U_EXPORT2
00234 pl_getValueRunCount(const pl_valueRuns *valueRuns);
00235 
00243 U_CAPI void U_EXPORT2
00244 pl_resetValueRuns(pl_valueRuns *valueRuns);
00245 
00256 U_CAPI le_int32 U_EXPORT2
00257 pl_getValueRunLastLimit(const pl_valueRuns *valueRuns);
00258 
00269 U_CAPI le_int32 U_EXPORT2
00270 pl_getValueRunLimit(const pl_valueRuns *valueRuns,
00271                      le_int32 run);
00272 
00285 U_CAPI le_int32 U_EXPORT2
00286 pl_getValueRunValue(const pl_valueRuns *valueRuns,
00287                     le_int32 run);
00288 
00289 
00307 U_CAPI le_int32 U_EXPORT2
00308 pl_addValueRun(pl_valueRuns *valueRuns,
00309                le_int32 value,
00310                le_int32 limit);
00311 
00326 U_CAPI pl_localeRuns * U_EXPORT2
00327 pl_openLocaleRuns(const char **locales,
00328                   const le_int32 *limits,
00329                   le_int32 count);
00330 
00342 U_CAPI pl_localeRuns * U_EXPORT2
00343 pl_openEmptyLocaleRuns(le_int32 initialCapacity);
00344 
00353 U_CAPI void U_EXPORT2
00354 pl_closeLocaleRuns(pl_localeRuns *localeRuns);
00355 
00365 U_CAPI le_int32 U_EXPORT2
00366 pl_getLocaleRunCount(const pl_localeRuns *localeRuns);
00367 
00375 U_CAPI void U_EXPORT2
00376 pl_resetLocaleRuns(pl_localeRuns *localeRuns);
00377 
00388 U_CAPI le_int32 U_EXPORT2
00389 pl_getLocaleRunLastLimit(const pl_localeRuns *localeRuns);
00390 
00401 U_CAPI le_int32 U_EXPORT2
00402 pl_getLocaleRunLimit(const pl_localeRuns *localeRuns,
00403                      le_int32 run);
00404 
00417 U_CAPI const char * U_EXPORT2
00418 pl_getLocaleRunLocale(const pl_localeRuns *localeRuns,
00419                       le_int32 run);
00420 
00421 
00440 U_CAPI le_int32 U_EXPORT2
00441 pl_addLocaleRun(pl_localeRuns *localeRuns,
00442                 const char *locale,
00443                 le_int32 limit);
00444 
00445 #endif  /* U_HIDE_INTERNAL_API */
00446 #endif