xref: /reactos/sdk/include/xdk/cmfuncs.h (revision c2c66aff)
1 /******************************************************************************
2  *                         Configuration Manager Functions                    *
3  ******************************************************************************/
4 
5 $if (_WDMDDK_)
6 #if (NTDDI_VERSION >= NTDDI_WINXP)
7 _IRQL_requires_max_(APC_LEVEL)
8 NTKERNELAPI
9 NTSTATUS
10 NTAPI
11 CmRegisterCallback(
12   _In_ PEX_CALLBACK_FUNCTION Function,
13   _In_opt_ PVOID Context,
14   _Out_ PLARGE_INTEGER Cookie);
15 
16 _IRQL_requires_max_(APC_LEVEL)
17 NTKERNELAPI
18 NTSTATUS
19 NTAPI
20 CmUnRegisterCallback(
21   _In_ LARGE_INTEGER Cookie);
22 #endif
23 
24 #if (NTDDI_VERSION >= NTDDI_VISTA)
25 
26 _IRQL_requires_max_(APC_LEVEL)
27 NTKERNELAPI
28 NTSTATUS
29 NTAPI
30 CmRegisterCallbackEx(
31   _In_ PEX_CALLBACK_FUNCTION Function,
32   _In_ PCUNICODE_STRING Altitude,
33   _In_ PVOID Driver,
34   _In_opt_ PVOID Context,
35   _Out_ PLARGE_INTEGER Cookie,
36   _Reserved_ PVOID Reserved);
37 
38 _IRQL_requires_max_(APC_LEVEL)
39 NTKERNELAPI
40 VOID
41 NTAPI
42 CmGetCallbackVersion(
43   _Out_opt_ PULONG Major,
44   _Out_opt_ PULONG Minor);
45 
46 _IRQL_requires_max_(APC_LEVEL)
47 NTKERNELAPI
48 NTSTATUS
49 NTAPI
50 CmSetCallbackObjectContext(
51   _Inout_ PVOID Object,
52   _In_ PLARGE_INTEGER Cookie,
53   _In_ PVOID NewContext,
54   _Out_opt_ PVOID *OldContext);
55 
56 _IRQL_requires_max_(APC_LEVEL)
57 NTKERNELAPI
58 NTSTATUS
59 NTAPI
60 CmCallbackGetKeyObjectID(
61   _In_ PLARGE_INTEGER Cookie,
62   _In_ PVOID Object,
63   _Out_opt_ PULONG_PTR ObjectID,
64   _Outptr_opt_ PCUNICODE_STRING *ObjectName);
65 
66 _IRQL_requires_max_(APC_LEVEL)
67 NTKERNELAPI
68 PVOID
69 NTAPI
70 CmGetBoundTransaction(
71   _In_ PLARGE_INTEGER Cookie,
72   _In_ PVOID Object);
73 
74 #endif // NTDDI_VERSION >= NTDDI_VISTA
75 
76 $endif (_WDMDDK_)
77 
78