Main Page   Modules   Compound List   File List   Compound Members   File Members  

sttypes.h

Go to the documentation of this file.
00001 /*
00002  * Copyright © 2003 Sun Microsystems, Inc.
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  *
00009  * 1. Redistributions of source code must retain the above copyright
00010  *    notice, this list of conditions and the following disclaimer.
00011  *
00012  * 2. Redistributions in binary form must reproduce the above copyright
00013  *    notice, this list of conditions and the following disclaimer in the
00014  *    documentation and/or other materials provided with the distribution.
00015  *
00016  * 3. Neither the name of Sun Microsystems, Inc. nor the names of 
00017  *    contributors may be used to endorse or promote products derived from
00018  *    this software without specific prior written permission.
00019  *
00020  * This software is provided "AS IS," without a warranty of any kind.
00021  *
00022  * ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES,
00023  * INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A
00024  * PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY EXCLUDED.
00025  * SUN AND ITS LICENSORS SHALL NOT BE LIABLE FOR ANY DAMAGES OR
00026  * LIABILITIES SUFFERED BY LICENSEE AS A RESULT OF OR RELATING TO USE,
00027  * MODIFICATION OR DISTRIBUTION OF THE SOFTWARE OR ITS DERIVATIVES.
00028  * IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE FOR ANY LOST REVENUE,
00029  * PROFIT OR DATA, OR FOR DIRECT, INDIRECT, SPECIAL, CONSEQUENTIAL,
00030  * INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED AND REGARDLESS OF THE
00031  * THEORY OF LIABILITY, ARISING OUT OF THE USE OF OR INABILITY TO USE
00032  * SOFTWARE, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
00033  *
00034  * You acknowledge that this software is not designed, licensed or intended
00035  * for use in the design, construction, operation or maintenance of any
00036  * nuclear facility.
00037  *
00038  */
00039 
00040 /* $Id$ */
00041 
00042 
00052 /* XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
00053  * ATTENTION!!!
00054  *
00055  * After 0.3 release all old-style #defines and enums with mixed capitalization
00056  * are deprecated and will be removed.
00057  *
00058  * XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
00059  */
00060 
00061 
00062 #ifndef __STTYPES_H
00063 #define __STTYPES_H
00064 
00065 /*
00066  * STSF Configuration Parameters and their default values.
00067  *
00068  */
00069 
00070 /*
00071  * GM_NBUCKETS                31991     STGlyphVector.c
00072  * Number of buckets in the client-side glyph vector metrics hash table.
00073  * It should be a prime number
00074  *
00075  * RM_NBUCKETS                3911      STGlyphVector.c
00076  * Number of buckets in the client-side glyph vector rendering properties hash table.
00077  * It should be a prime number
00078  *
00079  * DEFAULT_FONT_SIZE          N/A       STGlyphVector.c
00080  * Default font size if none is specified in STStyle object
00081  *
00082  * BITMAP_BUFFER_SIZE         N/A       STGlyphVector.c
00083  * Size of the buffer to rasterize glyphs into
00084  *
00085  * FI_CACHE_COUNT             N/A       fontmanager.c
00086  * Number of cached font instances. Font instances are cached after they are deallocted
00087  * (the user calls FontManagerDisposeFontInstance() but they are kept in the cache.
00088  * As soon as the number of deallocated font instances reaches FI_CACHE_COUNT,
00089  * they are removed from the cache.
00090  */
00091 
00092 #define GM_NBUCKETS 13
00093 #define RM_NBUCKETS 13
00094 #define DEFAULT_FONT_SIZE 12.0
00095 #define BITMAP_BUFFER_SIZE 131072
00096 #define FI_CACHE_COUNT 4000
00097 
00098 
00099 #include <sys/types.h>
00100 
00101 /*- XXX These should be dynamically configured */
00102 typedef unsigned char         byte;           
00103 typedef unsigned char         uint8;          
00104 typedef signed char           int8;           
00105 typedef unsigned short int    uint16;         
00106 typedef short int             int16;          
00107 typedef unsigned int          uint32;         
00108 typedef int                   int32;          
00109 /* typedef unsigned long long    uint64; */
00110 /* typedef long long             int64; */
00111 
00112 typedef uint32                ucs4;           
00113 typedef uint16                utf16;          
00114 typedef byte                  utf8;           
00116 typedef unsigned short CARD16;
00117 typedef unsigned char CARD8;
00118 typedef unsigned int CARD32;
00119 typedef double       CARD64;
00120 
00124 typedef struct {
00125     uint16 s;                          
00126     uint16 d;                          
00127 } uint16pair;
00128 
00129 
00130 
00132 typedef int32 F16Dot16;                 
00133 typedef int32 F24Dot8;                  
00134 typedef int16 F2Dot14;                  
00137 typedef F16Dot16 Fixed;                 
00142 typedef struct {
00143     F16Dot16 xx;            
00144     F16Dot16 xy;            
00145     F16Dot16 yx;            
00146     F16Dot16 yy;            
00147 } TMatrix;
00148 
00149 typedef TMatrix *TMatrixPtr;            
00154 typedef struct {
00155     F16Dot16 xx;            
00156     F16Dot16 xy;            
00157     F16Dot16 yx;            
00158     F16Dot16 yy;            
00159     F16Dot16 tx;            
00160     F16Dot16 ty;            
00161 } FMatrix;
00162 
00163 typedef FMatrix *FMatrixPtr;            
00169 typedef struct {
00170     F16Dot16 x;                         
00171     F16Dot16 y;                         
00172 } TPoint;
00173 
00176 typedef TPoint *TPointPtr;              
00179 typedef void * Pointer;       
00181 struct STOpaqueTypeEnv;
00182 struct STOpaqueText;
00183 struct STOpaqueLine;
00184 struct STOpaqueStyle;
00185 struct STOpaqueGlyphVector;
00186 
00187 typedef struct STOpaqueTypeEnv *STTypeEnv;              
00188 typedef struct STOpaqueText *STText;                        
00189 typedef struct STOpaqueGlyphVector *STGlyphVector;          
00190 typedef struct STOpaqueLine *STLine;                        
00191 typedef struct STOpaqueStyle *STStyle;                      
00193 typedef uint32 STObject;                        
00194 typedef uint32 STScaler;                        
00195 typedef uint32 STLayoutEngine;                  
00196 typedef void  *STPointer;
00197 
00198 
00199 /* STHandle is a generic handle data type the same size as a pointer */
00200 #ifdef _LP64
00201 typedef u_int64_t STHandle;
00202 #else
00203 typedef uint32 STHandle;
00204 #endif
00205 
00206 
00207 
00208 #define CScalerNotSet 0                 /* XXX DEPRECATED */
00209 
00210 #define ST_DEFAULT_SCALER 0                     
00233 typedef uint32 STTag;                   
00234 typedef uint32 STFont;                  
00235 typedef uint32 STFontFamily;            
00236 typedef uint32 SCScaler;                
00237 typedef uint32 STRGBAColor;             
00238 typedef int STDirection;                
00239 typedef int STJustification;            
00240 typedef double STFlushFactor;           
00242 typedef int STPosition;                 
00243 typedef int STCount;                    
00244 typedef int STCharCount;                
00246 #define ST_BEGINNING          0         
00247 #define ST_END                16777216  
00248 #define ST_ALL                16777216  
00251 typedef int STSize;                     
00252 typedef int STBoolean;                  
00253 typedef uint32 STMask;                  
00254 typedef uint16 STGlyph;                 
00255 #define STGLYPH_SIZE 16
00256 
00257 #if !defined(TRUE) || !defined(FALSE)
00258 #define TRUE ((STBoolean) (1 == 1))     
00259 #define FALSE ((STBoolean) (1 == 0))    
00260 #endif
00261 
00262 #if 0
00263 #define CFontNotSet 0                   
00264 #define CFontFamilyNotSet 0             
00265 #define CScalerNotSet 0                 
00266 #define CSizeNotSet -1.0                
00267 #define CFontFeaturesNotSet 0xFFFFFFFF  
00268 #define CToTextEnd -1                   
00269 #define CTextBeginning 0                
00270 #define CAllText -1                     
00271 #endif
00272 
00273 #define CWidthNotSet -1.0               
00280 #define ST_FROM_TEXT_BEGINNING  0   
00281 #define ST_TO_TEXT_END         -1   
00282 #define ST_ALL_TEXT            -1   
00306 typedef uint32 STStyleMask;
00307 #define ST_SM_FONTID          1           
00308 #define ST_SM_SIZE            (1 << 1)    
00309 #define ST_SM_LANGUAGE        (1 << 2)    
00310 #define ST_SM_BASELINE        (1 << 3)    
00311 #if 0
00312 #define ST_SM_FEATURE         (1 << 4)    
00313 #endif
00314 #define ST_SM_EFFECTS         (1 << 5)    
00315 #define ST_SM_STRIKETHROUGH   (1 << 6)    
00316 #define ST_SM_UNDERLINE       (1 << 7)    
00317 #define ST_SM_SCALER          (1 << 8)    
00318 #define ST_SM_HINTINGMODE     (1 << 9)    
00319 #define ST_SM_SBITSMODE       (1 << 10)   
00320 #define ST_SM_LAYOUTENGINE    (1 << 11)   
00321 #define ST_SM_ALL             0xFFFFFFFF  
00322 #define STMaxStyleBitMask  ST_SM_LAYOUTENGINE 
00335 typedef uint32 STGraphicsMask;
00336 #define ST_GM_DEVICE          1                   
00337 #define ST_GM_OUTPUTMODE      (1 << 1)            
00338 #define ST_GM_COLOR_TEXT      (1 << 2)            
00339 #define ST_GM_COLOR_HLTEXT    (1 << 3)            
00340 #define ST_GM_COLOR_HLBG      (1 << 4)            
00341 #define ST_GM_COLOR_ST        (1 << 5)            
00342 #define ST_GM_COLOR_HLST      (1 << 6)            
00343 #define ST_GM_COLOR_UL1       (1 << 7)            
00344 #define ST_GM_COLOR_HLUL1     (1 << 8)            
00345 #define ST_GM_COLOR_UL2       (1 << 9)            
00346 #define ST_GM_COLOR_HLUL2     (1 << 10)           
00347 #define ST_GM_ALL             0xFFFFFFFF          
00362 typedef uint32 STTextMask;
00363 #define ST_TM_DIRECTION       1           
00364 #define ST_TM_JUSTIFICATION   (1 << 1)    
00365 #define ST_TM_FLUSHFACTOR     (1 << 2)    
00366 #define ST_TM_LANGUAGE        (1 << 3)    
00367 #define ST_TM_FALLBACKPOLICY  (1 << 4)    
00368 #define ST_TM_LINEMETRICS     (1 << 5)    
00369 #define ST_TM_BASELINES       (1 << 6)    
00370 #define ST_TM_TEXTWIDTH       (1 << 7)    
00371 #define ST_TM_ALL             0xFFFFFFFF  
00384 typedef uint32 STStyleEffects;
00385 #define ST_SE_LIGATURESPLIT             1                   
00386 #define ST_SE_SLANTEDCARET              (1 << 1)            
00388 #define ST_SE_OPTALIGNMENT              (1 << 2)            
00390 #define ST_SE_NO_CROSSKERN              (1 << 3)            
00391 #define ST_SE_NO_KERN                   (1 << 4)            
00392 #define ST_SE_EMBOLDEN                  (1 << 5)            
00393 #define ST_SE_ITALICIZE                 (1 << 6)            
00394 #define ST_SE_CONDENSED                 (1 << 7)            
00395 #define ST_SE_EXTENDED                  (1 << 8)            
00396 #define ST_SE_VERTICALTEXT              (1 << 9)            
00397 #define ST_SE_FORCEHANGING              (1 << 10)           
00408 typedef uint32 STFontLocationsMask;
00409 #define ST_FL_SYSTEM                    1                   
00410 #define ST_FL_LOCAL                     (1 << 1)            
00411 #define ST_FL_USER                      (1 << 2)            
00426 typedef uint32 STStrikeThrough;
00427 #define ST_STRIKETHROUGH_SINGLE 1                 
00428 #define ST_STRIKETHROUGH_DOUBLE 2                 
00429 #define ST_STRIKETHROUGH_THICK  0x80000000        
00447 typedef uint32 STUnderline;
00448 #define ST_UNDERLINE_SINGLE   1         
00449 #define ST_UNDERLINE_DOT      (1 << 1)  
00450 #define ST_UNDERLINE_DASH     (1 << 2)  
00451 #define ST_UNDERLINE_LONGDASH (1 << 3)  
00452 #define ST_UNDERLINE_DOTDASH  (1 << 4)  
00453 #define ST_UNDERLINE_WAVE     (1 << 5)  
00454 #define ST_UNDERLINE_DOUBLE   (1 << 14) 
00455 #define ST_UNDERLINE_THICK    (1 << 15) 
00457 #define ST_COMBINE_UNDERLINE(first, second) ((second) << 16 | (first)) 
00470 typedef uint32 STOutputMode;  
00471 
00472 #define ST_OM_MASK          0x0000FFFF                 
00473 #define ST_OF_MASK          0xFFFF0000                 
00475 #define ST_OM_RASTER_MONO           1                          
00476 #define ST_OM_RASTER_GRAYSCALE      2                          
00477 #define ST_OM_RASTER_GREYSCALE      ST_OUTPUT_RASTER_GRAYSCALE 
00478 #define ST_OM_RASTER_LCD            3                          
00479 #define ST_OM_RASTER_TV             4                          
00480 #define ST_OM_VECTOR                32                         
00482 #define ST_OF_SUPPRESS_FRACTIONAL_METRICS 0x00010000           
00483 #define ST_OF_SUPPRESS_FRACTIONAL_DELTAS  0x00020000           
00484 #define ST_OF_HINT_OUTLINES 0x00040000                         
00496 typedef uint32 STHintingMode;
00497 #define ST_IGNORE_HINTS 1                 
00498 #define ST_APPLY_HINTS  2                 
00499 #define ST_AUTOHINT     3                 
00512 typedef uint32 STSbitsMode;
00513 #define ST_IGNORE_SBITS       1           
00514 #define ST_USE_SBITS          2           
00520 typedef struct {
00521     double hAscent;                               
00522     double hDescent;                              
00523     double hLeading;                              
00524     double vAscent;                               
00525     double vDescent;                              
00526     double vLeading;                              
00527     double italicAngle;                           
00528     double xMin;                                  
00529     double yMin;                                  
00530     double xMax;                                  
00531     double yMax;                                  
00532     int widthClass;                               
00533     int weightClass;                              
00534 } STFontMetrics;
00535 
00536 typedef STFontMetrics *STFontMetricsPtr;          
00542 typedef struct {
00543     double ascent;                                
00544     double descent;                               
00545     double leading;                               
00546 } STLineMetrics;
00547 
00548 typedef STLineMetrics *STLineMetricsPtr;          
00554 typedef struct {
00555     double ascent;                                
00556     double descent;                               
00557     double leading;                               
00558     double width;                                 
00559 } STExtLineMetrics;
00560 
00561 typedef STExtLineMetrics *STExtLineMetricsPtr;    
00566 typedef struct {
00567     uint16 platformID;                            
00568     uint16 encodingID;                            
00569     uint16 languageID;                            
00570     uint16 nameID;                                
00571 } STNameTag;
00572 
00573 typedef struct {
00574     uint32 numtags ;
00575     STNameTag t;
00576 } STNameTagsRec ;
00577 
00578 typedef STNameTag *STNameTagPtr;                  
00579 typedef STNameTagsRec *STNameTagsRecPtr;          
00585 typedef struct {
00586     uint16 platformID;                  
00587     uint16 encodingID;                  
00588     uint16 languageID;                  
00589     uint16 nameID;                      
00590     uint16 slen;                        
00591     byte  *sptr;                        
00592 } NameRecord;
00593 
00594 
00596 typedef uint32 STFontFeatureTag;
00597 
00601 typedef struct {
00602     F16Dot16 xAdvH;                   
00603     F16Dot16 yAdvH;                   
00604     F16Dot16 xAdvV;                   
00605     F16Dot16 yAdvV;                   
00606     F16Dot16 topH;                    
00607     F16Dot16 leftH;                   
00608     F16Dot16 topV;                    
00609     F16Dot16 leftV;                   
00610 } STGlyphMetrics;
00611 
00612 typedef struct {
00613     int16 xMin;
00614     int16 yMin;
00615     int16 xMax;
00616     int16 yMax;
00617 } FUnitBBox;
00618 
00619 typedef struct {
00620     int16 xMin;
00621     int16 yMin;
00622     int16 xMax;
00623     int16 yMax;
00624     uint16 aw;                       
00625     int16 lsb;                       
00626     uint16 ah;                       
00627     int16 tsb;                       
00628 } FUnitGlyphMetrics;
00629 
00633 typedef struct {
00634     double xh;                        
00635     double yh;                        
00636     double xv;                        
00637     double yv;                        
00638 } STKernData;
00639 
00643 typedef struct {
00644     double ax;                        
00645     double ay;                        
00646     double bx;                        
00647     double by;                        
00648 } STCaret;
00649 
00650 typedef STCaret *STCaretPtr;          
00655 typedef struct {
00656     double urx;                       
00657     double ury;                       
00658     double lrx;                       
00659     double lry;                       
00660     double ulx;                       
00661     double uly;                       
00662     double llx;                       
00663     double lly;                       
00664 } STTrapezoid;
00665 
00666 typedef STTrapezoid *STTrapezoidPtr;  
00671 typedef struct {
00672     double ax;                        
00673     double ay;                        
00674     double bx;                        
00675     double by;                        
00676 } STRectangle;
00677 
00678 typedef STRectangle *STRectanglePtr;  
00683 typedef struct {
00684     double x;                         
00685     double y;                         
00686 } STPoint;
00687 
00688 typedef STPoint *STPointPtr;          
00693 typedef struct {
00694     double x0;                        
00695     double y0;                        
00696     double x1;                        
00697     double y1;                        
00698     double x2;                        
00699     double y2;                        
00700     double x3;                        
00701     double y3;                        
00702 } STBezierCurve;
00703 
00707 typedef struct {
00708     double x0;                        
00709     double y0;                        
00710     double x1;                        
00711     double y1;                        
00712     double x2;                        
00713     double y2;                        
00714 } STBSpline;
00715 
00719 typedef struct {
00720     double x0;                        
00721     double y0;                        
00722     double x1;                        
00723     double y1;                        
00724 } STLineSeg;
00725 
00729 typedef enum {
00730     fBezierCurve,                     
00731     fBSpline,                         
00732     fLineSeg                          
00733 } STPathElement;
00734 
00738 typedef struct {
00739     int count;                        
00740     STPathElement *type;              
00741     void *element;                    
00742 } STPath;
00743     
00752 typedef struct {
00753     double xx;                        
00754     double xy;                        
00755     double yx;                        
00756     double yy;                        
00757     double tx;                        
00758     double ty;                        
00759 } STMatrix;
00760 
00761 typedef STMatrix *STMatrixPtr;        
00766 typedef struct {
00767     int n;                                
00768     uint32 c[256];                        
00769 } STLookupTable;
00770 
00771 typedef STLookupTable *STLookupTablePtr;  
00773 typedef struct {
00774     STGlyph id;                           
00775     STStyle style;                        
00776     STPoint pos;                          
00777 } STStyledGlyph;
00778 
00783 typedef double STBaselines[32];         
00790 typedef uint32 STBaselineFlag;
00791 #define ST_BASELINE_ROMAN 0                 
00792 #define ST_BASELINE_CENTERED 1              
00793 #define ST_BASELINE_HANGING 2               
00794 #define ST_BASELINE_LOWCENTERED 3           
00796 #define ST_BASELINE_MATH 4                  
00797 #define ST_BASELINE_LAST ST_BASELINE_MATH   
00804 typedef uint32 STBounds;
00805 #define ST_BOUNDS_CARET_ORIGINS 0       
00806 #define ST_BOUNDS_DEVICE_ORIGINS 1      
00807 #define ST_BOUNDS_FRACTIONAL_ORIGINS 2  
00814 typedef uint32 STFontFallbackPolicy;
00815 #define ST_FB_NOSUBSTITUTION 0                    
00816 #define ST_FB_USEFONTLIST 1                       
00817 #define ST_FB_SEARCHALL 2                         
00823 typedef int STCaretMovement;
00824 #define ST_CM_BYCHARACTER      0        
00825 #define ST_CM_BYWORD           1        
00826 #define ST_CM_BYUNICODECLUSTER 2        
00832 typedef int STCaretDirection;
00833 
00834 #define ST_CD_LEFT 0                    
00835 #define ST_CD_RIGHT 1                   
00836 #define ST_CD_PREVIOUS 2                
00837 #define ST_CD_NEXT 3                    
00843 typedef int STTextChanged;
00844 #define ST_TC_INSERTED 0                
00845 #define ST_TC_REMOVED 1                 
00846 #define ST_TC_REPLACED 2                
00852 typedef int STStyleComparison;
00853 #define ST_SC_EQUAL 0                   
00854 #define ST_SC_UNEQUAL 1                 
00855 #define ST_SC_SUBSET 2                  
00856 #define ST_SC_SUPERSET 3                
00862 typedef uint32 STLayoutOptions;
00863 #define ST_LO_GLYPHVECTOR               1         
00871 typedef int STFontType;
00872 #define ST_UNKNOWN_FONT 0                 
00873 #define ST_TRUETYPE 1                     
00874 #define ST_TYPE1 2                        
00875 #define ST_OPENTYPE_TTF 3                 
00876 #define ST_OPENTYPE_OTF 4                 
00877 #define ST_TRUETYPE_GX 5                  
00878 #define ST_EOT 6                          
00879 #define ST_T2K 7                          
00880 #define ST_PFR 8                          
00881 #define ST_INTELLIFONT 9                  
00882 #define ST_SPEEDO 10                      
00888 typedef uint32 STScalerFlags;
00889 #define ST_SF_SBITS          0x00000001           
00890 #define ST_SF_HINTS          0x00000002           
00891 #define ST_SF_AUTOHINTING    0x00000004           
00892 #define ST_SF_BITMAP         0x00000008           
00893 #define ST_SF_GRAYSCALE      0x00000010           
00894 #define ST_SF_LCDOPTIMIZED   0x00000020           
00895 #define ST_SF_EMBOLDEN       0x00000040           
00896 #define ST_SF_OBLIQUE        0x00000080           
00897 #define ST_SF_FRACDELTAS     0x00000100           
00899 typedef uint32 STLayoutEngineFlags;
00900 #define ST_LF_AAT             0x00000001          
00901 #define ST_LF_OPENTYPE        0x00000002          
00904 typedef unsigned int STFontServerFontType;        
00905 typedef unsigned int STFontServerFontMask;        
00907 #define ST_FT_UNKNOWN         0                             
00908 #define ST_FM_UNAVAILABLE     0xFFFFFFFF                    
00910 #define ST_FT_TRUETYPE        1                             
00911 #define ST_FM_TRUETYPE        (1 << (ST_FT_TRUETYPE - 1))   
00913 #define ST_FT_TTC             2                             
00914 #define ST_FM_TTC             (1 << (ST_FT_TTC - 1))        
00916 #define ST_FT_TYPE1           3                             
00917 #define ST_FM_TYPE1           (1 << (ST_FT_TYPE1 - 1))      
00919 #define ST_FT_OPENTYPE_TTF    4                             
00920 #define ST_FM_OPENTYPE_TTF    (1 << (ST_FT_OPENTYPE_TTF - 1)) 
00922 #define ST_FT_OPENTYPE_OTF    5                             
00923 #define ST_FM_OPENTYPE_OTF    (1 << (ST_FT_OPENTYPE_OTF - 1)) 
00925 #define ST_FT_TRUETYPE_GX     6                             
00926 #define ST_FM_TRUETYPE_GX     (1 << (ST_FT_TRUETYPE_GX - 1)) 
00928 #define ST_FT_EOT             7                             
00929 #define ST_FM_EOT             (1 << (ST_FT_EOT - 1))        
00931 #define ST_FT_T2K             8                             
00932 #define ST_FM_T2K             (1 << (ST_FT_T2K - 1))        
00934 #define ST_FT_PFR             9                             
00935 #define ST_FM_PFR             (1 << (ST_FT_PFR - 1))        
00937 #define ST_FT_INTELLIFONT     10                            
00938 #define ST_FM_INTELLIFONT     (1 << (ST_FT_INTELLIFONT - 1)) 
00940 #define ST_FT_SPEEDO          11                            
00941 #define ST_FM_SPEEDO          (1 << (ST_FT_SPEEDO - 1))     
00943 /* STFontServerFontType and STFontServerFontMask constants */
00944 #if 0
00945 #define fUnknown 0  /* XXX DEPRECATED */
00946 #define fNotAvailable 0xFFFFFFFF                  /* XXX DEPRECATED */
00947 
00948 #define fTrueType 1                               /* XXX DEPRECATED */
00949 #define mTrueType 0x00000001                      /* XXX DEPRECATED */
00950 
00951 #define fTrueTypeCollection 2                     /* XXX DEPRECATED */
00952 #define mTrueTypeCollection 0x00000002            /* XXX DEPRECATED */
00953 
00954 #define fType1 3                                  /* XXX DEPRECATED */
00955 #define mType1 0x00000004                         /* XXX DEPRECATED */
00956 
00957 #define fOpenTypeTTF 4                            /* XXX DEPRECATED */
00958 #define mOpenTypeTTF 0x00000008                   /* XXX DEPRECATED */
00959 
00960 #define fOpenTypeOTF 5                            /* XXX DEPRECATED */
00961 #define mOpenTypeOTF 0x00000010                   /* XXX DEPRECATED */
00962 
00963 #define fTrueTypeGX 6                             /* XXX DEPRECATED */
00964 #define mTrueTypeGX 0x000000020                   /* XXX DEPRECATED */
00965 
00966 #define fEOT 7                                    /* XXX DEPRECATED */
00967 #define mEOT 0x00000040                           /* XXX DEPRECATED */
00968 
00969 #define fT2K 8                                    /* XXX DEPRECATED */
00970 #define mT2K 0x00000080                           /* XXX DEPRECATED */
00971 
00972 #define fPFR 9                                    /* XXX DEPRECATED */
00973 #define mPFR 0x00000100                           /* XXX DEPRECATED */
00974 
00975 #define fIntelliFont 10                           /* XXX DEPRECATED */
00976 #define mIntelliFont 0x00000200                   /* XXX DEPRECATED */
00977 
00978 #define fSpeedo 11                                /* XXX DEPRECATED */
00979 #define mSpeedo 0x00000400                        /* XXX DEPRECATED */
00980 #endif
00981 
00986 typedef uint32 STFontInfoFlags;
00987 
00988 #define ST_FI_SBITS 1       
00989 #define ST_FI_KERN 2        
00994 typedef int STRenderingMode;
00995 #define ST_RM_INVALID 0           
00996 #define ST_RM_SIMPLEBITMAP 1      
00997 #define ST_RM_ALPHAMASK 2     
00998 #define ST_RM_LOOKUPTABLE 3       
01000 typedef struct {
01001     STRenderingMode mode;        
01002     int bitsPerPixel;            
01003     STLookupTable clut;          
01004 } STRenderingParams;
01005 
01009 typedef struct {
01010     STRenderingParams rparams;
01011     int x;                           
01012     int y;                           
01013     int w;                           
01014     int h;                           
01015     int sx;                          
01016     int sy;                          
01017     int bytesPerRow;                 
01018     int highlighted;                 
01019 } STBitBltRec;
01020 
01021 typedef STBitBltRec *STBitBltPtr;    
01026 typedef int STDeviceType;
01027 #define ST_DEVICE_RASTER 1                              
01028 #define ST_DEVICE_VECTOR 2                              
01034 typedef struct stdevice {
01035     STDeviceType devType;               
01036     STMatrix matrix;                                    
01037 } STDeviceStruct;
01038 
01039 typedef STDeviceStruct *STDevice;      
01043 struct STRasterDeviceStruct;
01044 struct STVectorDeviceStruct;
01045 
01061 typedef void (*BitBltF)(struct STRasterDeviceStruct *dev,   
01062             STBitBltPtr bbdata,
01063                         byte *source               
01064                        );
01065 
01074 typedef void (*HighlightF)(struct STRasterDeviceStruct *dev,
01075                STTrapezoid *trap,
01076                int depth,
01077                STRenderingMode mode
01078               );
01079 
01090 typedef void (*UnderlineF)(struct STRasterDeviceStruct *dev,
01091                STPoint p1,
01092                STPoint p2,
01093                int depth,
01094                STUnderline uleffects,
01095                STRenderingMode mode
01096               );
01097 
01108 typedef void (*StrikeThroughF)(struct STRasterDeviceStruct *dev,
01109                    STPoint p1,
01110                    STPoint p2,
01111                    int depth,
01112                    STStrikeThrough steffects,
01113                    STRenderingMode mode
01114                   );
01115 
01122 typedef void (*CopyOutlineF)(struct STVectorDeviceStruct *dev, 
01123                              STPath path);              
01124 
01128 struct STRasterDeviceStruct {
01129     STDeviceType devType;               
01130     STMatrix matrix;                    
01132     uint32 width;                       
01133     uint32 height;                      
01134     uint16 ppix;                        
01135     uint16 ppiy;                        
01136     uint16 bpp;                         
01138     void *p;                            
01140     BitBltF bitblt;                     
01141     HighlightF highlight;               
01142     UnderlineF underline;               
01143     StrikeThroughF strikethrough;       
01144 };
01145 
01146 typedef struct STRasterDeviceStruct *STRasterDevice; 
01152 struct STVectorDeviceStruct {
01153     STDeviceType devType;               
01154     STMatrix  matrix;                   
01156     uint16 ppix;                        
01157     uint16 ppiy;                        
01159     void *p;                            
01161     CopyOutlineF copyoutl;              
01162 };
01163 
01164 typedef struct STVectorDeviceStruct *STVectorDevice; 
01169 typedef struct stgraphics{
01170     STDevice dev;                            
01171     STOutputMode outputMode;                 
01172     STRGBAColor textColor;                   
01173     STRGBAColor highLightTextColor;          
01174     STRGBAColor highLightBackgroundColor;    
01175     STRGBAColor strikeThroughColor;          
01176     STRGBAColor highlightStrikeThroughColor; 
01177     STRGBAColor underlineColor;              
01178     STRGBAColor highlightUnderlineColor;     
01179     STRGBAColor underlineColor2;             
01180     STRGBAColor highlightUnderlineColor2;    
01181     STGraphicsMask attributesSet;            
01182 } STGraphicsStruct;
01183 
01184 typedef STGraphicsStruct *STGraphics;        
01186 #define F16DOT16_TO_INT(A)      ( (A) >> 16 )                
01187 #define F16DOT16_TO_FLOAT(A)            ( (A) / 65536.0 )            
01188 #define INT_TO_F16DOT16(A)      ( (A) << 16 )                
01189 #define FLOAT_TO_F16DOT16(A)        ( (F16Dot16) (A * 65536.0) ) 
01191 typedef uint32 STLocale;                          
01192 typedef uint32 STScriptVariant;                   
01193 typedef uint32 STLanguage;                        
01194 typedef uint32 STTerritory;                       
01196 typedef uint32 STScript;                          
01201 typedef uint16 STFontWeightClass;
01202 #define ST_WEIGHT_THIN 1             
01203 #define ST_WEIGHT_EXTRALIGHT 2       
01204 #define ST_WEIGHT_LIGHT 3            
01205 #define ST_WEIGHT_NORMAL 4           
01206 #define ST_WEIGHT_MEDIUM 5           
01207 #define ST_WEIGHT_SEMIBOLD 6         
01208 #define ST_WEIGHT_BOLD 7             
01209 #define ST_WEIGHT_EXTRABOLD 8        
01210 #define ST_WEIGHT_BLACK 9            
01211 #define ST_WEIGHT_UNKNOWN 10         
01216 typedef uint16 STFontWidthClass;
01217 #define ST_WIDTH_ULTRA_CONDENSED 1                
01218 #define ST_WIDTH_EXTRA_CONDENSED 2                
01219 #define ST_WIDTH_CONDENSED 3                      
01220 #define ST_WIDTH_SEMI_CONDENSED 4                 
01221 #define ST_WIDTH_NORMAL 5                         
01222 #define ST_WIDTH_SEMI_EXPANDED 6                  
01223 #define ST_WIDTH_EXPANDED 7                       
01224 #define ST_WIDTH_EXTRA_EXPANDED 8                 
01225 #define ST_WIDTH_ULTRA_EXPANDED 9                 
01226 #define ST_WIDTH_UNKNOWN 10                       
01233 typedef uint16 STFontStyle;
01234 #define ST_STYLE_NORMAL 1                         
01235 #define ST_STYLE_ITALIC 2                         
01236 #define ST_STYLE_OBLIQUE 3                        
01237 #define ST_STYLE_INCLINED 4                       
01238 #define ST_STYLE_SLANTED 5                        
01239 #define ST_STYLE_UNKNOWN 6                        
01242 #define ST_PLATFORM_ANY 0xFFFF                    
01243 #define ST_ENCODING_ANY 0xFFFF                    
01244 #define ST_LANGUAGE_ANY 0xFFFF                    
01245 #define ST_NAME_ANY 0xFFFF                        
01257 #define ST_SCALER_DUMMY                 0x444D4D59          
01258 #define ST_SCALER_FONTFUSION            0x46465553          
01259 #define ST_SCALER_FREETYPE1             0x46545931          
01260 #define ST_SCALER_FREETYPE2             0x46545932          
01261 #define ST_SCALER_XATM                  0x5841544D          
01262 #define ST_LAYOUTENGINE_ICU             0x49435530          
01265 /* TT contstants */
01266 
01270 #define TT_PLATFORM_UNICODE 0                     
01271 #define TT_PLATFORM_MACINTOSH 1                   
01272 #define TT_PLATFORM_ISO 2                         
01273 #define TT_PLATFORM_MICROSOFT 3                   
01274 #define TT_PLATFORM_CUSTOM 4                      
01276 #define TT_ENCODING_UNICODE_10 0                  
01277 #define TT_ENCODING_UNICODE_11 1                  
01278 #define TT_ENCODING_UNICODE_ISO10646 2            
01279 #define TT_ENCODING_UNICODE_20 3                  
01282 /* Microsoft platform-specific encoding IDs */
01283 
01284 #define TT_ENCODING_MS_SYMBOL 0                   
01285 #define TT_ENCODING_MS_UNICODE 1                  
01286 #define TT_ENCODING_MS_SHIFTJIS 2                 
01287 #define TT_ENCODING_MS_PRC 3                      
01288 #define TT_ENCODING_MS_BIG5 4                     
01289 #define TT_ENCODING_MS_WANSUNG 5                  
01290 #define TT_ENCODING_MS_JOHAB 6                    
01291 #define TT_ENCODING_MS_UCS4 10                    
01293 /* Name IDs */
01294 #define TT_NAME_COPYRIGHTNOTICE 0                 
01295 #define TT_NAME_FONTFAMILY 1                      
01296 #define TT_NAME_FONTSUBFAMILY 2                   
01297 #define TT_NAME_UNIQUEID 3                        
01298 #define TT_NAME_FULLFONTNAME 4                    
01299 #define TT_NAME_VERSIONSTRING 5                   
01300 #define TT_NAME_POSTSCRIPTNAME 6                  
01301 #define TT_NAME_TRADEMARK 7                       
01302 #define TT_NAME_MANUFACTURERNAME 8                
01303 #define TT_NAME_DESIGNERNAME 9                    
01304 #define TT_NAME_DESCRIPTION 10                    
01305 #define TT_NAME_VENDORURL 11                      
01306 #define TT_NAME_DESIGNERURL 12                    
01307 #define TT_NAME_LICENSEDESCRIPTION 13             
01308 #define TT_NAME_LICENSEINFOURL 14                 
01309 #define TT_NAME_PREFERREDFAMILY 16                
01310 #define TT_NAME_PREFERREDSUBFAMILY 17             
01311 #define TT_NAME_COMPATIBLEFULL 18                 
01312 #define TT_NAME_SAMPLETEXT 19                     
01313 #define TT_NAME_POSTSCRIPTCIDNAME 20              
01316 /* Microsoft Language ID */
01317 
01318 #define TT_LANGUAGE_MS_ARABIC_SAUDIARABIA 0x0401         
01319 #define TT_LANGUAGE_MS_ARABIC_IRAQ 0x0801                
01320 #define TT_LANGUAGE_MS_ARABIC_EGYPT 0x0c01               
01321 #define TT_LANGUAGE_MS_ARABIC_LIBYA 0x1001               
01322 #define TT_LANGUAGE_MS_ARABIC_ALGERIA 0x1401             
01323 #define TT_LANGUAGE_MS_ARABIC_MOROCCO 0x1801             
01324 #define TT_LANGUAGE_MS_ARABIC_TUNISIA 0x1c01             
01325 #define TT_LANGUAGE_MS_ARABIC_OMAN 0x2001                
01326 #define TT_LANGUAGE_MS_ARABIC_YEMEN 0x2401               
01327 #define TT_LANGUAGE_MS_ARABIC_SYRIA 0x2801               
01328 #define TT_LANGUAGE_MS_ARABIC_JORDAN 0x2c01              
01329 #define TT_LANGUAGE_MS_ARABIC_LEBANON 0x3001             
01330 #define TT_LANGUAGE_MS_ARABIC_KUWAIT 0x3401              
01331 #define TT_LANGUAGE_MS_ARABIC_UAE 0x3801                 
01332 #define TT_LANGUAGE_MS_ARABIC_BAHRAIN 0x3c01             
01333 #define TT_LANGUAGE_MS_ARABIC_QATAR 0x4001               
01334 #define TT_LANGUAGE_MS_BULGARIAN_BULGARIA 0x0402         
01335 #define TT_LANGUAGE_MS_CATALAN_SPAIN 0x0403              
01336 #define TT_LANGUAGE_MS_CHINESE_TAIWAN 0x0404             
01337 #define TT_LANGUAGE_MS_CHINESE_PRC 0x0804                
01338 #define TT_LANGUAGE_MS_CHINESE_HONGKONG 0x0c04           
01339 #define TT_LANGUAGE_MS_CHINESE_SINGAPORE 0x1004          
01340 #define TT_LANGUAGE_MS_CHINESE_MACAU 0x1404              
01341 #define TT_LANGUAGE_MS_CZECH_CZECHREPUBLIC 0x0405        
01342 #define TT_LANGUAGE_MS_DANISH_DENMARK 0x0406             
01343 #define TT_LANGUAGE_MS_GERMAN_GERMANY 0x0407             
01344 #define TT_LANGUAGE_MS_GERMAN_SWITZERLAND 0x0807         
01345 #define TT_LANGUAGE_MS_GERMAN_AUSTRIA 0x0c07             
01346 #define TT_LANGUAGE_MS_GERMAN_LUXEMBOURG 0x1007          
01347 #define TT_LANGUAGE_MS_GERMAN_LIECHTENSTEIN 0x1407       
01348 #define TT_LANGUAGE_MS_GREEK_GREECE 0x0408               
01349 #define TT_LANGUAGE_MS_ENGLISH_US 0x0409                 
01350 #define TT_LANGUAGE_MS_ENGLISH_UK 0x0809                 
01351 #define TT_LANGUAGE_MS_ENGLISH_AUSTRALIA 0x0c09          
01352 #define TT_LANGUAGE_MS_ENGLISH_CANADA 0x1009             
01353 #define TT_LANGUAGE_MS_ENGLISH_NEWZEALAND 0x1409         
01354 #define TT_LANGUAGE_MS_ENGLISH_IRELAND 0x1809            
01355 #define TT_LANGUAGE_MS_ENGLISH_SOUTHAFRICA 0x1c09        
01356 #define TT_LANGUAGE_MS_ENGLISH_JAMAICA 0x2009            
01357 #define TT_LANGUAGE_MS_ENGLISH_CARIBBEAN 0x2409          
01358 #define TT_LANGUAGE_MS_ENGLISH_BELIZE 0x2809             
01359 #define TT_LANGUAGE_MS_ENGLISH_TRINIDAD 0x2c09           
01360 #define TT_LANGUAGE_MS_ENGLISH_ZIMBABWE 0x3009           
01361 #define TT_LANGUAGE_MS_ENGLISH_PHILIPPINES 0x3409        
01362 #define TT_LANGUAGE_MS_SPANISH_SPAIN_TRADITIONALSORT 0x040a  
01363 #define TT_LANGUAGE_MS_SPANISH_MEXICO 0x080a             
01364 #define TT_LANGUAGE_MS_SPANISH_SPAININTERNATIONALSORT 0x0c0a 
01365 #define TT_LANGUAGE_MS_SPANISH_GUATEMALA 0x100a          
01366 #define TT_LANGUAGE_MS_SPANISH_COSTARICA 0x140a          
01367 #define TT_LANGUAGE_MS_SPANISH_PANAMA 0x180a             
01368 #define TT_LANGUAGE_MS_SPANISH_DOMINICANREPUBLIC 0x1c0a  
01369 #define TT_LANGUAGE_MS_SPANISH_VENEZUELA 0x200a          
01370 #define TT_LANGUAGE_MS_SPANISH_COLOMBIA 0x240a           
01371 #define TT_LANGUAGE_MS_SPANISH_PERU 0x280a               
01372 #define TT_LANGUAGE_MS_SPANISH_ARGENTINA 0x2c0a          
01373 #define TT_LANGUAGE_MS_SPANISH_ECUADOR 0x300a            
01374 #define TT_LANGUAGE_MS_SPANISH_CHILE 0x340a              
01375 #define TT_LANGUAGE_MS_SPANISH_URUGUAY 0x380a            
01376 #define TT_LANGUAGE_MS_SPANISH_PARAGUAY 0x3c0a           
01377 #define TT_LANGUAGE_MS_SPANISH_BOLIVIA 0x400a            
01378 #define TT_LANGUAGE_MS_SPANISH_ELSALVADOR 0x440a         
01379 #define TT_LANGUAGE_MS_SPANISH_HONDURAS 0x480a           
01380 #define TT_LANGUAGE_MS_SPANISH_NICARAGUA 0x4c0a          
01381 #define TT_LANGUAGE_MS_SPANISH_PUERTORICO 0x500a         
01382 #define TT_LANGUAGE_MS_FINNISH_FINLAND 0x040b            
01383 #define TT_LANGUAGE_MS_FRENCH_FRANCE 0x040c              
01384 #define TT_LANGUAGE_MS_FRENCH_BELGIUM 0x080c             
01385 #define TT_LANGUAGE_MS_FRENCH_CANADA 0x0c0c              
01386 #define TT_LANGUAGE_MS_FRENCH_SWITZERLAND 0x100c         
01387 #define TT_LANGUAGE_MS_FRENCH_LUXEMBOURG 0x140c          
01388 #define TT_LANGUAGE_MS_FRENCH_MONACO 0x180c              
01389 #define TT_LANGUAGE_MS_HEBREW_ISRAEL 0x040d              
01390 #define TT_LANGUAGE_MS_HUNGARIAN_HUNGARY 0x040e          
01391 #define TT_LANGUAGE_MS_ICELANDIC_ICELAND 0x040f          
01392 #define TT_LANGUAGE_MS_ITALIAN_ITALY 0x0410              
01393 #define TT_LANGUAGE_MS_ITALIAN_SWITZERLAND 0x0810        
01394 #define TT_LANGUAGE_MS_JAPANESE_JAPAN 0x0411             
01395 #define TT_LANGUAGE_MS_KOREAN_KOREA_EXTENDEDWANSUNG 0x0412  
01396 #define TT_LANGUAGE_MS_DUTCH_NETHERLANDS 0x0413          
01397 #define TT_LANGUAGE_MS_DUTCH_BELGIUM 0x0813              
01398 #define TT_LANGUAGE_MS_NORWEGIAN_NORWAY_BOKMAL 0x0414    
01399 #define TT_LANGUAGE_MS_NORWEGIAN_NORWAY_NYNORSK 0x0814   
01400 #define TT_LANGUAGE_MS_POLISH_POLAND 0x0415              
01401 #define TT_LANGUAGE_MS_PORTUGUESE_BRAZIL 0x0416          
01402 #define TT_LANGUAGE_MS_PORTUGUESE_PORTUGAL 0x0816        
01403 #define TT_LANGUAGE_MS_ROMANIAN_ROMANIA 0x0418           
01404 #define TT_LANGUAGE_MS_RUSSIAN_RUSSIA 0x0419             
01405 #define TT_LANGUAGE_MS_CROATIAN_CROATIA 0x041a           
01406 #define TT_LANGUAGE_MS_SERBIAN_SERBIA_LATIN 0x081a       
01407 #define TT_LANGUAGE_MS_SERBIAN_SERBIA_CYRILLIC 0x0c1a    
01408 #define TT_LANGUAGE_MS_SLOVAK_SLOVAKIA 0x041b            
01409 #define TT_LANGUAGE_MS_ALBANIAN_ALBANIA 0x041c           
01410 #define TT_LANGUAGE_MS_SWEDISH_SWEDEN 0x041d             
01411 #define TT_LANGUAGE_MS_SWEDISH_FINLAND 0x081d            
01412 #define TT_LANGUAGE_MS_THAI_THAILAND 0x041e              
01413 #define TT_LANGUAGE_MS_TURKISH_TURKEY 0x041f             
01414 #define TT_LANGUAGE_MS_URDU_PAKISTAN 0x0420              
01415 #define TT_LANGUAGE_MS_INDONESIAN_INDONESIA 0x0421       
01416 #define TT_LANGUAGE_MS_UKRAINIAN_UKRAINE 0x0422          
01417 #define TT_LANGUAGE_MS_BELARUSIAN_BELARUS 0x0423         
01418 #define TT_LANGUAGE_MS_SLOVENIAN_SLOVENIA 0x0424         
01419 #define TT_LANGUAGE_MS_ESTONIAN_ESTONIA 0x0425           
01420 #define TT_LANGUAGE_MS_LATVIAN_LATVIA 0x0426             
01421 #define TT_LANGUAGE_MS_LITHUANIAN_LITHUANIA 0x0427       
01422 #define TT_LANGUAGE_MS_FARSI_IRAN 0x0429                 
01423 #define TT_LANGUAGE_MS_VIETNAMESE_VIETNAM 0x042a         
01424 #define TT_LANGUAGE_MS_ARMENIAN_ARMENIA 0x042b           
01425 #define TT_LANGUAGE_MS_AZERI_AZERBAIJAN_LATIN 0x042c     
01426 #define TT_LANGUAGE_MS_AZERI_AZERBAIJAN_CYRILLIC 0x082c  
01427 #define TT_LANGUAGE_MS_BASQUE_SPAIN 0x042d               
01428 #define TT_LANGUAGE_MS_MACEDONIAN_MACEDONIA 0x042f       
01429 #define TT_LANGUAGE_MS_AFRIKAANS_SOUTHAFRICA 0x0436      
01430 #define TT_LANGUAGE_MS_GEORGIAN_GEORGIA 0x0437           
01431 #define TT_LANGUAGE_MS_FAEROESE_FAEROEISLANDS 0x0438     
01432 #define TT_LANGUAGE_MS_HINDI_INDIA 0x0439                
01433 #define TT_LANGUAGE_MS_MALAY_MALAYSIA 0x043e             
01434 #define TT_LANGUAGE_MS_MALAY_BRUNEIDARUSSALAM 0x083e     
01435 #define TT_LANGUAGE_MS_KAZAKH_KAZAKSTAN 0x043f           
01436 #define TT_LANGUAGE_MS_SWAHILI_KENYA 0x0441              
01437 #define TT_LANGUAGE_MS_UZBEK_UZBEKISTAN_LATIN 0x0443     
01438 #define TT_LANGUAGE_MS_UZBEK_UZBEKISTAN_CYRILLIC 0x0843  
01439 #define TT_LANGUAGE_MS_TATAR_TATARSTAN 0x0444            
01440 #define TT_LANGUAGE_MS_PUNJABI_INDIA 0x0446              
01441 #define TT_LANGUAGE_MS_GUJARATI_INDIA 0x0447             
01442 #define TT_LANGUAGE_MS_TAMIL_INDIA 0x0449                
01443 #define TT_LANGUAGE_MS_TELUGU_INDIA 0x044a               
01444 #define TT_LANGUAGE_MS_KANNADA_INDIA 0x044b              
01445 #define TT_LANGUAGE_MS_MARATHI_INDIA 0x044e              
01446 #define TT_LANGUAGE_MS_SANSKRIT_INDIA 0x044f             
01447 #define TT_LANGUAGE_MS_KONKANI_INDIA 0x0457              
01448 #define TT_LANGUAGE_MS_KYRGYZ_KYRGYZSTAN 0x0440          
01449 #define TT_LANGUAGE_MS_MONGOLIAN_MONGOLIA_CYRILLIC 0x0450 
01450 #define TT_LANGUAGE_MS_GALICIAN_SPAIN 0x0456             
01451 #define TT_LANGUAGE_MS_SYRIAC_SYRIA 0x045A               
01452 #define TT_LANGUAGE_MS_DIVEHI_MALDIVES 0x0465            
01455 /* Macintosh platform-specific encoding IDs  (script manager codes) */
01456 #define TT_ENCODING_APPLE_ROMAN 0                        
01457 #define TT_ENCODING_APPLE_JAPANESE 1                     
01458 #define TT_ENCODING_APPLE_TRADITIONALCHINESE 2           
01459 #define TT_ENCODING_APPLE_KOREAN 3                       
01460 #define TT_ENCODING_APPLE_ARABIC 4                       
01461 #define TT_ENCODING_APPLE_HEBREW 5                       
01462 #define TT_ENCODING_APPLE_GREEK 6                        
01463 #define TT_ENCODING_APPLE_RUSSIAN 7                      
01464 #define TT_ENCODING_APPLE_RSYMBOL 8                      
01465 #define TT_ENCODING_APPLE_DEVANAGARI 9                   
01466 #define TT_ENCODING_APPLE_GURMUKHI 10                    
01467 #define TT_ENCODING_APPLE_GUJARATI 11                    
01468 #define TT_ENCODING_APPLE_ORIYA 12                       
01469 #define TT_ENCODING_APPLE_BENGALI 13                     
01470 #define TT_ENCODING_APPLE_TAMIL 14                       
01471 #define TT_ENCODING_APPLE_TELUGU 15                      
01472 #define TT_ENCODING_APPLE_KANNADA 16                     
01473 #define TT_ENCODING_APPLE_MALAYALAM 17                   
01474 #define TT_ENCODING_APPLE_SINHALESE 18                   
01475 #define TT_ENCODING_APPLE_BURMESE 19                     
01476 #define TT_ENCODING_APPLE_KHMER 20                       
01477 #define TT_ENCODING_APPLE_THAI 21                        
01478 #define TT_ENCODING_APPLE_LAOTIAN 22                     
01479 #define TT_ENCODING_APPLE_GEORGIAN 23                    
01480 #define TT_ENCODING_APPLE_ARMENIAN 24                    
01481 #define TT_ENCODING_APPLE_SIMPLIFIEDCHINESE 25           
01482 #define TT_ENCODING_APPLE_TIBETAN 26                     
01483 #define TT_ENCODING_APPLE_MONGOLIAN 27                   
01484 #define TT_ENCODING_APPLE_GEEZ 28                        
01485 #define TT_ENCODING_APPLE_SLAVIC 29                      
01486 #define TT_ENCODING_APPLE_VIETNAMESE 30                  
01487 #define TT_ENCODING_APPLE_SINDHI 31                      
01488 #define TT_ENCODING_APPLE_UNINTERPRETED 32               
01490 /* Macintosh Language IDs */
01491 #define TT_LANGUAGE_APPLE_ENGLISH 0                      
01492 #define TT_LANGUAGE_APPLE_FRENCH 1                       
01493 #define TT_LANGUAGE_APPLE_GERMAN 2                       
01494 #define TT_LANGUAGE_APPLE_ITALIAN 3                      
01495 #define TT_LANGUAGE_APPLE_DUTCH 4                        
01496 #define TT_LANGUAGE_APPLE_SWEDISH 5                      
01497 #define TT_LANGUAGE_APPLE_SPANISH 6                      
01498 #define TT_LANGUAGE_APPLE_DANISH 7                       
01499 #define TT_LANGUAGE_APPLE_PORTUGUESE 8                   
01500 #define TT_LANGUAGE_APPLE_NORWEGIAN 9                    
01501 #define TT_LANGUAGE_APPLE_HEBREW 10                      
01502 #define TT_LANGUAGE_APPLE_JAPANESE 11                    
01503 #define TT_LANGUAGE_APPLE_ARABIC 12                      
01504 #define TT_LANGUAGE_APPLE_FINNISH 13                     
01505 #define TT_LANGUAGE_APPLE_GREEK 14                       
01506 #define TT_LANGUAGE_APPLE_ICELANDIC 15                   
01507 #define TT_LANGUAGE_APPLE_MALTESE 16                     
01508 #define TT_LANGUAGE_APPLE_TURKISH 17                     
01509 #define TT_LANGUAGE_APPLE_CROATIAN 18                    
01510 #define TT_LANGUAGE_APPLE_TRADITIONALCHINESE 19          
01511 #define TT_LANGUAGE_APPLE_URDU 20                        
01512 #define TT_LANGUAGE_APPLE_HINDI 21                       
01513 #define TT_LANGUAGE_APPLE_THAI 22                        
01514 #define TT_LANGUAGE_APPLE_KOREAN 23                      
01515 #define TT_LANGUAGE_APPLE_LITHUANIAN 24                  
01516 #define TT_LANGUAGE_APPLE_POLISH 25                      
01517 #define TT_LANGUAGE_APPLE_HUNGARIAN 26                   
01518 #define TT_LANGUAGE_APPLE_ESTONIAN 27                    
01519 #define TT_LANGUAGE_APPLE_LATVIAN 28                     
01520 #define TT_LANGUAGE_APPLE_SAMI 29                        
01521 #define TT_LANGUAGE_APPLE_FAROESE 30                     
01522 #define TT_LANGUAGE_APPLE_FARSIPERSIAN 31                
01523 #define TT_LANGUAGE_APPLE_RUSSIAN 32                     
01524 #define TT_LANGUAGE_APPLE_SIMPLIFIEDCHINESE 33           
01525 #define TT_LANGUAGE_APPLE_FLEMISH 34                     
01526 #define TT_LANGUAGE_APPLE_IRISHGAELIC 35                 
01527 #define TT_LANGUAGE_APPLE_ALBANIAN 36                    
01528 #define TT_LANGUAGE_APPLE_ROMANIAN 37                    
01529 #define TT_LANGUAGE_APPLE_CZECH 38                       
01530 #define TT_LANGUAGE_APPLE_SLOVAK 39                      
01531 #define TT_LANGUAGE_APPLE_SLOVENIAN 40                   
01532 #define TT_LANGUAGE_APPLE_YIDDISH 41                     
01533 #define TT_LANGUAGE_APPLE_SERBIAN 42                     
01534 #define TT_LANGUAGE_APPLE_MACEDONIAN 43                  
01535 #define TT_LANGUAGE_APPLE_BULGARIAN 44                   
01536 #define TT_LANGUAGE_APPLE_UKRAINIAN 45                   
01537 #define TT_LANGUAGE_APPLE_BYELORUSSIAN 46                
01538 #define TT_LANGUAGE_APPLE_UZBEK 47                       
01539 #define TT_LANGUAGE_APPLE_KAZAKH 48                      
01540 #define TT_LANGUAGE_APPLE_CYRILLICAZERBAIJANI 49         
01541 #define TT_LANGUAGE_APPLE_ARABICAZERBAIJANI 50           
01542 #define TT_LANGUAGE_APPLE_ARMENIAN 51                    
01543 #define TT_LANGUAGE_APPLE_GEORGIAN 52                    
01544 #define TT_LANGUAGE_APPLE_MOLDAVIAN 53                   
01545 #define TT_LANGUAGE_APPLE_KIRGHIZ 54                     
01546 #define TT_LANGUAGE_APPLE_TAJIGI 55                      
01547 #define TT_LANGUAGE_APPLE_TURKMEN 56                     
01548 #define TT_LANGUAGE_APPLE_MONGOLIAN 57                   
01549 #define TT_LANGUAGE_APPLE_CYRILLICMONGOLIAN 58           
01550 #define TT_LANGUAGE_APPLE_PASHTO 59                      
01551 #define TT_LANGUAGE_APPLE_KURDISH 60                     
01552 #define TT_LANGUAGE_APPLE_KASHMIRI 61                    
01553 #define TT_LANGUAGE_APPLE_SINDHI 62                      
01554 #define TT_LANGUAGE_APPLE_TIBETAN 63                     
01555 #define TT_LANGUAGE_APPLE_NEPALI 64                      
01556 #define TT_LANGUAGE_APPLE_SANSKRIT 65                    
01557 #define TT_LANGUAGE_APPLE_MARATHI 66                     
01558 #define TT_LANGUAGE_APPLE_BENGALI 67                     
01559 #define TT_LANGUAGE_APPLE_ASSAMESE 68                    
01560 #define TT_LANGUAGE_APPLE_GUJARATI 69                    
01561 #define TT_LANGUAGE_APPLE_PUNJABI 70                     
01562 #define TT_LANGUAGE_APPLE_ORIYA 71                       
01563 #define TT_LANGUAGE_APPLE_MALAYALAM 72                   
01564 #define TT_LANGUAGE_APPLE_KANNADA 73                     
01565 #define TT_LANGUAGE_APPLE_TAMIL 74                       
01566 #define TT_LANGUAGE_APPLE_TELUGU 75                      
01567 #define TT_LANGUAGE_APPLE_SINHALESE 76                   
01568 #define TT_LANGUAGE_APPLE_BURMESE 77                     
01569 #define TT_LANGUAGE_APPLE_KHMER 78                       
01570 #define TT_LANGUAGE_APPLE_LAO 79                         
01571 #define TT_LANGUAGE_APPLE_VIETNAMESE 80                  
01572 #define TT_LANGUAGE_APPLE_INDONESIAN 81                  
01573 #define TT_LANGUAGE_APPLE_TAGALONG 82                    
01574 #define TT_LANGUAGE_APPLE_ROMANMALAY 83                  
01575 #define TT_LANGUAGE_APPLE_ARABICMALAY 84                 
01576 #define TT_LANGUAGE_APPLE_AMHARIC 85                     
01577 #define TT_LANGUAGE_APPLE_TIGRINYA 86                    
01578 #define TT_LANGUAGE_APPLE_GALLA 87                       
01579 #define TT_LANGUAGE_APPLE_SOMALI 88                      
01580 #define TT_LANGUAGE_APPLE_SWAHILI 89                     
01581 #define TT_LANGUAGE_APPLE_KINYARWANDARUANDA 90           
01582 #define TT_LANGUAGE_APPLE_RUNDI 91                       
01583 #define TT_LANGUAGE_APPLE_NYANJACHEWA 92                 
01584 #define TT_LANGUAGE_APPLE_MALAGASY 93                    
01585 #define TT_LANGUAGE_APPLE_ESPERANTO 94                   
01586 #define TT_LANGUAGE_APPLE_WELSH 128                      
01587 #define TT_LANGUAGE_APPLE_BASQUE 129                     
01588 #define TT_LANGUAGE_APPLE_CATALAN 130                    
01589 #define TT_LANGUAGE_APPLE_LATIN 131                      
01590 #define TT_LANGUAGE_APPLE_QUENCHUA 132                   
01591 #define TT_LANGUAGE_APPLE_GUARANI 133                    
01592 #define TT_LANGUAGE_APPLE_AYMARA 134                     
01593 #define TT_LANGUAGE_APPLE_TATAR 135                      
01594 #define TT_LANGUAGE_APPLE_UIGHUR 136                     
01595 #define TT_LANGUAGE_APPLE_DZONGKHA 137                   
01596 #define TT_LANGUAGE_APPLE_ROMANJAVANESE 138              
01597 #define TT_LANGUAGE_APPLE_ROMANSUNDANESE 139             
01598 #define TT_LANGUAGE_APPLE_GALICIAN 140                   
01599 #define TT_LANGUAGE_APPLE_AFRIKAANS 141                  
01600 #define TT_LANGUAGE_APPLE_BRETON 142                     
01601 #define TT_LANGUAGE_APPLE_INUKTITUT 143                  
01602 #define TT_LANGUAGE_APPLE_SCOTTISHGAELIC 144             
01603 #define TT_LANGUAGE_APPLE_MANXGAELIC 145                 
01604 #define TT_LANGUAGE_APPLE_IRISHGAELICWITHDOT 146         
01605 #define TT_LANGUAGE_APPLE_TONGAN 147                     
01606 #define TT_LANGUAGE_APPLE_POLYTONICGREEK 148             
01607 #define TT_LANGUAGE_APPLE_GREENLANDIC 149                
01608 #define TT_LANGUAGE_APPLE_ROMANAZERBAIJANI 150           
01610 typedef enum  {
01611     ST_NO_ERROR = 0,                    
01612     ST_OK = ST_NO_ERROR,                
01613     ST_MEMORY,                          
01614     ST_NULL_OR_EMPTY_STRING,            
01615     ST_NULL_POINTER,                    
01616     ST_BAD_FONTPATH,                    
01617     ST_FONTENUMERATOR_FAILED,           
01618     ST_BAD_SCALERPATH,                  
01619     ST_SCALERENUMERATOR_FAILED,         
01620     ST_FONTMANAGER_FAILED,              
01621     ST_BAD_FONTID,                      
01622     ST_NO_SCALER,                       
01623     ST_BUFSIZE,                         
01624     ST_BITDEPTH,                        
01625     ST_PADDING,                         
01626     ST_SERVER_ERROR,                    
01627     ST_FONT_NOT_FOUND,                  
01628     ST_SCALER_NOT_FOUND,                
01629     ST_LAYOUTENGINE_NOT_FOUND,          
01630     ST_TEXT_RANGE,                      
01631     ST_RENDER_FLAGS,                    
01632     ST_BAD_TYPEENV,                     
01633     ST_BAD_FONTSIZE,                    
01634     ST_UNKNOWN_LANGUAGE,                
01635     ST_UNKNOWN_ENCODING,                
01636     ST_NAME_NOT_FOUND,                  
01637     ST_BAD_FONTINSTANCE,                
01638     ST_BAD_FAMILYID,            
01639     ST_OBJECT_NOT_FOUND,                
01640     ST_RANGE,                           
01641     ST_FILEIO,                          
01642     ST_NOT_IMPLEMENTED,                 
01643     ST_INTERNAL_ERROR,                  
01644     ST_CONN_ERROR,                      
01645     ST_CONN_SEND_ERROR,                 
01646     ST_CONN_RECEIVE_ERROR,              
01647     ST_CONN_TIMEOUT_ERROR,              
01648     ST_MAX_ERROR                        
01649 } STStatus;
01650 
01651 
01652 /*
01653  * STLocale: ST_SCRIPT_* | ST_LANGUAGE_* | ST_TERRITORY_*
01654  */
01655 
01656 /*
01657  * STLocale bits:
01658  *
01659  *        XX...... ........ ........ ........     reserved, should be set to 0
01660  *        ..XX.... ........ ........ ........     script variant: 0-3
01661  *        ....XXXX XXXXXXXX XX...... ........     territory code: 0-16383
01662  *        ........ ........ ..XXXXXX XXXXXXXX     language code: 0-16383
01663  *
01664  */
01665 
01666 #define ST_SCRIPTVARIANT_MASK                               0x30000000
01667 #define ST_TERRITORY_MASK                                   0x0FFFC000
01668 #define ST_LANGUAGE_MASK                                    0x00003FFF
01669 
01670 #define ST_SCRIPTVARIANT(a)             ((a) & ST_SCRIPTVARIANT_MASK)
01671 #define ST_TERRITORY(a)                 ((a) & ST_TERRITORY_MASK)
01672 #define ST_LANGUAGE(a)                  ((a) & ST_LANGUAGE_MASK)
01673 #define ST_LOCALE(s, t, l)              ((s) | (t) | (l))
01674 #define ST_LOCALE2(t, l)                ((t) | (l))
01675 
01676 
01677 /* Script variant */
01678 
01679 #define ST_SCRIPTVARIANT_DEFAULT                    0x00000000
01680 
01681 #define ST_SCRIPTVARIANT_0                          0x00000000
01682 #define ST_SCRIPTVARIANT_1                          0x10000000
01683 #define ST_SCRIPTVARIANT_2                          0x20000000
01684 #define ST_SCRIPTVARIANT_3                          0x30000000
01685 
01686 /* Territory */
01687 
01688 #define ST_TERRITORY_DEFAULT                    0x00000000
01689 #define ST_TERRITORY_NOTERRITORY                (0x3FFF << 14)
01690 
01691 #define ST_TERRITORY_AFGHANISTAN                                (  1 << 14)            
01692 #define ST_TERRITORY_ALBANIA                                    (  2 << 14)            
01693 #define ST_TERRITORY_ALGERIA                                    (  3 << 14)            
01694 #define ST_TERRITORY_AMERICAN_SAMOA                             (  4 << 14)            
01695 #define ST_TERRITORY_ANDORRA                                    (  5 << 14)            
01696 #define ST_TERRITORY_ANGOLA                                     (  6 << 14)            
01697 #define ST_TERRITORY_ANGUILLA                                   (  7 << 14)               
01698 #define ST_TERRITORY_ANTARCTICA                                 (  8 << 14)            
01699 #define ST_TERRITORY_ANTIGUA_AND_BARBUDA                        (  9 << 14)
01700 #define ST_TERRITORY_ARGENTINA                                  ( 10 << 14)
01701 #define ST_TERRITORY_ARMENIA                                    ( 11 << 14)             
01702 #define ST_TERRITORY_ARUBA                                      ( 12 << 14)             
01703 #define ST_TERRITORY_AUSTRALIA                                  ( 13 << 14)
01704 #define ST_TERRITORY_AUSTRIA                                    ( 14 << 14)
01705 #define ST_TERRITORY_AZERBAIJAN                                 ( 15 << 14)             
01706 #define ST_TERRITORY_BAHAMAS                                    ( 16 << 14)
01707 #define ST_TERRITORY_BAHRAIN                                    ( 17 << 14)
01708 #define ST_TERRITORY_BANGLADESH                                 ( 18 << 14)
01709 #define ST_TERRITORY_BARBADOS                                   ( 19 << 14)
01710 #define ST_TERRITORY_BELARUS                                    ( 20 << 14)              
01711 #define ST_TERRITORY_BELGIUM                                    ( 21 << 14)
01712 #define ST_TERRITORY_BELIZE                                     ( 22 << 14)
01713 #define ST_TERRITORY_BENIN                                      ( 23 << 14)             
01714 #define ST_TERRITORY_BERMUDA                                    ( 24 << 14)
01715 #define ST_TERRITORY_BHUTAN                                     ( 25 << 14)
01716 #define ST_TERRITORY_BOLIVIA                                    ( 26 << 14)
01717 #define ST_TERRITORY_BOSNIA_AND_HERZEGOWINA                     ( 27 << 14)
01718 #define ST_TERRITORY_BOTSWANA                                   ( 28 << 14)
01719 #define ST_TERRITORY_BOUVET_ISLAND                              ( 29 << 14)
01720 #define ST_TERRITORY_BRAZIL                                     ( 30 << 14)
01721 #define ST_TERRITORY_BRITISH_INDIAN_OCEAN_TERRITORY             ( 31 << 14)
01722 #define ST_TERRITORY_BRITISH_VIRGIN_ISLANDS                     ( 32 << 14)
01723 #define ST_TERRITORY_BRUNEI_DARUSSALAM                          ( 33 << 14)
01724 #define ST_TERRITORY_BULGARIA                                   ( 34 << 14)             
01725 #define ST_TERRITORY_BURKINA_FASO                               ( 35 << 14)             
01726 #define ST_TERRITORY_BURUNDI                                    ( 36 << 14)             
01727 #define ST_TERRITORY_CAMBODIA                                   ( 37 << 14)             
01728 #define ST_TERRITORY_CAMEROON                                   ( 38 << 14)             
01729 #define ST_TERRITORY_CANADA                                     ( 39 << 14)             
01730 #define ST_TERRITORY_CAPE_VERDE                                 ( 40 << 14)             
01731 #define ST_TERRITORY_CAYMAN_ISLANDS                             ( 41 << 14)             
01732 #define ST_TERRITORY_CENTRAL_AFRICAN_REPUBLIC                   ( 42 << 14)             
01733 #define ST_TERRITORY_CHAD                                       ( 43 << 14)             
01734 #define ST_TERRITORY_CHILE                                      ( 44 << 14)             
01735 #define ST_TERRITORY_CHINA                                      ( 45 << 14)             
01736 #define ST_TERRITORY_CHRISTMAS_ISLAND                           ( 46 << 14)             
01737 #define ST_TERRITORY_COCOS_ISLANDS                              ( 47 << 14)             
01738 #define ST_TERRITORY_COLOMBIA                                   ( 48 << 14)             
01739 #define ST_TERRITORY_COMOROS                                    ( 49 << 14)             
01740 #define ST_TERRITORY_CONGO                                      ( 50 << 14)             
01741 #define ST_TERRITORY_COOK_ISLANDS                               ( 51 << 14)             
01742 #define ST_TERRITORY_COSTA_RICA                                 ( 52 << 14)             
01743 #define ST_TERRITORY_COTE_DIVOIRE                               ( 53 << 14)             
01744 #define ST_TERRITORY_CROATIA                            ( 54 << 14)                  
01745 #define ST_TERRITORY_CUBA                                       ( 55 << 14)             
01746 #define ST_TERRITORY_CYPRUS                                     ( 56 << 14)             
01747 #define ST_TERRITORY_CZECH_REPUBLIC                             ( 57 << 14)              
01748 #define ST_TERRITORY_DENMARK                                    ( 58 << 14)             
01749 #define ST_TERRITORY_DJIBOUTI                                   ( 59 << 14)             
01750 #define ST_TERRITORY_DOMINICA                                   ( 60 << 14)             
01751 #define ST_TERRITORY_DOMINICAN_REPUBLIC                         ( 61 << 14)             
01752 #define ST_TERRITORY_EAST_TIMOR                                 ( 62 << 14)             
01753 #define ST_TERRITORY_ECUADOR                                    ( 63 << 14)             
01754 #define ST_TERRITORY_EGYPT                                      ( 64 << 14)             
01755 #define ST_TERRITORY_EL_SALVADOR                                ( 65 << 14)             
01756 #define ST_TERRITORY_EQUATORIAL_GUINEA                          ( 66 << 14)             
01757 #define ST_TERRITORY_ERITREA                                    ( 67 << 14)             
01758 #define ST_TERRITORY_ESTONIA                                    ( 68 << 14)              
01759 #define ST_TERRITORY_ETHIOPIA                                   ( 69 << 14)             
01760 #define ST_TERRITORY_FALKLAND_ISLANDS                           ( 70 << 14)             
01761 #define ST_TERRITORY_FAROE_ISLANDS                              ( 71 << 14)             
01762 #define ST_TERRITORY_FIJI                                       ( 72 << 14)             
01763 #define ST_TERRITORY_FINLAND                                    ( 73 << 14)             
01764 #define ST_TERRITORY_FRANCE                                     ( 74 << 14)             
01765 #define ST_TERRITORY_FRENCH_GUIANA                              ( 75 << 14)             
01766 #define ST_TERRITORY_FRENCH_POLYNESIA                           ( 76 << 14)             
01767 #define ST_TERRITORY_FRENCH_SOUTHERN_TERRITORIES                ( 77 << 14)             
01768 #define ST_TERRITORY_GABON                                      ( 78 << 14)             
01769 #define ST_TERRITORY_GAMBIA                                     ( 79 << 14)             
01770 #define ST_TERRITORY_GEORGIA                                    ( 80 << 14)              
01771 #define ST_TERRITORY_GERMANY                                    ( 81 << 14)             
01772 #define ST_TERRITORY_GHANA                                      ( 82 << 14)             
01773 #define ST_TERRITORY_GIBRALTAR                                  ( 83 << 14)             
01774 #define ST_TERRITORY_GREECE                                     ( 84 << 14)             
01775 #define ST_TERRITORY_GREENLAND                                  ( 85 << 14)             
01776 #define ST_TERRITORY_GRENADA                                    ( 86 << 14)             
01777 #define ST_TERRITORY_GUADELOUPE                                 ( 87 << 14)             
01778 #define ST_TERRITORY_GUAM                                       ( 88 << 14)             
01779 #define ST_TERRITORY_GUATEMALA                                  ( 89 << 14)             
01780 #define ST_TERRITORY_GUINEA                                     ( 90 << 14)             
01781 #define ST_TERRITORY_GUINEA_BISSAU                              ( 91 << 14)             
01782 #define ST_TERRITORY_GUYANA                                     ( 92 << 14)             
01783 #define ST_TERRITORY_HAITI                                      ( 93 << 14)             
01784 #define ST_TERRITORY_HEARD_AND_MC_DONALD_ISLANDS                ( 94 << 14)             
01785 #define ST_TERRITORY_HONDURAS                                   ( 95 << 14)             
01786 #define ST_TERRITORY_HONG_KONG                                  ( 96 << 14)             
01787 #define ST_TERRITORY_HUNGARY                                    ( 97 << 14)             
01788 #define ST_TERRITORY_ICELAND                                    ( 98 << 14)             
01789 #define ST_TERRITORY_INDIA                                      ( 99 << 14)             
01790 #define ST_TERRITORY_INDONESIA                                  (100 << 14)
01791 #define ST_TERRITORY_IRAN                                       (101 << 14)
01792 #define ST_TERRITORY_IRAQ                                       (102 << 14)
01793 #define ST_TERRITORY_IRELAND                                    (103 << 14)
01794 #define ST_TERRITORY_ISRAEL                                     (104 << 14)
01795 #define ST_TERRITORY_ITALY                                      (105 << 14)
01796 #define ST_TERRITORY_JAMAICA                                    (106 << 14)
01797 #define ST_TERRITORY_JAPAN                                      (107 << 14)
01798 #define ST_TERRITORY_JORDAN                                     (108 << 14)
01799 #define ST_TERRITORY_KAZAKHSTAN                                 (109 << 14)             
01800 #define ST_TERRITORY_KENYA                                      (110 << 14)
01801 #define ST_TERRITORY_KIRIBATI                                   (111 << 14)
01802 #define ST_TERRITORY_KUWAIT                                     (112 << 14)
01803 #define ST_TERRITORY_KYRGYZSTAN                                 (113 << 14)             
01804 #define ST_TERRITORY_LAOS                                       (114 << 14)
01805 #define ST_TERRITORY_LATVIA                                     (115 << 14)             
01806 #define ST_TERRITORY_LEBANON                                    (116 << 14)
01807 #define ST_TERRITORY_LESOTHO                                    (117 << 14)
01808 #define ST_TERRITORY_LIBERIA                                    (118 << 14)
01809 #define ST_TERRITORY_LIBYA                                      (119 << 14)
01810 #define ST_TERRITORY_LIECHTENSTEIN                              (120 << 14)
01811 #define ST_TERRITORY_LITHUANIA                                  (121 << 14)             
01812 #define ST_TERRITORY_LUXEMBOURG                                 (122 << 14)
01813 #define ST_TERRITORY_MACAU                                      (123 << 14)
01814 #define ST_TERRITORY_MACEDONIA                                  (124 << 14)
01815 #define ST_TERRITORY_MADAGASCAR                                 (125 << 14)
01816 #define ST_TERRITORY_MALAWI                                     (126 << 14)
01817 #define ST_TERRITORY_MALAYSIA                                   (127 << 14)
01818 #define ST_TERRITORY_MALDIVES                                   (128 << 14)
01819 #define ST_TERRITORY_MALI                                       (129 << 14)
01820 #define ST_TERRITORY_MALTA                                      (130 << 14)
01821 #define ST_TERRITORY_MARSHALL_ISLANDS                           (131 << 14)
01822 #define ST_TERRITORY_MARTINIQUE                                 (132 << 14)
01823 #define ST_TERRITORY_MAURITANIA                                 (133 << 14)
01824 #define ST_TERRITORY_MAURITIUS                                  (134 << 14)
01825 #define ST_TERRITORY_MAYOTTE                                    (135 << 14)             
01826 #define ST_TERRITORY_METROPOLITAN_FRANCE                        (136 << 14)             
01827 #define ST_TERRITORY_MEXICO                                     (137 << 14)
01828 #define ST_TERRITORY_MICRONESIA                                 (138 << 14)
01829 #define ST_TERRITORY_MOLDOVA                                    (139 << 14)             
01830 #define ST_TERRITORY_MONACO                                     (140 << 14)
01831 #define ST_TERRITORY_MONGOLIA                                   (141 << 14)
01832 #define ST_TERRITORY_MONTSERRAT                                 (142 << 14)
01833 #define ST_TERRITORY_MOROCCO                                    (143 << 14)
01834 #define ST_TERRITORY_MOZAMBIQUE                                 (144 << 14)
01835 #define ST_TERRITORY_MYANMAR                                    (145 << 14)
01836 #define ST_TERRITORY_NAMIBIA                                    (146 << 14)
01837 #define ST_TERRITORY_NAURU                                      (147 << 14)
01838 #define ST_TERRITORY_NEPAL                                      (148 << 14)
01839 #define ST_TERRITORY_NETHERLANDS                                (149 << 14)
01840 #define ST_TERRITORY_NETHERLANDS_ANTILLES                       (150 << 14)
01841 #define ST_TERRITORY_NEW_CALEDONIA                              (151 << 14)
01842 #define ST_TERRITORY_NEW_ZEALAND                                (152 << 14)
01843 #define ST_TERRITORY_NICARAGUA                                  (153 << 14)
01844 #define ST_TERRITORY_NIGER                                      (154 << 14)
01845 #define ST_TERRITORY_NIGERIA                                    (155 << 14)
01846 #define ST_TERRITORY_NIUE                                       (156 << 14)
01847 #define ST_TERRITORY_NORFOLK_ISLAND                             (157 << 14)
01848 #define ST_TERRITORY_NORTHERN_MARIANA_ISLANDS                   (158 << 14)
01849 #define ST_TERRITORY_NORTH_KOREA                                (159 << 14)
01850 #define ST_TERRITORY_NORWAY                                     (160 << 14)
01851 #define ST_TERRITORY_OMAN                                       (161 << 14)
01852 #define ST_TERRITORY_PAKISTAN                                   (162 << 14)
01853 #define ST_TERRITORY_PALAU                                      (163 << 14)
01854 #define ST_TERRITORY_PANAMA                                     (164 << 14)
01855 #define ST_TERRITORY_PAPUA_NEW_GUINEA                           (165 << 14)
01856 #define ST_TERRITORY_PARAGUAY                                   (166 << 14)
01857 #define ST_TERRITORY_PERU                                       (167 << 14)
01858 #define ST_TERRITORY_PHILIPPINES                                (168 << 14)
01859 #define ST_TERRITORY_PITCAIRN                                   (169 << 14)
01860 #define ST_TERRITORY_POLAND                                     (170 << 14)
01861 #define ST_TERRITORY_PORTUGAL                                   (171 << 14)
01862 #define ST_TERRITORY_PUERTO_RICO                                (172 << 14)
01863 #define ST_TERRITORY_QATAR                                      (173 << 14)
01864 #define ST_TERRITORY_REUNION                                    (174 << 14)
01865 #define ST_TERRITORY_ROMANIA                                    (175 << 14)
01866 #define ST_TERRITORY_RUSSIAN_FEDERATION                         (176 << 14)
01867 #define ST_TERRITORY_RWANDA                                     (177 << 14)
01868 #define ST_TERRITORY_SAINT_KITTS_AND_NEVIS                      (178 << 14)
01869 #define ST_TERRITORY_SAINT_LUCIA                                (179 << 14)
01870 #define ST_TERRITORY_SAINT_VINCENT_AND_THE_GRENADINES           (180 << 14)
01871 #define ST_TERRITORY_SAMOA                                      (181 << 14)
01872 #define ST_TERRITORY_SAN_MARINO                                 (182 << 14)
01873 #define ST_TERRITORY_SAO_TOME_AND_PRINCIPE                      (183 << 14)
01874 #define ST_TERRITORY_SAUDI_ARABIA                               (184 << 14)
01875 #define ST_TERRITORY_SENEGAL                                    (185 << 14)
01876 #define ST_TERRITORY_SEYCHELLES                                 (186 << 14)
01877 #define ST_TERRITORY_SIERRA LEONE                               (187 << 14)
01878 #define ST_TERRITORY_SINGAPORE                                  (188 << 14)
01879 #define ST_TERRITORY_SLOVAKIA                                   (189 << 14) 
01880 #define ST_TERRITORY_SLOVENIA                                   (190 << 14) 
01881 #define ST_TERRITORY_SOLOMON_ISLANDS                            (191 << 14)
01882 #define ST_TERRITORY_SOMALIA                                    (192 << 14)
01883 #define ST_TERRITORY_SOUTH_AFRICA                               (193 << 14)
01884 #define ST_TERRITORY_SOUTH_KOREA                                (194 << 14)
01885 #define ST_TERRITORY_SPAIN                                      (195 << 14)
01886 #define ST_TERRITORY_SRI_LANKA                                  (196 << 14)
01887 #define ST_TERRITORY_ST_HELENA                                  (197 << 14)
01888 #define ST_TERRITORY_ST_PIERRE_AND_MIQUELON                     (198 << 14)
01889 #define ST_TERRITORY_SUDAN                                      (199 << 14)
01890 #define ST_TERRITORY_SURINAME                                   (200 << 14)
01891 #define ST_TERRITORY_SVALBARD_AND_JAN_MAYEN_ISLANDS             (201 << 14)
01892 #define ST_TERRITORY_SWAZILAND                                  (202 << 14)
01893 #define ST_TERRITORY_SWEDEN                                     (203 << 14)
01894 #define ST_TERRITORY_SWITZERLAND                                (204 << 14)
01895 #define ST_TERRITORY_SYRIA                                      (205 << 14)
01896 #define ST_TERRITORY_TAIWAN                                     (206 << 14)
01897 #define ST_TERRITORY_TAJIKISTAN                                 (207 << 14) 
01898 #define ST_TERRITORY_TANZANIA                                   (208 << 14)
01899 #define ST_TERRITORY_THAILAND                                   (209 << 14)
01900 #define ST_TERRITORY_TOGO                                       (210 << 14)
01901 #define ST_TERRITORY_TOKELAU                                    (211 << 14)
01902 #define ST_TERRITORY_TONGA                                      (212 << 14)
01903 #define ST_TERRITORY_TRINIDAD_AND_TOBAGO                        (213 << 14)
01904 #define ST_TERRITORY_TUNISIA                                    (214 << 14)
01905 #define ST_TERRITORY_TURKEY                                     (215 << 14)
01906 #define ST_TERRITORY_TURKMENISTAN                               (216 << 14) 
01907 #define ST_TERRITORY_TURKS_AND_CAICOS_ISLANDS                   (217 << 14)
01908 #define ST_TERRITORY_TUVALU                                     (218 << 14)
01909 #define ST_TERRITORY_UGANDA                                     (219 << 14)
01910 #define ST_TERRITORY_UNITED_KINGDOM                             (220 << 14)
01911 #define ST_TERRITORY_UKRAINE                                    (221 << 14)
01912 #define ST_TERRITORY_UNITED_ARAB_EMIRATES                       (222 << 14)
01913 #define ST_TERRITORY_URUGUAY                                    (223 << 14)
01914 #define ST_TERRITORY_UNITED_STATES                              (224 << 14)
01915 #define ST_TERRITORY_UNITED_STATES_MINOR_OUTLYING_ISLANDS       (225 << 14)
01916 #define ST_TERRITORY_UNITED_STATES_VIRGIN_ISLANDS               (226 << 14)
01917 #define ST_TERRITORY_UZBEKISTAN                                 (227 << 14) 
01918 #define ST_TERRITORY_VANUATU                                    (228 << 14)
01919 #define ST_TERRITORY_VATICAN                                    (229 << 14)
01920 #define ST_TERRITORY_VENEZUELA                                  (230 << 14)
01921 #define ST_TERRITORY_VIETNAM                                    (231 << 14)
01922 #define ST_TERRITORY_WALLIS_AND_FUTUNA_ISLANDS                  (232 << 14)
01923 #define ST_TERRITORY_WESTERN_SAHARA                             (233 << 14)
01924 #define ST_TERRITORY_YEMEN                                      (234 << 14)
01925 #define ST_TERRITORY_YUGOSLAVIA                                 (235 << 14)
01926 #define ST_TERRITORY_ZAIRE                                      (236 << 14)
01927 #define ST_TERRITORY_ZAMBIA                                     (237 << 14)
01928 #define ST_TERRITORY_ZIMBABWE                                   (238 << 14)
01929                                                                 
01930 #define ST_TERRITORY_UK ST_TERRITORY_UNITED_KINGDOM                     
01931 #define ST_TERRITORY_US ST_TERRITORY_UNITED_STATES                   
01932 
01933 /* Language */
01934                                                                
01935 #define ST_LANGUAGE_DEFAULT                 0x00000000             
01936 #define ST_LANGUAGE_NOLANGUAGE                  0x3FFF
01937                                                                
01938 #define ST_LANGUAGE_ABKHAZIAN                   1   
01939 #define ST_LANGUAGE_AFAR                            2   
01940 #define ST_LANGUAGE_AFRIKAANS                       3   
01941 #define ST_LANGUAGE_ALBANIAN                        4   
01942 #define ST_LANGUAGE_AMHARIC                         5   
01943 #define ST_LANGUAGE_ARABIC                          6   
01944 #define ST_LANGUAGE_ARMENIAN                        7   
01945 #define ST_LANGUAGE_ASSAMESE                        8   
01946 #define ST_LANGUAGE_AYMARA                          9   
01947 #define ST_LANGUAGE_AZERBAIJANI                     10  
01948 #define ST_LANGUAGE_BASHKIR                         11  
01949 #define ST_LANGUAGE_BASQUE                          12  
01950 #define ST_LANGUAGE_BENGALI                         13  
01951 #define ST_LANGUAGE_BHUTANI                         14  
01952 #define ST_LANGUAGE_BIHARI                          15  
01953 #define ST_LANGUAGE_BISLAMA                         16  
01954 #define ST_LANGUAGE_BRETON                          17  
01955 #define ST_LANGUAGE_BULGARIAN                       18  
01956 #define ST_LANGUAGE_BURMESE                         19  
01957 #define ST_LANGUAGE_BYELORUSSIAN                    20  
01958 #define ST_LANGUAGE_CAMBODIAN                       21  
01959 #define ST_LANGUAGE_CATALAN                         22  
01960 #define ST_LANGUAGE_CHINESE                         23  
01961 #define ST_LANGUAGE_CORSICAN                        24  
01962 #define ST_LANGUAGE_CROATIAN                        25  
01963 #define ST_LANGUAGE_CZECH                           26  
01964 #define ST_LANGUAGE_DANISH                          27  
01965 #define ST_LANGUAGE_DUTCH                           28  
01966 #define ST_LANGUAGE_ENGLISH                         29  
01967 #define ST_LANGUAGE_ESPERANTO                       30  
01968 #define ST_LANGUAGE_ESTONIAN                        31  
01969 #define ST_LANGUAGE_FAEROESE                        32  
01970 #define ST_LANGUAGE_FIJI                            33  
01971 #define ST_LANGUAGE_FINNISH                         34  
01972 #define ST_LANGUAGE_FRENCH                          35  
01973 #define ST_LANGUAGE_FRISIAN                         36  
01974 #define ST_LANGUAGE_GALICIAN                        37  
01975 #define ST_LANGUAGE_GEORGIAN                        38  
01976 #define ST_LANGUAGE_GERMAN                          39  
01977 #define ST_LANGUAGE_GREEK                           40  
01978 #define ST_LANGUAGE_GREENLANDIC                     41  
01979 #define ST_LANGUAGE_GUARANI                         42  
01980 #define ST_LANGUAGE_GUJARATI                        43  
01981 #define ST_LANGUAGE_HAUSA                           44  
01982 #define ST_LANGUAGE_HEBREW                          45  
01983 #define ST_LANGUAGE_HINDI                           46  
01984 #define ST_LANGUAGE_HUNGARIAN                       47  
01985 #define ST_LANGUAGE_ICELANDIC                       48  
01986 #define ST_LANGUAGE_INDONESIAN                      49  
01987 #define ST_LANGUAGE_INTERLINGUA                     50  
01988 #define ST_LANGUAGE_INTERLINGUE                     51  
01989 #define ST_LANGUAGE_INUKTITUT                       52  
01990 #define ST_LANGUAGE_INUPIAK                         53  
01991 #define ST_LANGUAGE_IRISH                           54  
01992 #define ST_LANGUAGE_ITALIAN                         55  
01993 #define ST_LANGUAGE_JAPANESE                        56  
01994 #define ST_LANGUAGE_JAVANESE                        57  
01995 #define ST_LANGUAGE_KANNADA                         58  
01996 #define ST_LANGUAGE_KASHMIRI                        59  
01997 #define ST_LANGUAGE_KAZAKH                          60  
01998 #define ST_LANGUAGE_KINYARWANDA                     61  
01999 #define ST_LANGUAGE_KIRGHIZ                         62  
02000 #define ST_LANGUAGE_KIRUNDI                         63  
02001 #define ST_LANGUAGE_KOREAN                          64  
02002 #define ST_LANGUAGE_KURDISH                         65  
02003 #define ST_LANGUAGE_LAOTHIAN                        66  
02004 #define ST_LANGUAGE_LATIN                           67  
02005 #define ST_LANGUAGE_LATVIAN                         68  
02006 #define ST_LANGUAGE_LINGALA                         69  
02007 #define ST_LANGUAGE_LITHUANIAN                      70  
02008 #define ST_LANGUAGE_MACEDONIAN                      71  
02009 #define ST_LANGUAGE_MALAGASY                        72  
02010 #define ST_LANGUAGE_MALAY                           73  
02011 #define ST_LANGUAGE_MALAYALAM                       74  
02012 #define ST_LANGUAGE_MALTESE                         75  
02013 #define ST_LANGUAGE_MAORI                           76  
02014 #define ST_LANGUAGE_MARATHI                         77  
02015 #define ST_LANGUAGE_MOLDAVIAN                       78  
02016 #define ST_LANGUAGE_MONGOLIAN                       79  
02017 #define ST_LANGUAGE_NAURU                           80  
02018 #define ST_LANGUAGE_NEPALI                          81  
02019 #define ST_LANGUAGE_NORWEGIAN                       82  
02020 #define ST_LANGUAGE_OCCITAN                         83  
02021 #define ST_LANGUAGE_ORIYA                           84  
02022 #define ST_LANGUAGE_OROMO                           85  
02023 #define ST_LANGUAGE_PASHTO                          86  
02024 #define ST_LANGUAGE_PERSIAN                         87  
02025 #define ST_LANGUAGE_POLISH                          88  
02026 #define ST_LANGUAGE_PORTUGUESE                      89  
02027 #define ST_LANGUAGE_PUNJABI                         90  
02028 #define ST_LANGUAGE_QUECHUA                         91  
02029 #define ST_LANGUAGE_RHAETO_ROMANCE                  92  
02030 #define ST_LANGUAGE_ROMANIAN                        93  
02031 #define ST_LANGUAGE_RUSSIAN                         94  
02032 #define ST_LANGUAGE_SAMOAN                          95  
02033 #define ST_LANGUAGE_SANGRO                          96  
02034 #define ST_LANGUAGE_SANSKRIT                        97  
02035 #define ST_LANGUAGE_SCOTS_GAELIC                    98  
02036 #define ST_LANGUAGE_SERBIAN                         99  
02037 #define ST_LANGUAGE_SERBO_CROATIAN                  100 
02038 #define ST_LANGUAGE_SESOTHO                         101 
02039 #define ST_LANGUAGE_SETSWANA                        102 
02040 #define ST_LANGUAGE_SHONA                           103 
02041 #define ST_LANGUAGE_SINDHI                          104 
02042 #define ST_LANGUAGE_SINHALESE                       105 
02043 #define ST_LANGUAGE_SISWATI                         106 
02044 #define ST_LANGUAGE_SLOVAK                          107 
02045 #define ST_LANGUAGE_SLOVENIAN                       108 
02046 #define ST_LANGUAGE_SOMALI                          109 
02047 #define ST_LANGUAGE_SPANISH                         110 
02048 #define ST_LANGUAGE_SUNDANESE                       111 
02049 #define ST_LANGUAGE_SWAHILI                         112 
02050 #define ST_LANGUAGE_SWEDISH                         113 
02051 #define ST_LANGUAGE_TAGALOG                         114 
02052 #define ST_LANGUAGE_TAJIK                           115 
02053 #define ST_LANGUAGE_TAMIL                           116 
02054 #define ST_LANGUAGE_TATAR                           117 
02055 #define ST_LANGUAGE_TELUGU                          118 
02056 #define ST_LANGUAGE_THAI                            119 
02057 #define ST_LANGUAGE_TIBETAN                         120 
02058 #define ST_LANGUAGE_TIGRINYA                        121 
02059 #define ST_LANGUAGE_TONGA                           122 
02060 #define ST_LANGUAGE_TSONGA                          123 
02061 #define ST_LANGUAGE_TURKISH                         124 
02062 #define ST_LANGUAGE_TURKMEN                         125 
02063 #define ST_LANGUAGE_TWI                             126 
02064 #define ST_LANGUAGE_UIGHUR                          127 
02065 #define ST_LANGUAGE_UKRAINIAN                       128 
02066 #define ST_LANGUAGE_URDU                            129 
02067 #define ST_LANGUAGE_UZBEK                           130 
02068 #define ST_LANGUAGE_VIETNAMESE                      131 
02069 #define ST_LANGUAGE_VOLAPUK                         132 
02070 #define ST_LANGUAGE_WELSH                           133 
02071 #define ST_LANGUAGE_WOLOF                           134 
02072 #define ST_LANGUAGE_XHOSA                           135 
02073 #define ST_LANGUAGE_YIDDISH                         136 
02074 #define ST_LANGUAGE_YORUBA                          137 
02075 #define ST_LANGUAGE_ZHUANG                          138 
02076 #define ST_LANGUAGE_ZULU                            139 
02077 
02078 /* Script */
02079 
02080 #define ST_SCRIPT_ARABIC            0x61726162 /* 'arab' (ARABIC) */
02081 #define ST_SCRIPT_ARMENIAN          0x61726D6E /* 'armn' (ARMENIAN) */
02082 #define ST_SCRIPT_BENGALI           0x62656E67 /* 'beng' (BENGALI) */
02083 #define ST_SCRIPT_BOPOMOFO          0x626F706F /* 'bopo' (BOPOMOFO) */
02084 #define ST_SCRIPT_BRAILLE           0x62726169 /* 'brai' (BRAILLE) */
02085 #define ST_SCRIPT_CANADIAN_SYLLABICS            0x63616E73 /* 'cans' (CANADIAN SYLLABICS */
02086 #define ST_SCRIPT_CHEROKEE          0x63686572 /* 'cher' (CHEROKEE) */
02087 #define ST_SCRIPT_COPTIC            0x71616163 /* 'qaac' (COPTIC) */
02088 #define ST_SCRIPT_CYRILLIC          0x6379726C /* 'cyrl' (CYRILLIC) */
02089 #define ST_SCRIPT_DESERET           0x64737274 /* 'dsrt' (DESERET) */
02090 #define ST_SCRIPT_DEVANAGARI            0x64657661 /* 'deva' (DEVANAGARI) */
02091 #define ST_SCRIPT_ETHIOPIC          0x65746869 /* 'ethi' (ETHIOPIC) */
02092 #define ST_SCRIPT_GEORGIAN          0x67656F72 /* 'geor' (GEORGIAN) */
02093 #define ST_SCRIPT_GOTHIC            0x676F7468 /* 'goth' (GOTHIC) */
02094 #define ST_SCRIPT_GREEK             0x6772656B /* 'grek' (GREEK) */
02095 #define ST_SCRIPT_GUJARATI          0x67756A72 /* 'gujr' (GUJARATI) */
02096 #define ST_SCRIPT_GURMUKHI          0x67757275 /* 'guru' (GURMUKHI) */
02097 #define ST_SCRIPT_HAN               0x68616E69 /* 'hani' (HAN) */
02098 #define ST_SCRIPT_HANGUL            0x68616E67 /* 'hang' (HANGUL) */
02099 #define ST_SCRIPT_HEBREW            0x68656272 /* 'hebr' (HEBREW) */
02100 #define ST_SCRIPT_HIRAGANA          0x68697261 /* 'hira' (HIRAGANA) */
02101 #define ST_SCRIPT_JAMO                          0x6A616D6F /* 'jamo' (HANGUL JAMO */
02102 #define ST_SCRIPT_KANNADA           0x6B6E6461 /* 'knda' (KANNADA) */
02103 #define ST_SCRIPT_KATAKANA          0x6B617461 /* 'kata' (KATAKANA) */
02104 #define ST_SCRIPT_KHMER             0x6B686D72 /* 'khmr' (KHMER) */
02105 #define ST_SCRIPT_LAO               0x6C616F6F /* 'laoo' (LAO) */ /* XXX Should it be 'lao ' instead??? */
02106 #define ST_SCRIPT_LATIN             0x6C61746E /* 'latn' (LATIN) */
02107 #define ST_SCRIPT_MALAYALAM             0x6D6C796D /* 'mlym' (MALAYALAM) */
02108 #define ST_SCRIPT_MONGOLIAN             0x6D6F6E67 /* 'mong' (MONGOLIAN) */
02109 #define ST_SCRIPT_MYANMAR           0x6D796D72 /* 'mymr' (MYANMAR) */
02110 #define ST_SCRIPT_OGHAM             0x6F67616D /* 'ogam' (OGHAM) */
02111 #define ST_SCRIPT_OLDITALIC             0x6974616C /* 'ital' (OLD-ITALIC) */
02112 #define ST_SCRIPT_ORIYA             0x6F727961 /* 'orya' (ORIYA) */
02113 #define ST_SCRIPT_RUNIC             0x72756E72 /* 'runr' (RUNIC) */
02114 #define ST_SCRIPT_SINHALA           0x73696E68 /* 'sinh' (SINHALA) */
02115 #define ST_SCRIPT_SYRIAC            0x73797263 /* 'syrc' (SYRIAC) */
02116 #define ST_SCRIPT_TAMIL             0x74616D6C /* 'taml' (TAMIL) */
02117 #define ST_SCRIPT_TELUGU            0x74656C75 /* 'telu' (TELUGU) */
02118 #define ST_SCRIPT_THAANA            0x74686161 /* 'thaa' (THAANA) */
02119 #define ST_SCRIPT_THAI              0x74686169 /* 'thai' (THAI) */
02120 #define ST_SCRIPT_TIBETAN           0x74696274 /* 'tibt' (TIBETAN) */
02121 #define ST_SCRIPT_CANADIAN_ABORIGINAL       0x63616E73 /* 'cans' (CANADIAN-ABORIGINAL) */
02122 #define ST_SCRIPT_YI                0x79696969 /* 'yiii' (YI) */    /* XXX Should it be 'yi  ' instead ??? */
02123 
02124 #define ST_SCRIPT_ZYYY                          0x7A797979 /* 'zyyy' (COMMON) */
02125 #define ST_SCRIPT_QAAI                          0x71616169 /* 'qaai' (INHERITED) */
02126 
02127 #define ST_SCRIPT_NOSCRIPT                      0x00000000
02128 
02129 #endif /* __STTYPES_H */

Generated on Thu Mar 20 23:35:50 2003 for Standard Type Services by doxygen1.2.13.1 written by Dimitri van Heesch, © 1997-2001