| OLD | NEW |
| 1 /***************************************************************************/ | 1 /***************************************************************************/ |
| 2 /* */ | 2 /* */ |
| 3 /* ttobjs.h */ | 3 /* ttobjs.h */ |
| 4 /* */ | 4 /* */ |
| 5 /* Objects manager (specification). */ | 5 /* Objects manager (specification). */ |
| 6 /* */ | 6 /* */ |
| 7 /* Copyright 1996-2009, 2011-2012 by */ | 7 /* Copyright 1996-2009, 2011-2013 by */ |
| 8 /* David Turner, Robert Wilhelm, and Werner Lemberg. */ | 8 /* David Turner, Robert Wilhelm, and Werner Lemberg. */ |
| 9 /* */ | 9 /* */ |
| 10 /* This file is part of the FreeType project, and may only be used, */ | 10 /* This file is part of the FreeType project, and may only be used, */ |
| 11 /* modified, and distributed under the terms of the FreeType project */ | 11 /* modified, and distributed under the terms of the FreeType project */ |
| 12 /* license, LICENSE.TXT. By continuing to use, modify, or distribute */ | 12 /* license, LICENSE.TXT. By continuing to use, modify, or distribute */ |
| 13 /* this file you indicate that you have read the license and */ | 13 /* this file you indicate that you have read the license and */ |
| 14 /* understand and accept it fully. */ | 14 /* understand and accept it fully. */ |
| 15 /* */ | 15 /* */ |
| 16 /***************************************************************************/ | 16 /***************************************************************************/ |
| 17 | 17 |
| (...skipping 148 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 166 | 166 |
| 167 typedef TT_CodeRange TT_CodeRangeTable[TT_MAX_CODE_RANGES]; | 167 typedef TT_CodeRange TT_CodeRangeTable[TT_MAX_CODE_RANGES]; |
| 168 | 168 |
| 169 | 169 |
| 170 /*************************************************************************/ | 170 /*************************************************************************/ |
| 171 /* */ | 171 /* */ |
| 172 /* Defines a function/instruction definition record. */ | 172 /* Defines a function/instruction definition record. */ |
| 173 /* */ | 173 /* */ |
| 174 typedef struct TT_DefRecord_ | 174 typedef struct TT_DefRecord_ |
| 175 { | 175 { |
| 176 FT_Int range; /* in which code range is it located? */ | 176 FT_Int range; /* in which code range is it located? */ |
| 177 FT_Long start; /* where does it start? */ | 177 FT_Long start; /* where does it start? */ |
| 178 FT_Long end; /* where does it end? */ | 178 FT_Long end; /* where does it end? */ |
| 179 FT_UInt opc; /* function #, or instruction code */ | 179 FT_UInt opc; /* function #, or instruction code */ |
| 180 FT_Bool active; /* is it active? */ | 180 FT_Bool active; /* is it active? */ |
| 181 FT_Bool inline_delta; /* is function that defines inline delta? */ |
| 182 FT_ULong sph_fdef_flags; /* flags to identify special functions */ |
| 181 | 183 |
| 182 } TT_DefRecord, *TT_DefArray; | 184 } TT_DefRecord, *TT_DefArray; |
| 183 | 185 |
| 184 | 186 |
| 185 /*************************************************************************/ | 187 /*************************************************************************/ |
| 186 /* */ | 188 /* */ |
| 187 /* Subglyph transformation record. */ | 189 /* Subglyph transformation record. */ |
| 188 /* */ | 190 /* */ |
| 189 typedef struct TT_Transform_ | 191 typedef struct TT_Transform_ |
| 190 { | 192 { |
| 191 FT_Fixed xx, xy; /* transformation matrix coefficients */ | 193 FT_Fixed xx, xy; /* transformation matrix coefficients */ |
| 192 FT_Fixed yx, yy; | 194 FT_Fixed yx, yy; |
| 193 FT_F26Dot6 ox, oy; /* offsets */ | 195 FT_F26Dot6 ox, oy; /* offsets */ |
| 194 | 196 |
| 195 } TT_Transform; | 197 } TT_Transform; |
| 196 | 198 |
| 197 | 199 |
| 198 /*************************************************************************/ | 200 /*************************************************************************/ |
| 199 /* */ | 201 /* */ |
| 200 /* A note regarding non-squared pixels: */ | 202 /* A note regarding non-squared pixels: */ |
| 201 /* */ | 203 /* */ |
| 202 /* (This text will probably go into some docs at some time; for now, it */ | 204 /* (This text will probably go into some docs at some time; for now, it */ |
| 203 /* is kept here to explain some definitions in the TT_Size_Metrics */ | 205 /* is kept here to explain some definitions in the TT_Size_Metrics */ |
| (...skipping 134 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 338 | 340 |
| 339 } TT_SizeRec; | 341 } TT_SizeRec; |
| 340 | 342 |
| 341 | 343 |
| 342 /*************************************************************************/ | 344 /*************************************************************************/ |
| 343 /* */ | 345 /* */ |
| 344 /* TrueType driver class. */ | 346 /* TrueType driver class. */ |
| 345 /* */ | 347 /* */ |
| 346 typedef struct TT_DriverRec_ | 348 typedef struct TT_DriverRec_ |
| 347 { | 349 { |
| 348 FT_DriverRec root; | 350 FT_DriverRec root; |
| 351 |
| 349 TT_ExecContext context; /* execution context */ | 352 TT_ExecContext context; /* execution context */ |
| 350 TT_GlyphZoneRec zone; /* glyph loader points zone */ | 353 TT_GlyphZoneRec zone; /* glyph loader points zone */ |
| 351 | 354 |
| 352 void* extension_component; | 355 FT_UInt interpreter_version; |
| 353 | 356 |
| 354 } TT_DriverRec; | 357 } TT_DriverRec; |
| 355 | 358 |
| 356 | 359 |
| 357 /* Note: All of the functions below (except tt_size_reset()) are used */ | 360 /* Note: All of the functions below (except tt_size_reset()) are used */ |
| 358 /* as function pointers in a FT_Driver_ClassRec. Therefore their */ | 361 /* as function pointers in a FT_Driver_ClassRec. Therefore their */ |
| 359 /* parameters are of types FT_Face, FT_Size, etc., rather than TT_Face, */ | 362 /* parameters are of types FT_Face, FT_Size, etc., rather than TT_Face, */ |
| 360 /* TT_Size, etc., so that the compiler can confirm that the types and */ | 363 /* TT_Size, etc., so that the compiler can confirm that the types and */ |
| 361 /* number of parameters are correct. In all cases the FT_xxx types are */ | 364 /* number of parameters are correct. In all cases the FT_xxx types are */ |
| 362 /* cast to their TT_xxx counterparts inside the functions since FreeType */ | 365 /* cast to their TT_xxx counterparts inside the functions since FreeType */ |
| (...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 420 | 423 |
| 421 | 424 |
| 422 /*************************************************************************/ | 425 /*************************************************************************/ |
| 423 /* */ | 426 /* */ |
| 424 /* Slot functions */ | 427 /* Slot functions */ |
| 425 /* */ | 428 /* */ |
| 426 FT_LOCAL( FT_Error ) | 429 FT_LOCAL( FT_Error ) |
| 427 tt_slot_init( FT_GlyphSlot slot ); | 430 tt_slot_init( FT_GlyphSlot slot ); |
| 428 | 431 |
| 429 | 432 |
| 433 /* auxiliary */ |
| 434 #define IS_HINTED( flags ) ( ( flags & FT_LOAD_NO_HINTING ) == 0 ) |
| 435 |
| 436 |
| 430 FT_END_HEADER | 437 FT_END_HEADER |
| 431 | 438 |
| 432 #endif /* __TTOBJS_H__ */ | 439 #endif /* __TTOBJS_H__ */ |
| 433 | 440 |
| 434 | 441 |
| 435 /* END */ | 442 /* END */ |
| OLD | NEW |