File indexing completed on 2025-01-30 10:02:27
0001
0002
0003
0004
0005
0006
0007
0008
0009 #ifndef BOOST_WINAPI_HEAP_MEMORY_HPP_INCLUDED_
0010 #define BOOST_WINAPI_HEAP_MEMORY_HPP_INCLUDED_
0011
0012 #include <boost/winapi/basic_types.hpp>
0013 #include <boost/winapi/detail/header.hpp>
0014
0015 #ifdef BOOST_HAS_PRAGMA_ONCE
0016 #pragma once
0017 #endif
0018
0019 #if !defined( BOOST_USE_WINDOWS_H )
0020 #undef HeapAlloc
0021 extern "C" {
0022
0023 #if BOOST_WINAPI_PARTITION_DESKTOP_SYSTEM
0024 BOOST_WINAPI_IMPORT boost::winapi::DWORD_ BOOST_WINAPI_WINAPI_CC
0025 GetProcessHeaps(boost::winapi::DWORD_ NumberOfHeaps, boost::winapi::PHANDLE_ ProcessHeaps);
0026 #endif
0027
0028 BOOST_WINAPI_IMPORT_EXCEPT_WM boost::winapi::HANDLE_ BOOST_WINAPI_WINAPI_CC
0029 GetProcessHeap(BOOST_WINAPI_DETAIL_VOID);
0030
0031 BOOST_WINAPI_IMPORT_EXCEPT_WM boost::winapi::LPVOID_ BOOST_WINAPI_WINAPI_CC
0032 HeapAlloc(
0033 boost::winapi::HANDLE_ hHeap,
0034 boost::winapi::DWORD_ dwFlags,
0035 boost::winapi::SIZE_T_ dwBytes);
0036
0037 BOOST_WINAPI_IMPORT_EXCEPT_WM boost::winapi::BOOL_ BOOST_WINAPI_WINAPI_CC
0038 HeapFree(
0039 boost::winapi::HANDLE_ hHeap,
0040 boost::winapi::DWORD_ dwFlags,
0041 boost::winapi::LPVOID_ lpMem);
0042
0043 BOOST_WINAPI_IMPORT_EXCEPT_WM boost::winapi::LPVOID_ BOOST_WINAPI_WINAPI_CC
0044 HeapReAlloc(
0045 boost::winapi::HANDLE_ hHeap,
0046 boost::winapi::DWORD_ dwFlags,
0047 boost::winapi::LPVOID_ lpMem,
0048 boost::winapi::SIZE_T_ dwBytes);
0049
0050 #if BOOST_WINAPI_PARTITION_APP_SYSTEM
0051 BOOST_WINAPI_IMPORT_EXCEPT_WM boost::winapi::HANDLE_ BOOST_WINAPI_WINAPI_CC
0052 HeapCreate(
0053 boost::winapi::DWORD_ flOptions,
0054 boost::winapi::SIZE_T_ dwInitialSize,
0055 boost::winapi::SIZE_T_ dwMaximumSize);
0056
0057 BOOST_WINAPI_IMPORT_EXCEPT_WM boost::winapi::BOOL_ BOOST_WINAPI_WINAPI_CC
0058 HeapDestroy(boost::winapi::HANDLE_ hHeap);
0059 #endif
0060
0061 }
0062 #endif
0063
0064 namespace boost {
0065 namespace winapi {
0066
0067 #if BOOST_WINAPI_PARTITION_DESKTOP_SYSTEM
0068 using ::GetProcessHeaps;
0069 #endif
0070
0071 using ::GetProcessHeap;
0072 using ::HeapAlloc;
0073 using ::HeapFree;
0074 using ::HeapReAlloc;
0075
0076 #if BOOST_WINAPI_PARTITION_APP_SYSTEM
0077 using ::HeapCreate;
0078 using ::HeapDestroy;
0079 #endif
0080
0081 }
0082 }
0083
0084 #include <boost/winapi/detail/footer.hpp>
0085
0086 #endif