###############################################################################
# Copyright (c) 2000, 2007 IBM Corporation and others.
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Eclipse Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/epl-v10.html
#
# Contributors:
#     IBM Corporation - initial API and implementation
###############################################################################
org_eclipse_swt_internal_win32_ICONINFO=
ICONINFO_fIcon=
ICONINFO_xHotspot=
ICONINFO_yHotspot=
ICONINFO_hbmMask=cast=HBITMAP
ICONINFO_hbmColor=cast=HBITMAP

org_eclipse_swt_internal_win32_POINT=
POINT_x=
POINT_y=

org_eclipse_swt_internal_win32_PROCESS_1INFORMATION=
PROCESS_INFORMATION_hProcess=cast=HANDLE
PROCESS_INFORMATION_hThread=cast=HANDLE
PROCESS_INFORMATION_dwProcessId=
PROCESS_INFORMATION_dwThreadId=

org_eclipse_swt_internal_win32_SHELLEXECUTEINFOW=
SHELLEXECUTEINFOW_cbSize=
SHELLEXECUTEINFOW_fMask=
SHELLEXECUTEINFOW_hwnd=cast=HWND
SHELLEXECUTEINFOW_lpVerb=cast=(LPWSTR)
SHELLEXECUTEINFOW_lpFile=cast=(LPWSTR)
SHELLEXECUTEINFOW_lpParameters=cast=(LPWSTR)
SHELLEXECUTEINFOW_lpDirectory=cast=(LPWSTR)
SHELLEXECUTEINFOW_nShow=
SHELLEXECUTEINFOW_hInstApp=cast=(HINSTANCE)
SHELLEXECUTEINFOW_lpIDList=cast=(LPVOID)
SHELLEXECUTEINFOW_lpClass=cast=(LPWSTR)
SHELLEXECUTEINFOW_hkeyClass=cast=HKEY
SHELLEXECUTEINFOW_dwHotKey=
SHELLEXECUTEINFOW_hIcon=cast=HANDLE
SHELLEXECUTEINFOW_hProcess=cast=HANDLE

org_eclipse_swt_internal_win32_STARTUPINFOW=
STARTUPINFOW_cb=
STARTUPINFOW_lpReserved=cast=LPWSTR
STARTUPINFOW_lpDesktop=cast=LPWSTR
STARTUPINFOW_lpTitle=cast=LPWSTR
STARTUPINFOW_dwX=
STARTUPINFOW_dwY=
STARTUPINFOW_dwXSize=
STARTUPINFOW_dwYSize=
STARTUPINFOW_dwXCountChars=
STARTUPINFOW_dwYCountChars=
STARTUPINFOW_dwFillAttribute=
STARTUPINFOW_dwFlags=
STARTUPINFOW_wShowWindow=
STARTUPINFOW_cbReserved2=
STARTUPINFOW_lpReserved2=cast=LPBYTE
STARTUPINFOW_hStdInput=cast=(HANDLE)
STARTUPINFOW_hStdOutput=cast=(HANDLE)
STARTUPINFOW_hStdError=cast=(HANDLE)

org_eclipse_swt_internal_win32_Win32=
Win32_CloseHandle=
Win32_CloseHandle_0=cast=HANDLE

Win32_CreateCursor=
Win32_CreateCursor_0=cast=(HINSTANCE)
Win32_CreateCursor_1=
Win32_CreateCursor_2=
Win32_CreateCursor_3=
Win32_CreateCursor_4=
Win32_CreateCursor_5=cast=(CONST VOID *),flags=no_out critical
Win32_CreateCursor_6=cast=(CONST VOID *),flags=no_out critical

Win32_CreateIconIndirect=
Win32_CreateIconIndirect_0=

Win32_CreateProcessW=
Win32_CreateProcessW_0=cast=LPCWSTR
Win32_CreateProcessW_1=cast=LPWSTR
Win32_CreateProcessW_2=cast=LPSECURITY_ATTRIBUTES
Win32_CreateProcessW_3=cast=LPSECURITY_ATTRIBUTES
Win32_CreateProcessW_4=
Win32_CreateProcessW_5=cast=DWORD
Win32_CreateProcessW_6=cast=LPVOID
Win32_CreateProcessW_7=cast=LPCWSTR
Win32_CreateProcessW_8=cast=LPSTARTUPINFOW
Win32_CreateProcessW_9=cast=LPPROCESS_INFORMATION

Win32_DeleteObject=
Win32_DeleteObject_0=cast=(HGDIOBJ)

Win32_DestroyIcon=
Win32_DestroyIcon_0=cast=HICON

Win32_EnableWindow=
Win32_EnableWindow_0=cast=HWND
Win32_EnableWindow_1=

Win32_ExtractIconExW=
Win32_ExtractIconExW_0=cast=LPCWSTR
Win32_ExtractIconExW_1=
Win32_ExtractIconExW_2=cast=(HICON*)
Win32_ExtractIconExW_3=cast=(HICON*)
Win32_ExtractIconExW_4=cast=UINT

Win32_GetCursorPos=
Win32_GetCursorPos_0=cast=LPPOINT

Win32_GetIconInfo=
Win32_GetIconInfo_0=cast=HICON
Win32_GetIconInfo_1=

Win32_GetKeyboardState=
Win32_GetKeyboardState_0=cast=(PBYTE)

Win32_GetModuleHandleW=
Win32_GetModuleHandleW_0=cast=LPCWSTR

Win32_GetProcessHeap=

Win32_HeapAlloc=
Win32_HeapAlloc_0=cast=(HANDLE)
Win32_HeapAlloc_1=
Win32_HeapAlloc_2=

Win32_HeapFree=
Win32_HeapFree_0=cast=(HANDLE)
Win32_HeapFree_1=
Win32_HeapFree_2=cast=(LPVOID)

Win32_LoadImage=
Win32_LoadImage_0=cast=HINSTANCE
Win32_LoadImage_1=cast=LPCTSTR
Win32_LoadImage_2=cast=UINT
Win32_LoadImage_3=
Win32_LoadImage_4=
Win32_LoadImage_5=cast=UINT

Win32_MapVirtualKeyW=
Win32_MapVirtualKeyW_0=
Win32_MapVirtualKeyW_1=

Win32_MoveMemory=
Win32_MoveMemory_0=cast=PVOID
Win32_MoveMemory_1=cast=CONST VOID *,flags=no_out critical
Win32_MoveMemory_2=

Win32_OleInitialize=
Win32_OleInitialize_0=cast=LPVOID

Win32_OleUninitialize=

Win32_PROCESS_INFORMATION_sizeof=

Win32_SHELLEXECUTEINFOW_sizeof=

Win32_STARTUPINFOW_sizeof=

Win32_SetCursorPos=
Win32_SetCursorPos_0=
Win32_SetCursorPos_1=

Win32_ShellExecuteExW=
Win32_ShellExecuteExW_0=cast=(LPSHELLEXECUTEINFOW)

Win32_ToUnicode=
Win32_ToUnicode_0=
Win32_ToUnicode_1=
Win32_ToUnicode_2=cast=(PBYTE)
Win32_ToUnicode_3=cast=(LPWSTR)
Win32_ToUnicode_4=
Win32_ToUnicode_5=


