| 1 | /* $Id: dde_mem.h,v 1.1 1999-05-24 20:19:10 ktk Exp $ */
 | 
|---|
| 2 | 
 | 
|---|
| 3 | /***************************************************************************
 | 
|---|
| 4 |  * Copyright 1995, Technion, Israel Institute of Technology
 | 
|---|
| 5 |  * Electrical Eng, Software Lab.
 | 
|---|
| 6 |  * Author:    Michael Veksler.
 | 
|---|
| 7 |  ***************************************************************************
 | 
|---|
| 8 |  * File:      dde_mem.h
 | 
|---|
| 9 |  * Purpose :  shared DDE memory functionality for DDE
 | 
|---|
| 10 |  ***************************************************************************
 | 
|---|
| 11 |  */
 | 
|---|
| 12 | #ifndef __WINE_DDE_MEM_H
 | 
|---|
| 13 | #define __WINE_DDE_MEM_H
 | 
|---|
| 14 | 
 | 
|---|
| 15 | #ifdef CONFIG_IPC
 | 
|---|
| 16 | 
 | 
|---|
| 17 | #include "windef.h"
 | 
|---|
| 18 | #include "global.h"
 | 
|---|
| 19 | #include "shm_block.h"
 | 
|---|
| 20 | 
 | 
|---|
| 21 | #define DDE_HANDLES 0x0400
 | 
|---|
| 22 | #define is_dde_handle(block) ( (block) >= (1<<15)  &&  (block) < (1<<15)+DDE_HANDLES )
 | 
|---|
| 23 | typedef struct {
 | 
|---|
| 24 |     int shmid;
 | 
|---|
| 25 |     REL_PTR rel;
 | 
|---|
| 26 | }DDE_HWND;
 | 
|---|
| 27 | 
 | 
|---|
| 28 | WORD DDE_SyncHandle(HGLOBAL16 handle, WORD sel);
 | 
|---|
| 29 | void *DDE_malloc(unsigned int flags,unsigned long size, SHMDATA *shmdata);
 | 
|---|
| 30 | HANDLE16 DDE_GlobalReAlloc(WORD,long,WORD);
 | 
|---|
| 31 | HGLOBAL16 DDE_GlobalFree(HGLOBAL16 block);
 | 
|---|
| 32 | void *DDE_AttachHandle(HGLOBAL16 handle, SEGPTR *segptr);
 | 
|---|
| 33 | WORD DDE_GlobalHandleToSel( HGLOBAL16 handle );
 | 
|---|
| 34 | int DDE_GlobalUnlock(int);
 | 
|---|
| 35 | HANDLE16 DDE_GlobalSize(WORD);
 | 
|---|
| 36 | HANDLE16 DDE_GlobalHandle(WORD);
 | 
|---|
| 37 | HANDLE16 DDE_GlobalFlags(WORD);
 | 
|---|
| 38 | 
 | 
|---|
| 39 | #endif  /* CONFIG_IPC */
 | 
|---|
| 40 | 
 | 
|---|
| 41 | #endif /* __WINE_DDE_MEM_H */
 | 
|---|