ICU 59.1  59.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 
24 typedef void pl_fontRuns;
28 typedef void pl_valueRuns;
32 typedef void pl_localeRuns;
33 
58 U_INTERNAL pl_fontRuns * U_EXPORT2
59 pl_openFontRuns(const le_font **fonts,
60  const le_int32 *limits,
61  le_int32 count);
62 
74 U_INTERNAL pl_fontRuns * U_EXPORT2
75 pl_openEmptyFontRuns(le_int32 initialCapacity);
76 
85 U_INTERNAL void U_EXPORT2
86 pl_closeFontRuns(pl_fontRuns *fontRuns);
87 
97 U_INTERNAL le_int32 U_EXPORT2
98 pl_getFontRunCount(const pl_fontRuns *fontRuns);
99 
107 U_INTERNAL void U_EXPORT2
108 pl_resetFontRuns(pl_fontRuns *fontRuns);
109 
120 U_INTERNAL le_int32 U_EXPORT2
121 pl_getFontRunLastLimit(const pl_fontRuns *fontRuns);
122 
133 U_INTERNAL le_int32 U_EXPORT2
134 pl_getFontRunLimit(const pl_fontRuns *fontRuns,
135  le_int32 run);
136 
149 U_INTERNAL const le_font * U_EXPORT2
150 pl_getFontRunFont(const pl_fontRuns *fontRuns,
151  le_int32 run);
152 
153 
172 U_INTERNAL le_int32 U_EXPORT2
173 pl_addFontRun(pl_fontRuns *fontRuns,
174  const le_font *font,
175  le_int32 limit);
176 
191 U_INTERNAL pl_valueRuns * U_EXPORT2
192 pl_openValueRuns(const le_int32 *values,
193  const le_int32 *limits,
194  le_int32 count);
195 
207 U_INTERNAL pl_valueRuns * U_EXPORT2
208 pl_openEmptyValueRuns(le_int32 initialCapacity);
209 
218 U_INTERNAL void U_EXPORT2
219 pl_closeValueRuns(pl_valueRuns *valueRuns);
220 
230 U_INTERNAL le_int32 U_EXPORT2
231 pl_getValueRunCount(const pl_valueRuns *valueRuns);
232 
240 U_INTERNAL void U_EXPORT2
241 pl_resetValueRuns(pl_valueRuns *valueRuns);
242 
253 U_INTERNAL le_int32 U_EXPORT2
254 pl_getValueRunLastLimit(const pl_valueRuns *valueRuns);
255 
266 U_INTERNAL le_int32 U_EXPORT2
267 pl_getValueRunLimit(const pl_valueRuns *valueRuns,
268  le_int32 run);
269 
282 U_INTERNAL le_int32 U_EXPORT2
283 pl_getValueRunValue(const pl_valueRuns *valueRuns,
284  le_int32 run);
285 
286 
304 U_INTERNAL le_int32 U_EXPORT2
305 pl_addValueRun(pl_valueRuns *valueRuns,
306  le_int32 value,
307  le_int32 limit);
308 
323 U_INTERNAL pl_localeRuns * U_EXPORT2
324 pl_openLocaleRuns(const char **locales,
325  const le_int32 *limits,
326  le_int32 count);
327 
339 U_INTERNAL pl_localeRuns * U_EXPORT2
340 pl_openEmptyLocaleRuns(le_int32 initialCapacity);
341 
350 U_INTERNAL void U_EXPORT2
351 pl_closeLocaleRuns(pl_localeRuns *localeRuns);
352 
362 U_INTERNAL le_int32 U_EXPORT2
363 pl_getLocaleRunCount(const pl_localeRuns *localeRuns);
364 
372 U_INTERNAL void U_EXPORT2
373 pl_resetLocaleRuns(pl_localeRuns *localeRuns);
374 
385 U_INTERNAL le_int32 U_EXPORT2
386 pl_getLocaleRunLastLimit(const pl_localeRuns *localeRuns);
387 
398 U_INTERNAL le_int32 U_EXPORT2
399 pl_getLocaleRunLimit(const pl_localeRuns *localeRuns,
400  le_int32 run);
401 
414 U_INTERNAL const char * U_EXPORT2
415 pl_getLocaleRunLocale(const pl_localeRuns *localeRuns,
416  le_int32 run);
417 
418 
437 U_INTERNAL le_int32 U_EXPORT2
438 pl_addLocaleRun(pl_localeRuns *localeRuns,
439  const char *locale,
440  le_int32 limit);
441 
442 #endif /* U_HIDE_INTERNAL_API */
443 #endif
void pl_localeRuns
Opaque datatype representing an array of locale runs.
Definition: plruns.h:32
void pl_valueRuns
Opaque datatype representing an array of value runs.
Definition: plruns.h:28
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:24
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.