gdiplusinit.h 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. /*
  2. * gdiplusinit.h
  3. *
  4. * GDI+ Initialization
  5. *
  6. * This file is part of the w32api package.
  7. *
  8. * Contributors:
  9. * Created by Markus Koenig <markus@stber-koenig.de>
  10. *
  11. * THIS SOFTWARE IS NOT COPYRIGHTED
  12. *
  13. * This source code is offered for use in the public domain. You may
  14. * use, modify or distribute it freely.
  15. *
  16. * This code is distributed in the hope that it will be useful but
  17. * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
  18. * DISCLAIMED. This includes but is not limited to warranties of
  19. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  20. *
  21. */
  22. #ifndef __GDIPLUS_INIT_H
  23. #define __GDIPLUS_INIT_H
  24. #if __GNUC__ >=3
  25. #pragma GCC system_header
  26. #endif
  27. typedef struct GdiplusStartupInput {
  28. UINT32 GdiplusVersion;
  29. DebugEventProc DebugEventCallback;
  30. BOOL SuppressBackgroundThread;
  31. BOOL SuppressExternalCodecs;
  32. #ifdef __cplusplus
  33. GdiplusStartupInput(DebugEventProc debugEventCallback = NULL,
  34. BOOL suppressBackgroundThread = FALSE,
  35. BOOL suppressExternalCodecs = FALSE):
  36. GdiplusVersion(1),
  37. DebugEventCallback(debugEventCallback),
  38. SuppressBackgroundThread(suppressBackgroundThread),
  39. SuppressExternalCodecs(suppressExternalCodecs) {}
  40. #endif /* __cplusplus */
  41. } GdiplusStartupInput;
  42. typedef GpStatus WINGDIPAPI (*NotificationHookProc)(ULONG_PTR *token);
  43. typedef VOID WINGDIPAPI (*NotificationUnhookProc)(ULONG_PTR token);
  44. typedef struct GdiplusStartupOutput {
  45. NotificationHookProc NotificationHook;
  46. NotificationUnhookProc NotificationUnhook;
  47. #ifdef __cplusplus
  48. GdiplusStartupOutput():
  49. NotificationHook(NULL),
  50. NotificationUnhook(NULL) {}
  51. #endif /* __cplusplus */
  52. } GdiplusStartupOutput;
  53. #ifdef __cplusplus
  54. extern "C" {
  55. #endif
  56. GpStatus WINGDIPAPI GdiplusStartup(ULONG_PTR*,GDIPCONST GdiplusStartupInput*,GdiplusStartupOutput*);
  57. VOID WINGDIPAPI GdiplusShutdown(ULONG_PTR);
  58. GpStatus WINGDIPAPI GdiplusNotificationHook(ULONG_PTR*);
  59. VOID WINGDIPAPI GdiplusNotificationUnhook(ULONG_PTR);
  60. #ifdef __cplusplus
  61. } /* extern "C" */
  62. #endif
  63. #endif /* __GDIPLUS_INIT_H */