- Main Page
- Modules
- Data Structures
- Files
- Related Pages

- Search for |

- File List
- Globals

# ushape.h

Go to the documentation of this file.

    00001 /*
    00002 ******************************************************************************
    00003 *
    00004 *   Copyright (C) 2000-2007, International Business Machines
    00005 *   Corporation and others.  All Rights Reserved.
    00006 *
    00007 ******************************************************************************
    00008 *   file name:  ushape.h
    00009 *   encoding:   US-ASCII
    00010 *   tab size:   8 (not used)
    00011 *   indentation:4
    00012 *
    00013 *   created on: 2000jun29
    00014 *   created by: Markus W. Scherer
    00015 */
    00016
    00017 #ifndef __USHAPE_H__
    00018 #define __USHAPE_H__
    00019
    00020 #include "unicode/utypes.h"
    00021
    00099 U_STABLE int32_t U_EXPORT2
    00100 u_shapeArabic(const UChar *source, int32_t sourceLength,
    00101               UChar *dest, int32_t destSize,
    00102               uint32_t options,
    00103               UErrorCode *pErrorCode);
    00104
    00109 #define U_SHAPE_LENGTH_GROW_SHRINK              0
    00110
    00116 #define U_SHAPE_LENGTH_FIXED_SPACES_NEAR        1
    00117
    00123 #define U_SHAPE_LENGTH_FIXED_SPACES_AT_END      2
    00124
    00130 #define U_SHAPE_LENGTH_FIXED_SPACES_AT_BEGINNING 3
    00131
    00133 #define U_SHAPE_LENGTH_MASK                     3
    00134
    00135
    00137 #define U_SHAPE_TEXT_DIRECTION_LOGICAL          0
    00138
    00145 #define U_SHAPE_TEXT_DIRECTION_VISUAL_LTR       4
    00146
    00148 #define U_SHAPE_TEXT_DIRECTION_MASK             4
    00149
    00150
    00152 #define U_SHAPE_LETTERS_NOOP                    0
    00153
    00155 #define U_SHAPE_LETTERS_SHAPE                   8
    00156
    00158 #define U_SHAPE_LETTERS_UNSHAPE                 0x10
    00159
    00167 #define U_SHAPE_LETTERS_SHAPE_TASHKEEL_ISOLATED 0x18
    00168
    00170 #define U_SHAPE_LETTERS_MASK                    0x18
    00171
    00172
    00174 #define U_SHAPE_DIGITS_NOOP                     0
    00175
    00181 #define U_SHAPE_DIGITS_EN2AN                    0x20
    00182
    00188 #define U_SHAPE_DIGITS_AN2EN                    0x40
    00189
    00201 #define U_SHAPE_DIGITS_ALEN2AN_INIT_LR          0x60
    00202
    00213 #define U_SHAPE_DIGITS_ALEN2AN_INIT_AL          0x80
    00214
    00216 #define U_SHAPE_DIGITS_RESERVED                 0xa0
    00217
    00219 #define U_SHAPE_DIGITS_MASK                     0xe0
    00220
    00221
    00223 #define U_SHAPE_DIGIT_TYPE_AN                   0
    00224
    00226 #define U_SHAPE_DIGIT_TYPE_AN_EXTENDED          0x100
    00227
    00229 #define U_SHAPE_DIGIT_TYPE_RESERVED             0x200
    00230
    00232 #define U_SHAPE_DIGIT_TYPE_MASK                 0x3f00
    00233
    00241 #define U_SHAPE_AGGREGATE_TASHKEEL              0x4000
    00242
    00243 #define U_SHAPE_AGGREGATE_TASHKEEL_NOOP         0
    00244
    00245 #define U_SHAPE_AGGREGATE_TASHKEEL_MASK         0x4000
    00246
    00253 #define U_SHAPE_PRESERVE_PRESENTATION           0x8000
    00254
    00259 #define U_SHAPE_PRESERVE_PRESENTATION_NOOP      0
    00260
    00261 #define U_SHAPE_PRESERVE_PRESENTATION_MASK      0x8000
    00262
    00263 #endif