OLD | NEW |
1 /***************************************************************************/ | 1 /***************************************************************************/ |
2 /* */ | 2 /* */ |
3 /* fttypes.h */ | 3 /* fttypes.h */ |
4 /* */ | 4 /* */ |
5 /* FreeType simple types definitions (specification only). */ | 5 /* FreeType simple types definitions (specification only). */ |
6 /* */ | 6 /* */ |
7 /* Copyright 1996-2002, 2004, 2006-2009, 2012, 2013 by */ | 7 /* Copyright 1996-2002, 2004, 2006-2009, 2012-2014 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 |
18 | 18 |
19 #ifndef __FTTYPES_H__ | 19 #ifndef __FTTYPES_H__ |
20 #define __FTTYPES_H__ | 20 #define __FTTYPES_H__ |
21 | 21 |
22 | 22 |
23 #include "../ft2build.h" | 23 #include <ft2build.h> |
24 #include "config/ftconfig.h" | 24 #include FT_CONFIG_CONFIG_H |
25 #include "ftsystem.h" | 25 #include FT_SYSTEM_H |
26 #include "ftimage.h" | 26 #include FT_IMAGE_H |
27 | 27 |
28 #include <stddef.h> | 28 #include <stddef.h> |
29 | 29 |
30 | 30 |
31 FT_BEGIN_HEADER | 31 FT_BEGIN_HEADER |
32 | 32 |
33 | 33 |
34 /*************************************************************************/ | 34 /*************************************************************************/ |
35 /* */ | 35 /* */ |
36 /* <Section> */ | 36 /* <Section> */ |
(...skipping 13 matching lines...) Expand all Loading... |
50 /* <Order> */ | 50 /* <Order> */ |
51 /* FT_Byte */ | 51 /* FT_Byte */ |
52 /* FT_Bytes */ | 52 /* FT_Bytes */ |
53 /* FT_Char */ | 53 /* FT_Char */ |
54 /* FT_Int */ | 54 /* FT_Int */ |
55 /* FT_UInt */ | 55 /* FT_UInt */ |
56 /* FT_Int16 */ | 56 /* FT_Int16 */ |
57 /* FT_UInt16 */ | 57 /* FT_UInt16 */ |
58 /* FT_Int32 */ | 58 /* FT_Int32 */ |
59 /* FT_UInt32 */ | 59 /* FT_UInt32 */ |
| 60 /* FT_Int64 */ |
| 61 /* FT_UInt64 */ |
60 /* FT_Short */ | 62 /* FT_Short */ |
61 /* FT_UShort */ | 63 /* FT_UShort */ |
62 /* FT_Long */ | 64 /* FT_Long */ |
63 /* FT_ULong */ | 65 /* FT_ULong */ |
64 /* FT_Bool */ | 66 /* FT_Bool */ |
65 /* FT_Offset */ | 67 /* FT_Offset */ |
66 /* FT_PtrDist */ | 68 /* FT_PtrDist */ |
67 /* FT_String */ | 69 /* FT_String */ |
68 /* FT_Tag */ | 70 /* FT_Tag */ |
69 /* FT_Error */ | 71 /* FT_Error */ |
70 /* FT_Fixed */ | 72 /* FT_Fixed */ |
71 /* FT_Pointer */ | 73 /* FT_Pointer */ |
72 /* FT_Pos */ | 74 /* FT_Pos */ |
73 /* FT_Vector */ | 75 /* FT_Vector */ |
74 /* FT_BBox */ | 76 /* FT_BBox */ |
75 /* FT_Matrix */ | 77 /* FT_Matrix */ |
76 /* FT_FWord */ | 78 /* FT_FWord */ |
77 /* FT_UFWord */ | 79 /* FT_UFWord */ |
78 /* FT_F2Dot14 */ | 80 /* FT_F2Dot14 */ |
79 /* FT_UnitVector */ | 81 /* FT_UnitVector */ |
80 /* FT_F26Dot6 */ | 82 /* FT_F26Dot6 */ |
| 83 /* FT_Data */ |
81 /* */ | 84 /* */ |
| 85 /* FT_MAKE_TAG */ |
82 /* */ | 86 /* */ |
83 /* FT_Generic */ | 87 /* FT_Generic */ |
84 /* FT_Generic_Finalizer */ | 88 /* FT_Generic_Finalizer */ |
85 /* */ | 89 /* */ |
86 /* FT_Bitmap */ | 90 /* FT_Bitmap */ |
87 /* FT_Pixel_Mode */ | 91 /* FT_Pixel_Mode */ |
88 /* FT_Palette_Mode */ | 92 /* FT_Palette_Mode */ |
89 /* FT_Glyph_Format */ | 93 /* FT_Glyph_Format */ |
90 /* FT_IMAGE_TAG */ | 94 /* FT_IMAGE_TAG */ |
91 /* */ | 95 /* */ |
(...skipping 319 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
411 /* */ | 415 /* */ |
412 /* <FuncType> */ | 416 /* <FuncType> */ |
413 /* FT_Generic_Finalizer */ | 417 /* FT_Generic_Finalizer */ |
414 /* */ | 418 /* */ |
415 /* <Description> */ | 419 /* <Description> */ |
416 /* Describe a function used to destroy the `client' data of any */ | 420 /* Describe a function used to destroy the `client' data of any */ |
417 /* FreeType object. See the description of the @FT_Generic type for */ | 421 /* FreeType object. See the description of the @FT_Generic type for */ |
418 /* details of usage. */ | 422 /* details of usage. */ |
419 /* */ | 423 /* */ |
420 /* <Input> */ | 424 /* <Input> */ |
421 /* The address of the FreeType object which is under finalization. */ | 425 /* The address of the FreeType object that is under finalization. */ |
422 /* Its client data is accessed through its `generic' field. */ | 426 /* Its client data is accessed through its `generic' field. */ |
423 /* */ | 427 /* */ |
424 typedef void (*FT_Generic_Finalizer)(void* object); | 428 typedef void (*FT_Generic_Finalizer)(void* object); |
425 | 429 |
426 | 430 |
427 /*************************************************************************/ | 431 /*************************************************************************/ |
428 /* */ | 432 /* */ |
429 /* <Struct> */ | 433 /* <Struct> */ |
430 /* FT_Generic */ | 434 /* FT_Generic */ |
431 /* */ | 435 /* */ |
(...skipping 27 matching lines...) Expand all Loading... |
459 | 463 |
460 } FT_Generic; | 464 } FT_Generic; |
461 | 465 |
462 | 466 |
463 /*************************************************************************/ | 467 /*************************************************************************/ |
464 /* */ | 468 /* */ |
465 /* <Macro> */ | 469 /* <Macro> */ |
466 /* FT_MAKE_TAG */ | 470 /* FT_MAKE_TAG */ |
467 /* */ | 471 /* */ |
468 /* <Description> */ | 472 /* <Description> */ |
469 /* This macro converts four-letter tags which are used to label */ | 473 /* This macro converts four-letter tags that are used to label */ |
470 /* TrueType tables into an unsigned long to be used within FreeType. */ | 474 /* TrueType tables into an unsigned long, to be used within FreeType. */ |
471 /* */ | 475 /* */ |
472 /* <Note> */ | 476 /* <Note> */ |
473 /* The produced values *must* be 32-bit integers. Don't redefine */ | 477 /* The produced values *must* be 32-bit integers. Don't redefine */ |
474 /* this macro. */ | 478 /* this macro. */ |
475 /* */ | 479 /* */ |
476 #define FT_MAKE_TAG( _x1, _x2, _x3, _x4 ) \ | 480 #define FT_MAKE_TAG( _x1, _x2, _x3, _x4 ) \ |
477 (FT_Tag) \ | 481 (FT_Tag) \ |
478 ( ( (FT_ULong)_x1 << 24 ) | \ | 482 ( ( (FT_ULong)_x1 << 24 ) | \ |
479 ( (FT_ULong)_x2 << 16 ) | \ | 483 ( (FT_ULong)_x2 << 16 ) | \ |
480 ( (FT_ULong)_x3 << 8 ) | \ | 484 ( (FT_ULong)_x3 << 8 ) | \ |
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
560 /* */ | 564 /* */ |
561 /* tail :: The tail (last element) of doubly-linked list. */ | 565 /* tail :: The tail (last element) of doubly-linked list. */ |
562 /* */ | 566 /* */ |
563 typedef struct FT_ListRec_ | 567 typedef struct FT_ListRec_ |
564 { | 568 { |
565 FT_ListNode head; | 569 FT_ListNode head; |
566 FT_ListNode tail; | 570 FT_ListNode tail; |
567 | 571 |
568 } FT_ListRec; | 572 } FT_ListRec; |
569 | 573 |
| 574 /* */ |
570 | 575 |
571 /* */ | |
572 | 576 |
573 #define FT_IS_EMPTY( list ) ( (list).head == 0 ) | 577 #define FT_IS_EMPTY( list ) ( (list).head == 0 ) |
574 #define FT_BOOL( x ) ( (FT_Bool)( x ) ) | 578 #define FT_BOOL( x ) ( (FT_Bool)( x ) ) |
575 | 579 |
576 /* concatenate C tokens */ | 580 /* concatenate C tokens */ |
577 #define FT_ERR_XCAT( x, y ) x ## y | 581 #define FT_ERR_XCAT( x, y ) x ## y |
578 #define FT_ERR_CAT( x, y ) FT_ERR_XCAT( x, y ) | 582 #define FT_ERR_CAT( x, y ) FT_ERR_XCAT( x, y ) |
579 | 583 |
580 /* see `ftmoderr.h' for descriptions of the following macros */ | 584 /* see `ftmoderr.h' for descriptions of the following macros */ |
581 | 585 |
582 #define FT_ERR( e ) FT_ERR_CAT( FT_ERR_PREFIX, e ) | 586 #define FT_ERR( e ) FT_ERR_CAT( FT_ERR_PREFIX, e ) |
583 | 587 |
584 #define FT_ERROR_BASE( x ) ( (x) & 0xFF ) | 588 #define FT_ERROR_BASE( x ) ( (x) & 0xFF ) |
585 #define FT_ERROR_MODULE( x ) ( (x) & 0xFF00U ) | 589 #define FT_ERROR_MODULE( x ) ( (x) & 0xFF00U ) |
586 | 590 |
587 #define FT_ERR_EQ( x, e ) \ | 591 #define FT_ERR_EQ( x, e ) \ |
588 ( FT_ERROR_BASE( x ) == FT_ERROR_BASE( FT_ERR( e ) ) ) | 592 ( FT_ERROR_BASE( x ) == FT_ERROR_BASE( FT_ERR( e ) ) ) |
589 #define FT_ERR_NEQ( x, e ) \ | 593 #define FT_ERR_NEQ( x, e ) \ |
590 ( FT_ERROR_BASE( x ) != FT_ERROR_BASE( FT_ERR( e ) ) ) | 594 ( FT_ERROR_BASE( x ) != FT_ERROR_BASE( FT_ERR( e ) ) ) |
591 | 595 |
592 | 596 |
593 FT_END_HEADER | 597 FT_END_HEADER |
594 | 598 |
595 #endif /* __FTTYPES_H__ */ | 599 #endif /* __FTTYPES_H__ */ |
596 | 600 |
597 | 601 |
598 /* END */ | 602 /* END */ |
OLD | NEW |