Lines Matching refs:success
145 LEErrorCode &success)
149 if (LE_FAILURE(success)) {
155 success = LE_MEMORY_ALLOCATION_ERROR;
164 void LayoutEngine::getCharIndices(le_int32 charIndices[], le_int32 indexBase, LEErrorCode &success) const
166 fGlyphStorage->getCharIndices(charIndices, indexBase, success);
169 void LayoutEngine::getCharIndices(le_int32 charIndices[], LEErrorCode &success) const
171 fGlyphStorage->getCharIndices(charIndices, success);
175 void LayoutEngine::getGlyphs(le_uint32 glyphs[], le_uint32 extraBits, LEErrorCode &success) const
177 fGlyphStorage->getGlyphs(glyphs, extraBits, success);
180 void LayoutEngine::getGlyphs(LEGlyphID glyphs[], LEErrorCode &success) const
182 fGlyphStorage->getGlyphs(glyphs, success);
186 void LayoutEngine::getGlyphPositions(float positions[], LEErrorCode &success) const
188 fGlyphStorage->getGlyphPositions(positions, success);
191 void LayoutEngine::getGlyphPosition(le_int32 glyphIndex, float &x, float &y, LEErrorCode &success) const
193 fGlyphStorage->getGlyphPosition(glyphIndex, x, y, success);
197 LEUnicode *&outChars, LEGlyphStorage &glyphStorage, LEErrorCode &success)
199 if (LE_FAILURE(success)) {
204 success = LE_ILLEGAL_ARGUMENT_ERROR;
216 success = LE_MEMORY_ALLOCATION_ERROR;
224 fakeGlyphStorage.allocateGlyphArray(count, rightToLeft, success);
226 if (LE_FAILURE(success)) {
239 success = LE_MEMORY_ALLOCATION_ERROR;
247 fakeGlyphStorage.allocateAuxData(success);
249 if (LE_FAILURE(success)) {
261 fakeGlyphStorage.setAuxData(out, canonFeatures, success);
268 outCharCount = canonGSUBTable->process(fakeGlyphStorage, rightToLeft, scriptTag, langSysTag, NULL, substitutionFilter, canonFeatureMap, canonFeatureMapCount, FALSE, success);
270 if (LE_FAILURE(success)) {
289 success = LE_MEMORY_ALLOCATION_ERROR;
304 LEGlyphStorage &glyphStorage, LEErrorCode &success)
306 if (LE_FAILURE(success)) {
311 success = LE_ILLEGAL_ARGUMENT_ERROR;
316 le_int32 outCharCount = characterProcessing(chars, offset, count, max, rightToLeft, outChars, glyphStorage, success);
319 mapCharsToGlyphs(outChars, 0, outCharCount, rightToLeft, rightToLeft, glyphStorage, success);
322 mapCharsToGlyphs(chars, offset, count, rightToLeft, rightToLeft, glyphStorage, success);
330 void LayoutEngine::positionGlyphs(LEGlyphStorage &glyphStorage, float x, float y, LEErrorCode &success)
332 if (LE_FAILURE(success)) {
336 glyphStorage.allocatePositions(success);
338 if (LE_FAILURE(success)) {
347 glyphStorage.setPosition(i, x, y, success);
354 glyphStorage.setPosition(glyphCount, x, y, success);
358 LEGlyphStorage &glyphStorage, LEErrorCode &success)
360 if (LE_FAILURE(success)) {
365 success = LE_ILLEGAL_ARGUMENT_ERROR;
372 adjustMarkGlyphs(&chars[offset], count, reverse, glyphStorage, &filter, success);
385 void LayoutEngine::adjustMarkGlyphs(LEGlyphStorage &glyphStorage, LEGlyphFilter *markFilter, LEErrorCode &success)
390 if (LE_FAILURE(success)) {
395 success = LE_ILLEGAL_ARGUMENT_ERROR;
401 glyphStorage.getGlyphPosition(0, prev, ignore, success);
406 glyphStorage.getGlyphPosition(p + 1, next, ignore, success);
409 glyphStorage.adjustPosition(p, xAdjust, 0, success);
418 glyphStorage.adjustPosition(glyphCount, xAdjust, 0, success);
421 void LayoutEngine::adjustMarkGlyphs(const LEUnicode chars[], le_int32 charCount, le_bool reverse, LEGlyphStorage &glyphStorage, LEGlyphFilter *markFilter, LEErrorCode &success)
427 if (LE_FAILURE(success)) {
432 success = LE_ILLEGAL_ARGUMENT_ERROR;
443 glyphStorage.getGlyphPosition(0, prev, ignore, success);
448 glyphStorage.getGlyphPosition(p + 1, next, ignore, success);
451 glyphStorage.adjustPosition(p, xAdjust, 0, success);
460 glyphStorage.adjustPosition(glyphCount, xAdjust, 0, success);
469 LEGlyphStorage &glyphStorage, LEErrorCode &success)
471 if (LE_FAILURE(success)) {
475 glyphStorage.allocateGlyphArray(count, reverse, success);
486 float x, float y, LEErrorCode &success)
488 if (LE_FAILURE(success)) {
493 success = LE_ILLEGAL_ARGUMENT_ERROR;
503 glyphCount = computeGlyphs(chars, offset, count, max, rightToLeft, *fGlyphStorage, success);
504 positionGlyphs(*fGlyphStorage, x, y, success);
505 adjustGlyphPositions(chars, offset, count, rightToLeft, *fGlyphStorage, success);
515 LayoutEngine *LayoutEngine::layoutEngineFactory(const LEFontInstance *fontInstance, le_int32 scriptCode, le_int32 languageCode, LEErrorCode &success)
518 return LayoutEngine::layoutEngineFactory(fontInstance, scriptCode, languageCode, 3, success);
521 LayoutEngine *LayoutEngine::layoutEngineFactory(const LEFontInstance *fontInstance, le_int32 scriptCode, le_int32 languageCode, le_int32 typoFlags, LEErrorCode &success)
527 if (LE_FAILURE(success)) {
541 result = new IndicOpenTypeLayoutEngine(fontInstance, scriptCode, languageCode, typoFlags, TRUE, gsubTable, success);
555 result = new IndicOpenTypeLayoutEngine(fontInstance, scriptCode, languageCode, typoFlags, FALSE, gsubTable, success);
559 result = new ArabicOpenTypeLayoutEngine(fontInstance, scriptCode, languageCode, typoFlags, gsubTable, success);
564 result = new OpenTypeLayoutEngine(fontInstance, scriptCode, languageCode, typoFlags & ~kTypoFlagLiga, gsubTable, success);
568 result = new HangulOpenTypeLayoutEngine(fontInstance, scriptCode, languageCode, typoFlags, gsubTable, success);
580 result = new HanOpenTypeLayoutEngine(fontInstance, scriptCode, languageCode, typoFlags, gsubTable, success);
586 result = new OpenTypeLayoutEngine(fontInstance, scriptCode, languageCode, typoFlags, gsubTable, success);
593 result = new TibetanOpenTypeLayoutEngine(fontInstance, scriptCode, languageCode, typoFlags, gsubTable, success);
597 result = new KhmerOpenTypeLayoutEngine(fontInstance, scriptCode, languageCode, typoFlags, gsubTable, success);
601 result = new OpenTypeLayoutEngine(fontInstance, scriptCode, languageCode, typoFlags, gsubTable, success);
607 result = new GXLayoutEngine2(fontInstance, scriptCode, languageCode, morxTable, typoFlags, success);
611 result = new GXLayoutEngine(fontInstance, scriptCode, languageCode, mortTable, success);
625 result = new IndicOpenTypeLayoutEngine(fontInstance, scriptCode, languageCode, typoFlags, success);
631 result = new UnicodeArabicOpenTypeLayoutEngine(fontInstance, scriptCode, languageCode, typoFlags, success);
638 result = new ThaiLayoutEngine(fontInstance, scriptCode, languageCode, typoFlags, success);
642 result = new HangulOpenTypeLayoutEngine(fontInstance, scriptCode, languageCode, typoFlags, success);
646 result = new LayoutEngine(fontInstance, scriptCode, languageCode, typoFlags, success);
653 if (result && LE_FAILURE(success)) {
659 success = LE_MEMORY_ALLOCATION_ERROR;