Release 940614
[wine] / include / task.h
1 /*
2  * Task definitions
3  */
4
5 #ifndef TASK_H
6 #define TASK_H
7
8 #include "toolhelp.h"
9
10 typedef HANDLE HGLOBAL;
11
12 typedef struct {
13         DWORD           dwSize;
14         HTASK           hTask;
15         HTASK           hTaskParent;
16         HINSTANCE       hInst;
17         HMODULE         hModule;
18         WORD            wSS;
19         WORD            wSP;
20         WORD            wStackTop;
21         WORD            wStackMinimum;
22         WORD            wStackBottom;
23         WORD            wcEvents;
24         HGLOBAL         hQueue;
25         char            szModule[MAX_MODULE_NAME + 1];
26         WORD            wPSPOffset;
27         HANDLE          hNext;
28 } TASKENTRY;
29 typedef TASKENTRY *LPTASKENTRY;
30
31 typedef struct {
32         TASKENTRY       te;
33         int                     unix_pid;
34         HICON           hIcon;
35         HWND            *lpWndList;
36         void            *lpPrevTask;
37         void            *lpNextTask;
38 } WINETASKENTRY;
39 typedef WINETASKENTRY *LPWINETASKENTRY;
40
41 #define MAXWIN_PER_TASK  256
42
43 HANDLE CreateNewTask(HINSTANCE hInst, HTASK hTaskParent);
44 BOOL RemoveWindowFromTask(HTASK hTask, HWND hWnd);
45 BOOL AddWindowToTask(HTASK hTask, HWND hWnd);
46
47 #endif /* TASK_H */
48