blob: 964ba4bf8616a08b5642cf98ec00f14e680b64de [file] [log] [blame]
Alexandre Julliarde2abbb11995-03-19 17:39:39 +00001/*
2 * Local heap declarations
3 *
4 * Copyright 1995 Alexandre Julliard
Alexandre Julliard0799c1a2002-03-09 23:29:33 +00005 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
10 *
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
15 *
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Alexandre Julliarde2abbb11995-03-19 17:39:39 +000019 */
20
Alexandre Julliardfa68b751995-04-03 16:55:37 +000021#ifndef __WINE_LOCAL_H
22#define __WINE_LOCAL_H
Alexandre Julliarde2abbb11995-03-19 17:39:39 +000023
Jim Aston2e1cafa1999-03-14 16:35:05 +000024#include "windef.h"
Alexandre Julliard83f52d12000-09-26 22:20:14 +000025#include "wine/windef16.h"
Alexandre Julliarde2abbb11995-03-19 17:39:39 +000026
27 /* These function are equivalent to the Local* API functions, */
28 /* excepted that they need DS as the first parameter. This */
29 /* allows managing several heaps from the emulation library. */
30
Alexandre Julliard1285c2f1996-05-06 16:06:24 +000031extern HLOCAL16 LOCAL_Alloc( HANDLE16 ds, UINT16 flags, WORD size );
32extern HLOCAL16 LOCAL_ReAlloc( HANDLE16 ds, HLOCAL16 handle,
33 WORD size, UINT16 flags );
34extern HLOCAL16 LOCAL_Free( HANDLE16 ds, HLOCAL16 handle );
35extern HLOCAL16 LOCAL_Handle( HANDLE16 ds, WORD addr );
36extern UINT16 LOCAL_Size( HANDLE16 ds, HLOCAL16 handle );
37extern UINT16 LOCAL_Flags( HANDLE16 ds, HLOCAL16 handle );
38extern UINT16 LOCAL_HeapSize( HANDLE16 ds );
39extern UINT16 LOCAL_CountFree( HANDLE16 ds );
Alexandre Julliard16e92eb2000-10-29 01:23:19 +000040extern void *LOCAL_Lock( HANDLE16 ds, HLOCAL16 handle );
Alexandre Julliard3051b641996-07-05 17:14:13 +000041extern BOOL16 LOCAL_Unlock( HANDLE16 ds, HLOCAL16 handle );
Alexandre Julliard03468f71998-02-15 19:40:49 +000042extern WORD LOCAL_Compact( HANDLE16 ds, UINT16 minfree, UINT16 flags );
Alexandre Julliarde2abbb11995-03-19 17:39:39 +000043
Alexandre Julliardfa68b751995-04-03 16:55:37 +000044#endif /* __WINE_LOCAL_H */