- Define DECLSPEC_ADDRSAFE and FORCEINLINE for gcc in winnt.h
[reactos.git] / reactos / include / ndk / obfuncs.h
1 /*++ NDK Version: 0095
2
3 Copyright (c) Alex Ionescu. All rights reserved.
4
5 Header Name:
6
7 obtypes.h
8
9 Abstract:
10
11 Type definitions for the Object Manager
12
13 Author:
14
15 Alex Ionescu (alex.ionescu@reactos.com) 06-Oct-2004
16
17 --*/
18
19 #ifndef _OBFUNCS_H
20 #define _OBFUNCS_H
21
22 //
23 // Dependencies
24 //
25
26 //
27 // Object Functions
28 //
29 NTSTATUS
30 NTAPI
31 ObCreateObject(
32 IN KPROCESSOR_MODE ObjectAttributesAccessMode OPTIONAL,
33 IN POBJECT_TYPE ObjectType,
34 IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL,
35 IN KPROCESSOR_MODE AccessMode,
36 IN OUT PVOID ParseContext OPTIONAL,
37 IN ULONG ObjectSize,
38 IN ULONG PagedPoolCharge OPTIONAL,
39 IN ULONG NonPagedPoolCharge OPTIONAL,
40 OUT PVOID *Object
41 );
42
43 ULONG
44 NTAPI
45 ObGetObjectPointerCount(
46 IN PVOID Object
47 );
48
49 NTSTATUS
50 NTAPI
51 ObReferenceObjectByName(
52 IN PUNICODE_STRING ObjectName,
53 IN ULONG Attributes,
54 IN PACCESS_STATE PassedAccessState OPTIONAL,
55 IN ACCESS_MASK DesiredAccess OPTIONAL,
56 IN POBJECT_TYPE ObjectType,
57 IN KPROCESSOR_MODE AccessMode,
58 IN OUT PVOID ParseContext OPTIONAL,
59 OUT PVOID *Object
60 );
61
62 NTSTATUS
63 NTAPI
64 ObFindHandleForObject(
65 IN PEPROCESS Process,
66 IN PVOID Object,
67 IN POBJECT_TYPE ObjectType,
68 IN POBJECT_HANDLE_INFORMATION HandleInformation,
69 OUT PHANDLE Handle
70 );
71
72 #endif