Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

121 lines
2.2 KiB

  1. /******************************Module*Header*******************************\
  2. * Module Name: fd.h
  3. *
  4. * file which is going to be included by the most *.c files in this directory.
  5. * Supplies basic types, debugging stuff, error logging and checking stuff,
  6. * error codes, usefull macros etc.
  7. *
  8. * Copyright (c) 1990-1995 Microsoft Corporation
  9. \**************************************************************************/
  10. #define SUPPORT_OEM
  11. #define IFI_PRIVATE
  12. #include <stddef.h>
  13. #include <stdarg.h>
  14. #include <excpt.h>
  15. #include <windef.h>
  16. #include <wingdi.h>
  17. #include <winddi.h>
  18. typedef ULONG W32PID;
  19. #include "mapfile.h"
  20. #include "winres.h"
  21. #include "service.h" // string service routines
  22. #include "fontfile.h"
  23. #include "winfont.h"
  24. #include "fondrv.h"
  25. #define abs(x) max((x),-(x))
  26. #if DBG
  27. VOID
  28. VtfdDebugPrint(
  29. PCHAR DebugMessage,
  30. ...
  31. );
  32. #define RIP(x) { VtfdDebugPrint(x); EngDebugBreak();}
  33. #define ASSERTDD(x,y) { if (!(x)) { VtfdDebugPrint(y); EngDebugBreak();} }
  34. #define WARNING(x) VtfdDebugPrint(x)
  35. #else
  36. #define RIP(x)
  37. #define ASSERTDD(x,y)
  38. #define WARNING(x)
  39. #endif
  40. BOOL vtfdLoadFontFile (
  41. ULONG_PTR iFile, PVOID pvView, ULONG cjView, HFF *phff
  42. );
  43. BOOL
  44. vtfdUnloadFontFile (
  45. HFF hff
  46. );
  47. LONG
  48. vtfdQueryFontCaps (
  49. ULONG culCaps,
  50. PULONG pulCaps
  51. );
  52. LONG
  53. vtfdQueryFontFile (
  54. HFF hff,
  55. ULONG ulMode,
  56. ULONG cjBuf,
  57. PULONG pulBuf
  58. );
  59. PIFIMETRICS
  60. vtfdQueryFont (
  61. DHPDEV dhpdev,
  62. HFF hff,
  63. ULONG iFace,
  64. ULONG_PTR *pid
  65. );
  66. PVOID
  67. vtfdQueryFontTree (
  68. DHPDEV dhpdev,
  69. HFF hff,
  70. ULONG iFace,
  71. ULONG iMode,
  72. ULONG_PTR *pid
  73. );
  74. LONG vtfdQueryFontData
  75. (
  76. FONTOBJ *pfo,
  77. ULONG iMode,
  78. HGLYPH hg,
  79. GLYPHDATA *pgd,
  80. PVOID pv,
  81. ULONG cjSize
  82. );
  83. VOID vtfdDestroyFont(FONTOBJ *pfo);
  84. HFC vtfdOpenFontContext(FONTOBJ *pfo);
  85. BOOL vtfdCloseFontContext(HFC hfc);
  86. BOOL vtfdQueryAdvanceWidths
  87. (
  88. FONTOBJ *pfo,
  89. ULONG iMode,
  90. HGLYPH *phg,
  91. LONG *plWidths,
  92. ULONG cGlyphs
  93. );
  94. extern HSEMAPHORE ghsemVTFD;