ReactOS  0.4.15-dev-3324-gda4e15f
class.h
Go to the documentation of this file.
1 #pragma once
2 
3 #define IS_ATOM(x) \
4  (((ULONG_PTR)(x) > 0x0) && ((ULONG_PTR)(x) < 0x10000))
5 
6 typedef struct _WNDPROC_INFO
7 {
11 
12 static __inline BOOL
14 {
15  /* FIXME: Check for 64-bit architectures... */
16  return ((ULONG_PTR)lpWndProc & 0xFFFF0000) == 0xFFFF0000;
17 }
18 
19 BOOLEAN
21 
25  IN BOOL Unicode,
27 
28 BOOL
29 UserGetCallProcInfo(IN HANDLE hCallProc,
30  OUT PWNDPROC_INFO wpInfo);
31 
32 void FASTCALL
34 
35 VOID
39 
40 PCLS
42 
44 
45 VOID
47  IN PCALLPROCDATA CallProc);
48 
49 _Success_(return)
50 BOOL
51 NTAPI
52 IntGetAtomFromStringOrAtom(
53  _In_ PUNICODE_STRING ClassName,
55 
56 BOOL
58  IN BOOL FreeOnFailure);
59 
61 
64 NTAPI
66  _Out_ _When_(return>=0, _At_(pustrOut->Buffer, _Post_ _Notnull_)) PUNICODE_STRING pustrOut,
67  __in_data_source(USER_MODE) _In_ PUNICODE_STRING pustrUnsafe);
68 
69 BOOL FASTCALL LookupFnIdToiCls(int FnId, int *iCls);
70 
71 INT
73  IN OUT PUNICODE_STRING ClassName,
75  IN BOOL Ansi);
76 
77 /* EOF */
#define IN
Definition: typedefs.h:39
unsigned short RTL_ATOM
Definition: atom.c:42
#define _Inout_
Definition: ms_sal.h:378
#define _Out_
Definition: ms_sal.h:345
#define _At_(target, annos)
Definition: ms_sal.h:244
BOOL IntCheckProcessDesktopClasses(IN PDESKTOP Desktop, IN BOOL FreeOnFailure)
Definition: class.c:1012
void FASTCALL DestroyProcessClasses(PPROCESSINFO Process)
Definition: class.c:300
BOOLEAN DestroyCallProc(_Inout_ PVOID Object)
Definition: callproc.c:22
enum _GETCPD GETCPD
static __inline BOOL IsCallProcHandle(IN WNDPROC lpWndProc)
Definition: class.h:13
LONG NTSTATUS
Definition: precomp.h:26
INT UserGetClassName(IN PCLS Class, IN OUT PUNICODE_STRING ClassName, IN RTL_ATOM Atom, IN BOOL Ansi)
Definition: class.c:1634
#define _When_(expr, annos)
Definition: ms_sal.h:254
BOOL FASTCALL LookupFnIdToiCls(int FnId, int *iCls)
Definition: class.c:131
int FnId
Definition: class.c:106
#define FASTCALL
Definition: nt_native.h:50
_Success_(return) BOOL NTAPI IntGetAtomFromStringOrAtom(_In_ PUNICODE_STRING ClassName
int32_t INT
Definition: typedefs.h:58
uint32_t ULONG_PTR
Definition: typedefs.h:65
VOID IntDereferenceClass(IN OUT PCLS Class, IN PDESKTOPINFO Desktop, IN PPROCESSINFO pi)
Definition: class.c:815
HINSTANCE hInstance
Definition: charmap.c:20
NTSTATUS(* NTAPI)(IN PFILE_FULL_EA_INFORMATION EaBuffer, IN ULONG EaLength, OUT PULONG ErrorOffset)
Definition: IoEaTest.cpp:117
unsigned int BOOL
Definition: ntddk_ex.h:94
_Must_inspect_result_ NTSTATUS NTAPI ProbeAndCaptureUnicodeStringOrAtom(_Out_ _When_(return >=0, _At_(pustrOut->Buffer, _Post_ _Notnull_)) PUNICODE_STRING pustrOut, __in_data_source(USER_MODE) _In_ PUNICODE_STRING pustrUnsafe)
Definition: class.c:150
unsigned char BOOLEAN
VOID UserAddCallProcToClass(IN OUT PCLS Class, IN PCALLPROCDATA CallProc)
Definition: class.c:423
#define _In_
Definition: ms_sal.h:308
Definition: ntuser.h:539
BOOL UserGetCallProcInfo(IN HANDLE hCallProc, OUT PWNDPROC_INFO wpInfo)
Definition: callproc.c:59
_Must_inspect_result_ _In_ __in_data_source(USER_MODE) SIZE_T Size
#define _Notnull_
Definition: ms_sal.h:658
static refpint_t pi[]
Definition: server.c:96
struct _WNDPROC_INFO WNDPROC_INFO
_Out_ RTL_ATOM * Atom
Definition: class.h:54
PCALLPROCDATA CreateCallProc(IN PDESKTOP Desktop, IN WNDPROC WndProc, IN BOOL Unicode, IN PPROCESSINFO pi)
Definition: callproc.c:29
WNDPROC WindowProc
Definition: class.h:8
#define _Must_inspect_result_
Definition: ms_sal.h:558
_Must_inspect_result_ _In_ WDFCOLLECTION _In_ WDFOBJECT Object
LRESULT CALLBACK WndProc(HWND hwnd, UINT iMsg, WPARAM wParam, LPARAM lParam)
Definition: solitaire.cpp:613
LRESULT(CALLBACK * WNDPROC)(HWND, UINT, WPARAM, LPARAM)
Definition: winuser.h:2882
BOOL IsUnicode
Definition: class.h:9
PCLS IntGetAndReferenceClass(PUNICODE_STRING ClassName, HINSTANCE hInstance, BOOL bDesktopThread)
Definition: class.c:1437
BOOL FASTCALL UserRegisterSystemClasses(VOID)
Definition: class.c:2306
ULONG_PTR FASTCALL UserGetCPD(PVOID, GETCPD, ULONG_PTR)
Definition: callproc.c:107
#define _Post_
Definition: ms_sal.h:620
struct _WNDPROC_INFO * PWNDPROC_INFO
_Must_inspect_result_ _In_ PLARGE_INTEGER _In_ PLARGE_INTEGER _In_ ULONG _In_ PFILE_OBJECT _In_ PVOID Process
Definition: fsrtlfuncs.h:219
#define OUT
Definition: typedefs.h:40