ICU 66.0.1  66.0.1
plruns.h
Go to the documentation of this file.
1 // © 2016 and later: Unicode, Inc. and others.
2 // License & terms of use: http://www.unicode.org/copyright.html
3 /*
4  *
5  * (C) Copyright IBM Corp. 1998-2011 - All Rights Reserved
6  *
7  */
8 
9 #ifndef __PLRUNS_H
10 #define __PLRUNS_H
11 
12 #include "unicode/utypes.h"
13 
14 #ifndef U_HIDE_INTERNAL_API
15 
16 #include "unicode/ubidi.h"
17 #include "layout/LETypes.h"
18 
19 #include "layout/loengine.h"
20 
25 typedef void pl_fontRuns;
30 typedef void pl_valueRuns;
35 typedef void pl_localeRuns;
36 
61 U_INTERNAL pl_fontRuns * U_EXPORT2
62 pl_openFontRuns(const le_font **fonts,
63  const le_int32 *limits,
64  le_int32 count);
65 
77 U_INTERNAL pl_fontRuns * U_EXPORT2
78 pl_openEmptyFontRuns(le_int32 initialCapacity);
79 
88 U_INTERNAL void U_EXPORT2
89 pl_closeFontRuns(pl_fontRuns *fontRuns);
90 
100 U_INTERNAL le_int32 U_EXPORT2
101 pl_getFontRunCount(const pl_fontRuns *fontRuns);
102 
110 U_INTERNAL void U_EXPORT2
111 pl_resetFontRuns(pl_fontRuns *fontRuns);
112 
123 U_INTERNAL le_int32 U_EXPORT2
124 pl_getFontRunLastLimit(const pl_fontRuns *fontRuns);
125 
136 U_INTERNAL le_int32 U_EXPORT2
137 pl_getFontRunLimit(const pl_fontRuns *fontRuns,
138  le_int32 run);
139 
152 U_INTERNAL const le_font * U_EXPORT2
153 pl_getFontRunFont(const pl_fontRuns *fontRuns,
154  le_int32 run);
155 
156 
175 U_INTERNAL le_int32 U_EXPORT2
176 pl_addFontRun(pl_fontRuns *fontRuns,
177  const le_font *font,
178  le_int32 limit);
179 
194 U_INTERNAL pl_valueRuns * U_EXPORT2
195 pl_openValueRuns(const le_int32 *values,
196  const le_int32 *limits,
197  le_int32 count);
198 
210 U_INTERNAL pl_valueRuns * U_EXPORT2
211 pl_openEmptyValueRuns(le_int32 initialCapacity);
212 
221 U_INTERNAL void U_EXPORT2
222 pl_closeValueRuns(pl_valueRuns *valueRuns);
223 
233 U_INTERNAL le_int32 U_EXPORT2
234 pl_getValueRunCount(const pl_valueRuns *valueRuns);
235 
243 U_INTERNAL void U_EXPORT2
244 pl_resetValueRuns(pl_valueRuns *valueRuns);
245 
256 U_INTERNAL le_int32 U_EXPORT2
257 pl_getValueRunLastLimit(const pl_valueRuns *valueRuns);
258 
269 U_INTERNAL le_int32 U_EXPORT2
270 pl_getValueRunLimit(const pl_valueRuns *valueRuns,
271  le_int32 run);
272 
285 U_INTERNAL le_int32 U_EXPORT2
286 pl_getValueRunValue(const pl_valueRuns *valueRuns,
287  le_int32 run);
288 
289 
307 U_INTERNAL le_int32 U_EXPORT2
308 pl_addValueRun(pl_valueRuns *valueRuns,
309  le_int32 value,
310  le_int32 limit);
311 
326 U_INTERNAL pl_localeRuns * U_EXPORT2
327 pl_openLocaleRuns(const char **locales,
328  const le_int32 *limits,
329  le_int32 count);
330 
342 U_INTERNAL pl_localeRuns * U_EXPORT2
343 pl_openEmptyLocaleRuns(le_int32 initialCapacity);
344 
353 U_INTERNAL void U_EXPORT2
354 pl_closeLocaleRuns(pl_localeRuns *localeRuns);
355 
365 U_INTERNAL le_int32 U_EXPORT2
366 pl_getLocaleRunCount(const pl_localeRuns *localeRuns);
367 
375 U_INTERNAL void U_EXPORT2
376 pl_resetLocaleRuns(pl_localeRuns *localeRuns);
377 
388 U_INTERNAL le_int32 U_EXPORT2
389 pl_getLocaleRunLastLimit(const pl_localeRuns *localeRuns);
390 
401 U_INTERNAL le_int32 U_EXPORT2
402 pl_getLocaleRunLimit(const pl_localeRuns *localeRuns,
403  le_int32 run);
404 
417 U_INTERNAL const char * U_EXPORT2
418 pl_getLocaleRunLocale(const pl_localeRuns *localeRuns,
419  le_int32 run);
420 
421 
440 U_INTERNAL le_int32 U_EXPORT2
441 pl_addLocaleRun(pl_localeRuns *localeRuns,
442  const char *locale,
443  le_int32 limit);
444 
445 #endif /* U_HIDE_INTERNAL_API */
446 #endif
void pl_localeRuns
Opaque datatype representing an array of locale runs.
Definition: plruns.h:35
void pl_valueRuns
Opaque datatype representing an array of value runs.
Definition: plruns.h:30
le_int32 pl_addFontRun(pl_fontRuns *fontRuns, const le_font *font, le_int32 limit)
Add a new font run to the given pl_fontRuns object.
le_int32 pl_getFontRunLastLimit(const pl_fontRuns *fontRuns)
Get the limit index for the last font run.
C API: Bidi algorithm.
pl_fontRuns * pl_openFontRuns(const le_font **fonts, const le_int32 *limits, le_int32 count)
Construct a pl_fontRuns object from pre-existing arrays of fonts and limit indices.
le_int32 pl_addLocaleRun(pl_localeRuns *localeRuns, const char *locale, le_int32 limit)
Add a new run to the given pl_localeRuns object.
le_int32 pl_getLocaleRunCount(const pl_localeRuns *localeRuns)
Get the number of font runs.
#define U_INTERNAL
This is used to declare a function as an internal ICU C API.
Definition: umachine.h:119
void pl_resetFontRuns(pl_fontRuns *fontRuns)
Reset the number of font runs to zero.
le_int32 pl_getValueRunValue(const pl_valueRuns *valueRuns, le_int32 run)
Get the value assoicated with the given run * of text.
le_int32 pl_getValueRunLimit(const pl_valueRuns *valueRuns, le_int32 run)
Get the limit index for a particular value run.
le_int32 pl_getFontRunCount(const pl_fontRuns *fontRuns)
Get the number of font runs.
pl_valueRuns * pl_openValueRuns(const le_int32 *values, const le_int32 *limits, le_int32 count)
Construct a pl_valueRuns object from pre-existing arrays of values and limit indices.
void pl_resetValueRuns(pl_valueRuns *valueRuns)
Reset the number of value runs to zero.
const le_font * pl_getFontRunFont(const pl_fontRuns *fontRuns, le_int32 run)
Get the le_font object assoicated with the given run of text.
le_int32 pl_getLocaleRunLastLimit(const pl_localeRuns *localeRuns)
Get the limit index for the last font run.
pl_fontRuns * pl_openEmptyFontRuns(le_int32 initialCapacity)
Construct an empty pl_fontRuns object.
le_int32 pl_getValueRunCount(const pl_valueRuns *valueRuns)
Get the number of value runs.
pl_localeRuns * pl_openEmptyLocaleRuns(le_int32 initialCapacity)
Construct an empty pl_localeRuns object.
pl_localeRuns * pl_openLocaleRuns(const char **locales, const le_int32 *limits, le_int32 count)
Construct a pl_localeRuns object from pre-existing arrays of fonts and limit indices.
const char * pl_getLocaleRunLocale(const pl_localeRuns *localeRuns, le_int32 run)
Get the le_font object assoicated with the given run of text.
le_int32 pl_addValueRun(pl_valueRuns *valueRuns, le_int32 value, le_int32 limit)
Add a new font run to the given pl_valueRuns object.
void pl_closeFontRuns(pl_fontRuns *fontRuns)
Close the given pl_fontRuns object.
pl_valueRuns * pl_openEmptyValueRuns(le_int32 initialCapacity)
Construct an empty pl_valueRuns object.
le_int32 pl_getValueRunLastLimit(const pl_valueRuns *valueRuns)
Get the limit index for the last value run.
Basic definitions for ICU, for both C and C++ APIs.
void pl_fontRuns
Opaque datatype representing an array of font runs.
Definition: plruns.h:25
void pl_closeLocaleRuns(pl_localeRuns *localeRuns)
Close the given pl_localeRuns object.
le_int32 pl_getLocaleRunLimit(const pl_localeRuns *localeRuns, le_int32 run)
Get the limit index for a particular font run.
le_int32 pl_getFontRunLimit(const pl_fontRuns *fontRuns, le_int32 run)
Get the limit index for a particular font run.
void pl_resetLocaleRuns(pl_localeRuns *localeRuns)
Reset the number of locale runs to zero.
void pl_closeValueRuns(pl_valueRuns *valueRuns)
Close the given pl_valueRuns object.