#![cfg(windows)]
extern crate winapi;
use winapi::*;
extern "system" {
pub fn EmptyWorkingSet(hProcess: HANDLE) -> BOOL;
pub fn EnumDeviceDrivers(lpImageBase: *mut LPVOID, cb: DWORD, lpcbNeeded: LPDWORD) -> BOOL;
pub fn EnumPageFilesA(pCallBackRoutine: PENUM_PAGE_FILE_CALLBACKA, pContext: LPVOID) -> BOOL;
pub fn EnumPageFilesW(pCallBackRoutine: PENUM_PAGE_FILE_CALLBACKW, pContext: LPVOID) -> BOOL;
pub fn EnumProcessModules(
hProcess: HANDLE, lphModule: *mut HMODULE, cb: DWORD, lpcbNeeded: LPDWORD,
) -> BOOL;
pub fn EnumProcessModulesEx(
hProcess: HANDLE, lphModule: *mut HMODULE, cb: DWORD, lpcbNeeded: LPDWORD,
dwFilterFlag: DWORD,
) -> BOOL;
pub fn EnumProcesses(lpidProcess: *mut DWORD, cb: DWORD, lpcbNeeded: LPDWORD) -> BOOL;
pub fn GetDeviceDriverBaseNameA(ImageBase: LPVOID, lpFilename: LPSTR, nSize: DWORD) -> DWORD;
pub fn GetDeviceDriverBaseNameW(ImageBase: LPVOID, lpFilename: LPWSTR, nSize: DWORD) -> DWORD;
pub fn GetDeviceDriverFileNameA(ImageBase: LPVOID, lpFilename: LPSTR, nSize: DWORD) -> DWORD;
pub fn GetDeviceDriverFileNameW(ImageBase: LPVOID, lpFilename: LPWSTR, nSize: DWORD) -> DWORD;
pub fn GetMappedFileNameA(
hProcess: HANDLE, lpv: LPVOID, lpFilename: LPSTR, nSize: DWORD,
) -> DWORD;
pub fn GetMappedFileNameW(
hProcess: HANDLE, lpv: LPVOID, lpFilename: LPWSTR, nSize: DWORD,
) -> DWORD;
pub fn GetModuleBaseNameA(
hProcess: HANDLE, hModule: HMODULE, lpBaseName: LPSTR, nSize: DWORD,
) -> DWORD;
pub fn GetModuleBaseNameW(
hProcess: HANDLE, hModule: HMODULE, lpBaseName: LPWSTR, nSize: DWORD,
) -> DWORD;
pub fn GetModuleFileNameExA(
hProcess: HANDLE, hModule: HMODULE, lpFilename: LPSTR, nSize: DWORD,
) -> DWORD;
pub fn GetModuleFileNameExW(
hProcess: HANDLE, hModule: HMODULE, lpFilename: LPWSTR, nSize: DWORD,
) -> DWORD;
pub fn GetModuleInformation(
hProcess: HANDLE, hModule: HMODULE, lpmodinfo: LPMODULEINFO, cb: DWORD,
) -> BOOL;
pub fn GetPerformanceInfo(pPerformanceInformation: PPERFORMANCE_INFORMATION, cb: DWORD) -> BOOL;
pub fn GetProcessImageFileNameA(
hProcess: HANDLE, lpImageFileName: LPSTR, nSize: DWORD,
) -> DWORD;
pub fn GetProcessImageFileNameW(
hProcess: HANDLE, lpImageFileName: LPWSTR, nSize: DWORD,
) -> DWORD;
pub fn GetProcessMemoryInfo(
hProcess: HANDLE, ppsmemCounters: PPROCESS_MEMORY_COUNTERS, cb: DWORD,
) -> BOOL;
pub fn GetWsChanges(
hProcess: HANDLE, lpWatchInfo: PPSAPI_WS_WATCH_INFORMATION, cb: DWORD,
) -> BOOL;
pub fn GetWsChangesEx(
hProcess: HANDLE, lpWatchInfoEx: PPSAPI_WS_WATCH_INFORMATION_EX, cb: PDWORD,
) -> BOOL;
pub fn InitializeProcessForWsWatch(hProcess: HANDLE) -> BOOL;
pub fn QueryWorkingSet(hProcess: HANDLE, pv: PVOID, cb: DWORD) -> BOOL;
pub fn QueryWorkingSetEx(hProcess: HANDLE, pv: PVOID, cb: DWORD) -> BOOL;
}