* Sync to trunk r63845.
[reactos.git] / win32ss / user / winsrv / consrv / conoutput.h
1 /*
2 * COPYRIGHT: See COPYING in the top level directory
3 * PROJECT: ReactOS Console Server DLL
4 * FILE: win32ss/user/winsrv/consrv/conoutput.h
5 * PURPOSE: Console Output functions
6 * PROGRAMMERS: Jeffrey Morlan
7 * Hermes Belusca-Maito (hermes.belusca@sfr.fr)
8 */
9
10 #pragma once
11
12 #define ConSrvGetTextModeBuffer(ProcessData, Handle, Ptr, Access, LockConsole) \
13 ConSrvGetObject((ProcessData), (Handle), (PCONSOLE_IO_OBJECT*)(Ptr), NULL, \
14 (Access), (LockConsole), TEXTMODE_BUFFER)
15 #define ConSrvGetTextModeBufferAndHandleEntry(ProcessData, Handle, Ptr, Entry, Access, LockConsole) \
16 ConSrvGetObject((ProcessData), (Handle), (PCONSOLE_IO_OBJECT*)(Ptr), (Entry), \
17 (Access), (LockConsole), TEXTMODE_BUFFER)
18
19 #define ConSrvGetGraphicsBuffer(ProcessData, Handle, Ptr, Access, LockConsole) \
20 ConSrvGetObject((ProcessData), (Handle), (PCONSOLE_IO_OBJECT*)(Ptr), NULL, \
21 (Access), (LockConsole), GRAPHICS_BUFFER)
22 #define ConSrvGetGraphicsBufferAndHandleEntry(ProcessData, Handle, Ptr, Entry, Access, LockConsole) \
23 ConSrvGetObject((ProcessData), (Handle), (PCONSOLE_IO_OBJECT*)(Ptr), (Entry), \
24 (Access), (LockConsole), GRAPHICS_BUFFER)
25
26 #define ConSrvGetScreenBuffer(ProcessData, Handle, Ptr, Access, LockConsole) \
27 ConSrvGetObject((ProcessData), (Handle), (PCONSOLE_IO_OBJECT*)(Ptr), NULL, \
28 (Access), (LockConsole), SCREEN_BUFFER)
29 #define ConSrvGetScreenBufferAndHandleEntry(ProcessData, Handle, Ptr, Entry, Access, LockConsole) \
30 ConSrvGetObject((ProcessData), (Handle), (PCONSOLE_IO_OBJECT*)(Ptr), (Entry), \
31 (Access), (LockConsole), SCREEN_BUFFER)
32
33 #define ConSrvReleaseScreenBuffer(Buff, IsConsoleLocked) \
34 ConSrvReleaseObject(&(Buff)->Header, (IsConsoleLocked))
35
36 NTSTATUS ConDrvCreateScreenBuffer(OUT PCONSOLE_SCREEN_BUFFER* Buffer,
37 IN OUT PCONSOLE Console,
38 IN ULONG BufferType,
39 IN PVOID ScreenBufferInfo);
40 VOID NTAPI ConioDeleteScreenBuffer(PCONSOLE_SCREEN_BUFFER Buffer);
41 // VOID ConioSetActiveScreenBuffer(PCONSOLE_SCREEN_BUFFER Buffer);
42
43 PCONSOLE_SCREEN_BUFFER
44 ConDrvGetActiveScreenBuffer(IN PCONSOLE Console);
45
46 /* EOF */