|  | /* | 
|  | * gdiplusinit.h | 
|  | * | 
|  | * GDI+ Initialization | 
|  | * | 
|  | * This file is part of the w32api package. | 
|  | * | 
|  | * Contributors: | 
|  | *   Created by Markus Koenig <markus@stber-koenig.de> | 
|  | * | 
|  | * THIS SOFTWARE IS NOT COPYRIGHTED | 
|  | * | 
|  | * This source code is offered for use in the public domain. You may | 
|  | * use, modify or distribute it freely. | 
|  | * | 
|  | * This code is distributed in the hope that it will be useful but | 
|  | * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY | 
|  | * DISCLAIMED. This includes but is not limited to warranties of | 
|  | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | 
|  | * | 
|  | */ | 
|  |  | 
|  | #ifndef __GDIPLUS_INIT_H | 
|  | #define __GDIPLUS_INIT_H | 
|  | #if __GNUC__ >=3 | 
|  | #pragma GCC system_header | 
|  | #endif | 
|  |  | 
|  | typedef struct GdiplusStartupInput { | 
|  | UINT32 GdiplusVersion; | 
|  | DebugEventProc DebugEventCallback; | 
|  | BOOL SuppressBackgroundThread; | 
|  | BOOL SuppressExternalCodecs; | 
|  |  | 
|  | #ifdef __cplusplus | 
|  | GdiplusStartupInput(DebugEventProc debugEventCallback = NULL, | 
|  | BOOL suppressBackgroundThread = FALSE, | 
|  | BOOL suppressExternalCodecs = FALSE): | 
|  | GdiplusVersion(1), | 
|  | DebugEventCallback(debugEventCallback), | 
|  | SuppressBackgroundThread(suppressBackgroundThread), | 
|  | SuppressExternalCodecs(suppressExternalCodecs) {} | 
|  | #endif /* __cplusplus */ | 
|  | } GdiplusStartupInput; | 
|  |  | 
|  | typedef GpStatus WINGDIPAPI (*NotificationHookProc)(ULONG_PTR *token); | 
|  | typedef VOID WINGDIPAPI (*NotificationUnhookProc)(ULONG_PTR token); | 
|  |  | 
|  | typedef struct GdiplusStartupOutput { | 
|  | NotificationHookProc NotificationHook; | 
|  | NotificationUnhookProc NotificationUnhook; | 
|  |  | 
|  | #ifdef __cplusplus | 
|  | GdiplusStartupOutput(): | 
|  | NotificationHook(NULL), | 
|  | NotificationUnhook(NULL) {} | 
|  | #endif /* __cplusplus */ | 
|  | } GdiplusStartupOutput; | 
|  |  | 
|  | #ifdef __cplusplus | 
|  | extern "C" { | 
|  | #endif | 
|  |  | 
|  | GpStatus WINGDIPAPI GdiplusStartup(ULONG_PTR*,GDIPCONST GdiplusStartupInput*,GdiplusStartupOutput*); | 
|  | VOID WINGDIPAPI GdiplusShutdown(ULONG_PTR); | 
|  | GpStatus WINGDIPAPI GdiplusNotificationHook(ULONG_PTR*); | 
|  | VOID WINGDIPAPI GdiplusNotificationUnhook(ULONG_PTR); | 
|  |  | 
|  | #ifdef __cplusplus | 
|  | }  /* extern "C" */ | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif /* __GDIPLUS_INIT_H */ |