ReactOS  0.4.12-dev-914-g71f84a3
kstypes.h
Go to the documentation of this file.
1 #pragma once
2 
3 typedef struct
4 {
7 
8 typedef struct
9 {
10  const KSDEVICE_DESCRIPTOR *Descriptor;
12 
13 typedef struct
14 {
16  KSOBJECT_CREATE_ITEM CreateItem;
18 
19 
20 typedef struct
21 {
22  KSDISPATCH_TABLE DispatchTable;
24 
27 
31 
34 
36 
37  PFNKSCONTEXT_DISPATCH PowerDispatch;
40  PKSOBJECT_CREATE_ITEM OriginalCreateItem;
42 
44 
45 typedef struct
46 {
48  PKSOBJECT_CREATE_ITEM CreateItem;
49  PFNKSITEMFREECALLBACK ItemFreeCallback;
53 
54 typedef struct
55 {
57  PKSDEVICE KsDevice;
63  union
64  {
65  PKSDEVICE KsDevice;
66  PKSFILTERFACTORY KsFilterFactory;
67  PKSFILTER KsFilter;
68  }Parent;
69 
70  union
71  {
72  PKSFILTERFACTORY FilterFactory;
73  PKSFILTER Filter;
74  PKSPIN Pin;
75  }Next;
76 
77  union
78  {
79  PKSFILTERFACTORY FilterFactory;
80  PKSFILTER Filter;
81  }FirstChild;
82 
84 
85 typedef struct
86 {
88  KSDEVICE KsDevice;
89 
92 
95 
99 
102 
105 
108 
112 
114 
115 typedef struct
116 {
118 
120 
121 typedef struct
122 {
127 
128 typedef struct
129 {
133 
134 typedef struct
135 {
141 
143 
145 struct __BUS_DEVICE_ENTRY__;
146 
147 typedef struct
148 {
151  union
152  {
155  };
156  union
157  {
160  };
164 
165 typedef struct
166 {
169 
170 typedef struct
171 {
176 
177 
178 
179 typedef enum
180 {
181  NotStarted = 0, // Not started yet
182  Started, // Device has received the START_DEVICE IRP
183  StopPending, // Device has received the QUERY_STOP IRP
184  Stopped, // Device has received the STOP_DEVICE IRP
185  RemovePending, // Device has received the QUERY_REMOVE IRP
186  SurpriseRemovePending, // Device has received the SURPRISE_REMOVE IRP
188 }DEVICE_STATE;
189 
190 
191 typedef struct __BUS_DEVICE_ENTRY__
192 {
206 
208 {
222 
225 
226 typedef struct
227 {
234 
235 typedef struct
236 {
240 
244 
246 
247 typedef struct
248 {
254 
255 typedef struct
256 {
264 
265 
266 typedef struct
267 {
273 
274 
275 typedef struct
276 {
281 
LIST_ENTRY Entry
Definition: kstypes.h:193
PIO_WORKITEM WorkItem
Definition: kstypes.h:131
DEVICE_STATE
Definition: i8042prt.h:14
struct KSBASIC_HEADER * PKSBASIC_HEADER
PUNKNOWN Unknown
Definition: kstypes.h:29
LIST_ENTRY Entry
Definition: kstypes.h:172
struct KSIDEVICE_HEADER * PKSIDEVICE_HEADER
ACCESS_MASK AccessMask
Definition: kstypes.h:41
const KSDEVICE_DESCRIPTOR * Descriptor
Definition: kstypes.h:10
NTSTATUS(* KoCreateObjectHandler)(IN REFCLSID ClassId, IN IUnknown *UnkOuter OPTIONAL, IN REFIID InterfaceId, OUT PVOID *Interface)
Definition: kcom.h:67
struct _COMMON_DEVICE_EXTENSION COMMON_DEVICE_EXTENSION
GUID DeviceGuid
Definition: kstypes.h:198
KSOBJECTTYPE Type
Definition: kstypes.h:23
ULONG MappingTableStride
Definition: kstypes.h:111
WORK_QUEUE_ITEM WorkItem
Definition: kstypes.h:219
struct __BUS_ENUM_DEVICE_EXTENSION__ * BusDeviceExtension
Definition: kstypes.h:161
PDEVICE_OBJECT PnpDeviceObject
Definition: kstypes.h:97
struct __BUS_ENUM_DEVICE_EXTENSION__ BUS_ENUM_DEVICE_EXTENSION
struct KSIOBJECT_HEADER * PKSIOBJECT_HEADER
BOOLEAN(NTAPI * PKSEVENT_SYNCHRONIZED_ROUTINE)(PKSEVENT_CTX Context)
Definition: kstypes.h:142
struct KSPCACHE_DATARANGE * PKSPCACHE_DATARANGE
unsigned char * PUCHAR
Definition: retypes.h:3
PKSFILTERFACTORY KsFilterFactory
Definition: kstypes.h:66
LONG ItemListCount
Definition: kstypes.h:93
WORK_QUEUE_ITEM WorkItem
Definition: kstypes.h:232
LONG NTSTATUS
Definition: precomp.h:26
LPWSTR PDODeviceName
Definition: kstypes.h:199
PKSEVENT_ENTRY EventEntry
Definition: kstypes.h:138
LIST_ENTRY Entry
Definition: kstypes.h:123
LPWSTR DeviceName
Definition: kstypes.h:200
KSOBJECT_CREATE_ITEM CreateItem
Definition: kstypes.h:16
PVOID PowerContext
Definition: kstypes.h:38
PUNKNOWN OuterUnknown
Definition: kstypes.h:62
UNICODE_STRING SymbolicLink
Definition: kstypes.h:124
ACPI_PHYSICAL_ADDRESS ACPI_SIZE BOOLEAN Warn BOOLEAN Physical UINT32 ACPI_TABLE_HEADER *OutTableHeader ACPI_TABLE_HEADER **OutTable ACPI_HANDLE UINT32 ACPI_WALK_CALLBACK ACPI_WALK_CALLBACK void void **ReturnValue UINT32 ACPI_BUFFER *RetPathPtr ACPI_OBJECT_HANDLER void *Data ACPI_OBJECT_HANDLER void **Data ACPI_STRING ACPI_OBJECT_LIST ACPI_BUFFER *ReturnObjectBuffer ACPI_DEVICE_INFO **ReturnBuffer ACPI_HANDLE Parent
Definition: acpixf.h:716
KMUTEX BagMutex
Definition: kstypes.h:104
struct KSPCACHE_PIN_HEADER * PKSPCACHE_PIN_HEADER
struct __BUS_DEVICE_ENTRY__ * DeviceEntry
Definition: kstypes.h:158
KSDEVICE KsDevice
Definition: kstypes.h:88
struct BUS_INSTALL_ENUM_CONTEXT * PBUS_INSTALL_ENUM_CONTEXT
UNICODE_STRING DeviceInterfaceLink
Definition: kstypes.h:212
struct KS_DRIVER_EXTENSION * PKS_DRIVER_EXTENSION
PDEVICE_OBJECT DeviceObject
Definition: kstypes.h:153
Definition: kstypes.h:45
NTSTATUS(* NTAPI)(IN PFILE_FULL_EA_INFORMATION EaBuffer, IN ULONG EaLength, OUT PULONG ErrorOffset)
Definition: IoEaTest.cpp:117
ULONG DeviceObjectReferenceCount
Definition: kstypes.h:162
long LONG
Definition: pedump.c:60
LARGE_INTEGER TimeCreated
Definition: kstypes.h:202
LARGE_INTEGER TimeExpired
Definition: kstypes.h:203
_Must_inspect_result_ _In_opt_ PFLT_FILTER Filter
Definition: fltkernel.h:1802
PRKMUTEX ControlMutex
Definition: kstypes.h:58
PFNKSITEMFREECALLBACK ItemFreeCallback
Definition: kstypes.h:49
LIST_ENTRY EventList
Definition: kstypes.h:59
PKSOBJECT_CREATE_ITEM CreateItem
Definition: kstypes.h:48
PFNKSCONTEXT_DISPATCH PowerDispatch
Definition: kstypes.h:37
struct COMMON_DEVICE_EXTENSION * PCOMMON_DEVICE_EXTENSION
Definition: kstypes.h:121
KoCreateObjectHandler CreateObjectHandler
Definition: kstypes.h:5
KSOBJECT_HEADER ObjectHeader
Definition: kstypes.h:15
KSOBJECTTYPE Type
Definition: kstypes.h:56
struct DEVICE_EXTENSION * PDEVICE_EXTENSION
LIST_ENTRY Entry
Definition: kstypes.h:47
PDEVICE_OBJECT BaseDevice
Definition: kstypes.h:98
PDEVICE_OBJECT PhysicalDeviceObject
Definition: kstypes.h:213
struct __BUS_ENUM_DEVICE_EXTENSION__ * PBUS_ENUM_DEVICE_EXTENSION
struct CREATE_ITEM_ENTRY * PCREATE_ITEM_ENTRY
struct __BUS_DEVICE_ENTRY__ BUS_DEVICE_ENTRY
struct KSPCACHE_FILTER_HEADER * PKSPCACHE_FILTER_HEADER
PBUS_ENUM_DEVICE_EXTENSION BusDeviceExtension
Definition: kstypes.h:229
PVOID ObjectType
Definition: kstypes.h:30
struct KSPCACHE_DESCRIPTOR * PKSPCACHE_DESCRIPTOR
PKSPIN Pin
Definition: kstypes.h:74
PKSIDEVICE_HEADER DeviceHeader
Definition: kstypes.h:130
PKSDEVICE KsDevice
Definition: kstypes.h:57
PDEVICE_OBJECT ParentDeviceObject
Definition: kstypes.h:35
__wchar_t WCHAR
Definition: xmlstorage.h:180
DEVICE_STATE
Definition: kstypes.h:179
UNICODE_STRING ServicePath
Definition: kstypes.h:221
PUNKNOWN ClientAggregate
Definition: kstypes.h:61
struct __BUS_DEVICE_ENTRY__ * PBUS_DEVICE_ENTRY
struct KSEVENT_CTX * PKSEVENT_CTX
LPWSTR Instance
Definition: kstypes.h:204
unsigned long DWORD
Definition: ntddk_ex.h:95
KSDISPATCH_TABLE DispatchTable
Definition: kstypes.h:22
CLSID DeviceInterfaceClass
Definition: kstypes.h:125
* PFILE_OBJECT
Definition: iotypes.h:1954
struct KO_DRIVER_EXTENSION * PKO_DRIVER_EXTENSION
PKSOBJECT_CREATE_ITEM OriginalCreateItem
Definition: kstypes.h:40
KSBASIC_HEADER BasicHeader
Definition: kstypes.h:87
PFILE_OBJECT FileObject
Definition: kstypes.h:137
PCOMMON_DEVICE_EXTENSION Ext
Definition: kstypes.h:167
LPWSTR BusId
Definition: kstypes.h:201
Definition: ketypes.h:687
LIST_ENTRY ItemList
Definition: kstypes.h:26
LIST_ENTRY PowerDispatchList
Definition: kstypes.h:106
DEVICE_STATE DeviceState
Definition: kstypes.h:197
GUID InterfaceGuid
Definition: kstypes.h:173
Definition: typedefs.h:117
struct SYMBOLIC_LINK_ENTRY * PSYMBOLIC_LINK_ENTRY
PIRP Irp
Definition: kstypes.h:139
KSTARGET_STATE TargetState
Definition: kstypes.h:100
ERESOURCE SecurityLock
Definition: kstypes.h:91
UNICODE_STRING ObjectClass
Definition: kstypes.h:28
LIST_ENTRY IrpPendingList
Definition: kstypes.h:195
Definition: kstypes.h:170
Definition: kstypes.h:191
LONG ItemListCount
Definition: kstypes.h:25
PDEVICE_OBJECT PDO
Definition: kstypes.h:196
LIST_ENTRY TargetDeviceListEntry
Definition: kstypes.h:33
struct BUS_INSTANCE_ENTRY * PBUS_INSTANCE_ENTRY
PKSIDEVICE_HEADER DeviceHeader
Definition: kstypes.h:117
ULONG MaxMappingsByteCount
Definition: kstypes.h:110
PKSFILTER Filter
Definition: kstypes.h:73
ULONG KSPIN_LOCK
Definition: env_spec_w32.h:72
struct PNP_POSTSTART_CONTEXT * PPNP_POSTSTART_CONTEXT
CLSID Medium
Definition: kstypes.h:277
LIST_ENTRY ObjectItemList
Definition: kstypes.h:51
LONG ReferenceCount
Definition: kstypes.h:50
PDEVICE_OBJECT TargetDevice
Definition: kstypes.h:32
PADAPTER_OBJECT AdapterObject
Definition: kstypes.h:109
LIST_ENTRY TargetDeviceList
Definition: kstypes.h:101
KSPIN_LOCK EventListLock
Definition: kstypes.h:60
struct _BEEP_DEVICE_EXTENSION DEVICE_EXTENSION
LIST_ENTRY ItemList
Definition: kstypes.h:94
PKSFILTER KsFilter
Definition: kstypes.h:67
#define BOOLEAN
Definition: pedump.c:73
ULONG DeviceIndex
Definition: kstypes.h:96
struct tagContext Context
Definition: acpixf.h:1012
ULONG ERESOURCE
Definition: env_spec_w32.h:594
unsigned int ULONG
Definition: retypes.h:1
struct _KSEVENT_ENTRY * PKSEVENT_ENTRY
Definition: ks.h:2131
PDEVICE_OBJECT PnpDeviceObject
Definition: kstypes.h:214
PKSFILTERFACTORY FilterFactory
Definition: kstypes.h:72
KSOBJECTTYPE
Definition: ks.h:1237
WCHAR * LPWSTR
Definition: xmlstorage.h:184
COMMON_DEVICE_EXTENSION Common
Definition: kstypes.h:209
struct DEV_EXTENSION * PDEV_EXTENSION
struct KO_OBJECT_HEADER * PKO_OBJECT_HEADER
PLIST_ENTRY List
Definition: kstypes.h:136
KSTARGET_STATE
Definition: ks.h:1251
LIST_ENTRY PowerDispatchEntry
Definition: kstypes.h:39
ULONG ACCESS_MASK
Definition: nt_native.h:40
LIST_ENTRY ObjectBags
Definition: kstypes.h:107
PDEVICE_OBJECT BusDeviceObject
Definition: kstypes.h:215
UNICODE_STRING SymbolicLink
Definition: kstypes.h:174
KMUTEX DeviceMutex
Definition: kstypes.h:103
LIST_ENTRY DeviceInterfaceList
Definition: kstypes.h:194