home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus Leser 19 / Amiga Plus Leser CD 19.iso / Tools / Freeware / ttengine-5.0 / Developer / include / inline / ttengine.h < prev   
Encoding:
C/C++ Source or Header  |  2002-11-13  |  2.7 KB  |  81 lines

  1. #ifndef _INLINE_TTENGINE_H
  2. #define _INLINE_TTENGINE_H
  3.  
  4. #ifndef __INLINE_MACROS_H
  5. #include <inline/macros.h>
  6. #endif
  7.  
  8. #ifndef TTENGINE_BASE_NAME
  9. #define TTENGINE_BASE_NAME TTEngineBase
  10. #endif
  11.  
  12. #define TT_OpenFontA(taglist) \
  13.     LP1(0x1e, APTR, TT_OpenFontA, struct TagItem *, taglist, a0, \
  14.     , TTENGINE_BASE_NAME)
  15.  
  16. #ifndef NO_INLINE_STDARG
  17. #define TT_OpenFont(tags...) \
  18.     ({ULONG _tags[] = {tags}; TT_OpenFontA((struct TagItem *) _tags);})
  19. #endif
  20.  
  21. #define TT_SetFont(rp, font) \
  22.     LP2(0x24, BOOL, TT_SetFont, struct RastPort *, rp, a1, APTR, font, a0, \
  23.     , TTENGINE_BASE_NAME)
  24.  
  25. #define TT_CloseFont(font) \
  26.     LP1NR(0x2a, TT_CloseFont, APTR, font, a0, \
  27.     , TTENGINE_BASE_NAME)
  28.  
  29. #define TT_Text(rp, string, count) \
  30.     LP3NR(0x30, TT_Text, struct RastPort *, rp, a1, APTR, string, a0, ULONG, count, d0, \
  31.     , TTENGINE_BASE_NAME)
  32.  
  33. #define TT_SetAttrsA(rp, taglist) \
  34.     LP2(0x36, ULONG, TT_SetAttrsA, struct RastPort *, rp, a1, struct TagItem *, taglist, a0, \
  35.     , TTENGINE_BASE_NAME)
  36.  
  37. #ifndef NO_INLINE_STDARG
  38. #define TT_SetAttrs(rp, tags...) \
  39.     ({ULONG _tags[] = {tags}; TT_SetAttrsA((rp), (struct TagItem *) _tags);})
  40. #endif
  41.  
  42. #define TT_GetAttrsA(rp, taglist) \
  43.     LP2(0x3c, ULONG, TT_GetAttrsA, struct RastPort *, rp, a1, struct TagItem *, taglist, a0, \
  44.     , TTENGINE_BASE_NAME)
  45.  
  46. #ifndef NO_INLINE_STDARG
  47. #define TT_GetAttrs(rp, tags...) \
  48.     ({ULONG _tags[] = {tags}; TT_GetAttrsA((rp), (struct TagItem *) _tags);})
  49. #endif
  50.  
  51. #define TT_TextLength(rp, string, count) \
  52.     LP3(0x42, ULONG, TT_TextLength, struct RastPort *, rp, a1, APTR, string, a0, ULONG, count, d0, \
  53.     , TTENGINE_BASE_NAME)
  54.  
  55. #define TT_TextExtent(rp, string, count, te) \
  56.     LP4NR(0x48, TT_TextExtent, struct RastPort *, rp, a1, APTR, string, a0, WORD, count, d0, struct TextExtent *, te, a2, \
  57.     , TTENGINE_BASE_NAME)
  58.  
  59. #define TT_TextFit(rp, string, count, te, tec, dir, cwidth, cheight) \
  60.     LP8(0x4e, ULONG, TT_TextFit, struct RastPort *, rp, a1, APTR, string, a0, UWORD, count, d0, struct TextExtent *, te, a2, struct TextExtent *, tec, a3, WORD, dir, d1, UWORD, cwidth, d2, UWORD, cheight, d3, \
  61.     , TTENGINE_BASE_NAME)
  62.  
  63. #define TT_GetPixmapA(font, string, count, taglist) \
  64.     LP4(0x54, struct TT_Pixmap *, TT_GetPixmapA, APTR, font, a1, APTR, string, a2, ULONG, count, d0, struct TagItem *, taglist, a0, \
  65.     , TTENGINE_BASE_NAME)
  66.  
  67. #ifndef NO_INLINE_STDARG
  68. #define TT_GetPixmap(font, string, count, tags...) \
  69.     ({ULONG _tags[] = {tags}; TT_GetPixmapA((font), (string), (count), (struct TagItem *) _tags);})
  70. #endif
  71.  
  72. #define TT_FreePixmap(pixmap) \
  73.     LP1NR(0x5a, TT_FreePixmap, struct TT_Pixmap *, pixmap, a0, \
  74.     , TTENGINE_BASE_NAME)
  75.  
  76. #define TT_DoneRastPort(rp) \
  77.     LP1NR(0x60, TT_DoneRastPort, struct RastPort *, rp, a1, \
  78.     , TTENGINE_BASE_NAME)
  79.  
  80. #endif /*  _INLINE_TTENGINE_H  */
  81.