Synchronize up to trunk's revision r57784.
[reactos.git] / include / reactos / subsys / win / console.h
1 /*
2 * COPYRIGHT: See COPYING in the top level directory
3 * PROJECT: ReactOS Client/Server Runtime SubSystem
4 * FILE: include/reactos/subsys/win/console.h
5 * PURPOSE: Public definitions for Console API Clients
6 * PROGRAMMERS: Hermes Belusca-Maito (hermes.belusca@sfr.fr)
7 */
8
9 #ifndef _CONSOLE_H
10 #define _CONSOLE_H
11
12 #pragma once
13
14 #define ConsoleGetPerProcessData(pcsrprocess) \
15 ((PCONSOLE_PROCESS_DATA)((pcsrprocess)->ServerData[CONSRV_SERVERDLL_INDEX]))
16
17
18 typedef struct _CONSOLE_PROCESS_DATA
19 {
20 LIST_ENTRY ConsoleLink;
21 PCSR_PROCESS Process; // Parent process.
22 HANDLE ConsoleEvent;
23 /* PCSRSS_CONSOLE */ struct tagCSRSS_CONSOLE* Console;
24 /* PCSRSS_CONSOLE */ struct tagCSRSS_CONSOLE* ParentConsole;
25 BOOL bInheritHandles;
26 RTL_CRITICAL_SECTION HandleTableLock;
27 ULONG HandleTableSize;
28 /* PCSRSS_HANDLE */ struct _CSRSS_HANDLE* HandleTable; // Is it a length-varying table or length-fixed ??
29 LPTHREAD_START_ROUTINE CtrlDispatcher;
30 } CONSOLE_PROCESS_DATA, *PCONSOLE_PROCESS_DATA;
31
32 #endif // _CONSOLE_H
33
34 /* EOF */