local_memory.hpp 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. /*
  2. * Copyright 2010 Vicente J. Botet Escriba
  3. * Copyright 2015 Andrey Semashev
  4. *
  5. * Distributed under the Boost Software License, Version 1.0.
  6. * See http://www.boost.org/LICENSE_1_0.txt
  7. */
  8. #ifndef BOOST_WINAPI_LOCAL_MEMORY_HPP_INCLUDED_
  9. #define BOOST_WINAPI_LOCAL_MEMORY_HPP_INCLUDED_
  10. #include <boost/winapi/basic_types.hpp>
  11. #ifdef BOOST_HAS_PRAGMA_ONCE
  12. #pragma once
  13. #endif
  14. #if BOOST_WINAPI_PARTITION_APP_SYSTEM
  15. #if !defined( BOOST_USE_WINDOWS_H )
  16. namespace boost { namespace winapi {
  17. typedef HANDLE_ HLOCAL_;
  18. }}
  19. extern "C" {
  20. BOOST_SYMBOL_IMPORT boost::winapi::HLOCAL_ BOOST_WINAPI_WINAPI_CC
  21. LocalAlloc(
  22. boost::winapi::UINT_ uFlags,
  23. boost::winapi::SIZE_T_ uBytes);
  24. BOOST_SYMBOL_IMPORT boost::winapi::HLOCAL_ BOOST_WINAPI_WINAPI_CC
  25. LocalReAlloc(
  26. boost::winapi::HLOCAL_ hMem,
  27. boost::winapi::SIZE_T_ uBytes,
  28. boost::winapi::UINT_ uFlags);
  29. BOOST_SYMBOL_IMPORT boost::winapi::HLOCAL_ BOOST_WINAPI_WINAPI_CC LocalFree(boost::winapi::HLOCAL_ hMem);
  30. } // extern "C"
  31. #endif
  32. namespace boost {
  33. namespace winapi {
  34. #if defined( BOOST_USE_WINDOWS_H )
  35. typedef ::HLOCAL HLOCAL_;
  36. #endif
  37. using ::LocalAlloc;
  38. using ::LocalReAlloc;
  39. using ::LocalFree;
  40. }
  41. }
  42. #endif // BOOST_WINAPI_PARTITION_APP_SYSTEM
  43. #endif // BOOST_WINAPI_LOCAL_MEMORY_HPP_INCLUDED_