14 #include "layout/LETypes.h"
15 #include "layout/LEFontInstance.h"
32 #define INITIAL_CAPACITY 16
40 #define CAPACITY_GROW_LIMIT 128
64 inline RunArray(
const le_int32 *limits, le_int32 count);
93 inline le_int32 getCount()
const;
113 inline le_int32 getLimit()
const;
124 inline le_int32 getLimit(le_int32 run)
const;
150 le_int32 add(le_int32 limit);
179 virtual void init(le_int32 capacity);
193 virtual void grow(le_int32 capacity);
211 static const char fgClassID;
213 le_int32 ensureCapacity();
219 const le_int32 *fLimits;
224 inline RunArray::RunArray()
225 : UObject(), fClientArrays(
FALSE), fLimits(
NULL), fCount(0), fCapacity(0)
230 inline RunArray::RunArray(
const RunArray & )
231 : UObject(), fClientArrays(
FALSE), fLimits(
NULL), fCount(0), fCapacity(0)
236 inline RunArray::RunArray(
const le_int32 *limits, le_int32 count)
237 :
UObject(), fClientArrays(
TRUE), fLimits(limits), fCount(count), fCapacity(count)
254 if (run < 0 || run >= fCount) {
290 inline FontRuns(
const LEFontInstance **fonts,
const le_int32 *limits, le_int32 count);
325 const LEFontInstance *getFont(le_int32 run)
const;
350 le_int32 add(
const LEFontInstance *font, le_int32 limit);
367 virtual void init(le_int32 capacity);
368 virtual void grow(le_int32 capacity);
380 static const char fgClassID;
382 const LEFontInstance **fFonts;
385 inline FontRuns::FontRuns()
386 : RunArray(0), fFonts(
NULL)
391 inline FontRuns::FontRuns(
const FontRuns & )
392 : RunArray(0), fFonts(
NULL)
397 inline FontRuns::FontRuns(
const LEFontInstance **fonts,
const le_int32 *limits, le_int32 count)
398 :
RunArray(limits, count), fFonts(fonts)
427 inline LocaleRuns(
const Locale **locales,
const le_int32 *limits, le_int32 count);
462 const Locale *getLocale(le_int32 run)
const;
487 le_int32 add(
const Locale *locale, le_int32 limit);
504 virtual void init(le_int32 capacity);
505 virtual void grow(le_int32 capacity);
522 static const char fgClassID;
525 inline LocaleRuns::LocaleRuns()
526 : RunArray(0), fLocales(
NULL)
531 inline LocaleRuns::LocaleRuns(
const LocaleRuns & )
532 : RunArray(0), fLocales(
NULL)
537 inline LocaleRuns::LocaleRuns(
const Locale **locales,
const le_int32 *limits, le_int32 count)
538 :
RunArray(limits, count), fLocales(locales)
565 inline ValueRuns(
const le_int32 *values,
const le_int32 *limits, le_int32 count);
600 le_int32 getValue(le_int32 run)
const;
624 le_int32 add(le_int32 value, le_int32 limit);
641 virtual void init(le_int32 capacity);
642 virtual void grow(le_int32 capacity);
654 static const char fgClassID;
656 const le_int32 *fValues;
659 inline ValueRuns::ValueRuns()
660 : RunArray(0), fValues(
NULL)
665 inline ValueRuns::ValueRuns(
const ValueRuns & )
666 : RunArray(0), fValues(
NULL)
671 inline ValueRuns::ValueRuns(
const le_int32 *values,
const le_int32 *limits, le_int32 count)
672 :
RunArray(limits, count), fValues(values)