3 #define TAG_KSDEVICE 'DESK'
4 #define TAG_KSOBJECT_TAG 'HOSK'
16 IN HANDLE ParentHandle
,
18 PVOID CreateParameters
,
19 UINT CreateParametersSize
,
20 IN ACCESS_MASK DesiredAccess
,
21 OUT PHANDLE NodeHandle
);
25 KspCreateFilterFactory(
26 IN PDEVICE_OBJECT DeviceObject
,
27 IN
const KSFILTER_DESCRIPTOR
*Descriptor
,
28 IN PWSTR RefString OPTIONAL
,
29 IN PSECURITY_DESCRIPTOR SecurityDescriptor OPTIONAL
,
30 IN ULONG CreateItemFlags
,
31 IN PFNKSFILTERFACTORYPOWER SleepCallback OPTIONAL
,
32 IN PFNKSFILTERFACTORYPOWER WakeCallback OPTIONAL
,
33 OUT PKSFILTERFACTORY
*FilterFactory OPTIONAL
);
38 IN PDEVICE_OBJECT DeviceObject
,
44 IN PDEVICE_OBJECT DeviceObject
,
50 IN PDEVICE_OBJECT DeviceObject
,
56 IN PDEVICE_OBJECT DeviceObject
,
58 IN IKsFilterFactory
*iface
);
61 KspSetDeviceInterfacesState(
62 IN PLIST_ENTRY ListHead
,
66 KspFreeDeviceInterfaces(
67 IN PLIST_ENTRY ListHead
);
70 KspRegisterDeviceInterfaces(
71 IN PDEVICE_OBJECT PhysicalDeviceObject
,
72 IN ULONG CategoriesCount
,
73 IN GUID
const*Categories
,
74 IN PUNICODE_STRING ReferenceString
,
75 OUT PLIST_ENTRY SymbolicLinkList
);
78 KspForwardIrpSynchronous(
79 IN PDEVICE_OBJECT DeviceObject
,
84 IN POOL_TYPE PoolType
,
85 IN SIZE_T NumberOfBytes
);
94 KspPinPropertyHandler(
96 IN PKSPROPERTY Property
,
98 IN ULONG DescriptorsCount
,
99 IN
const KSPIN_DESCRIPTOR
* Descriptors
,
100 IN ULONG DescriptorSize
);
104 FindMatchingCreateItem(
105 PLIST_ENTRY ListHead
,
106 PUNICODE_STRING String
,
107 OUT PCREATE_ITEM_ENTRY
*OutCreateItem
);
110 KspCopyCreateRequest(
112 IN LPWSTR ObjectClass
,
118 IN PDEVICE_OBJECT DeviceObject
,
120 IN PKSDEVICE KsDevice
,
121 IN IKsFilterFactory
* FilterFactory
,
122 IN IKsFilter
* Filter
,
123 IN PKSPIN_CONNECT Connect
,
124 IN KSPIN_DESCRIPTOR_EX
* Descriptor
);
127 KspAddCreateItemToList(
128 OUT PLIST_ENTRY ListHead
,
130 IN PKSOBJECT_CREATE_ITEM ItemsList
);
134 IN PLIST_ENTRY ListHead
);
139 IN ULONG PropertySetsCount
,
140 IN
const KSPROPERTY_SET
* PropertySet
,
141 IN PFNKSALLOCATOR Allocator OPTIONAL
,
142 IN ULONG PropertyItemSize OPTIONAL
);
146 IKsFilterFactory_Create(
147 IN PDEVICE_OBJECT DeviceObject
,
151 KspSetFilterFactoriesState(
152 IN PKSIDEVICE_HEADER DeviceHeader
,
153 IN BOOLEAN NewState
);
157 KspMethodHandlerWithAllocator(
159 IN ULONG MethodSetsCount
,
160 IN
const KSMETHOD_SET
*MethodSet
,
161 IN PFNKSALLOCATOR Allocator OPTIONAL
,
162 IN ULONG MethodItemSize OPTIONAL
);
177 IN ULONG EventSetsCount
,
178 IN
const KSEVENT_SET
* EventSet
,
179 IN OUT PLIST_ENTRY EventsList OPTIONAL
,
180 IN KSEVENTS_LOCKTYPE EventsFlags OPTIONAL
,
181 IN PVOID EventsLock OPTIONAL
,
182 IN PFNKSALLOCATOR Allocator OPTIONAL
,
183 IN ULONG EventItemSize OPTIONAL
);
186 KspValidateConnectRequest(
188 IN ULONG DescriptorsCount
,
189 IN PVOID Descriptors
,
190 IN ULONG DescriptorSize
,
191 OUT PKSPIN_CONNECT
* Connect
);
194 KspReadMediaCategory(
196 PKEY_VALUE_PARTIAL_INFORMATION
*OutInformation
);