6 #define TAG_KSDEVICE 'DESK'
7 #define TAG_KSOBJECT_TAG 'HOSK'
19 IN HANDLE ParentHandle
,
21 PVOID CreateParameters
,
22 UINT CreateParametersSize
,
23 IN ACCESS_MASK DesiredAccess
,
24 OUT PHANDLE NodeHandle
);
28 KspCreateFilterFactory(
29 IN PDEVICE_OBJECT DeviceObject
,
30 IN
const KSFILTER_DESCRIPTOR
*Descriptor
,
31 IN PWSTR RefString OPTIONAL
,
32 IN PSECURITY_DESCRIPTOR SecurityDescriptor OPTIONAL
,
33 IN ULONG CreateItemFlags
,
34 IN PFNKSFILTERFACTORYPOWER SleepCallback OPTIONAL
,
35 IN PFNKSFILTERFACTORYPOWER WakeCallback OPTIONAL
,
36 OUT PKSFILTERFACTORY
*FilterFactory OPTIONAL
);
41 IN PDEVICE_OBJECT DeviceObject
,
47 IN PDEVICE_OBJECT DeviceObject
,
53 IN PDEVICE_OBJECT DeviceObject
,
59 IN PDEVICE_OBJECT DeviceObject
,
61 IN IKsFilterFactory
*iface
);
64 KspSetDeviceInterfacesState(
65 IN PLIST_ENTRY ListHead
,
69 KspFreeDeviceInterfaces(
70 IN PLIST_ENTRY ListHead
);
73 KspRegisterDeviceInterfaces(
74 IN PDEVICE_OBJECT PhysicalDeviceObject
,
75 IN ULONG CategoriesCount
,
76 IN GUID
const*Categories
,
77 IN PUNICODE_STRING ReferenceString
,
78 OUT PLIST_ENTRY SymbolicLinkList
);
81 KspForwardIrpSynchronous(
82 IN PDEVICE_OBJECT DeviceObject
,
87 IN POOL_TYPE PoolType
,
88 IN SIZE_T NumberOfBytes
);
97 KspPinPropertyHandler(
99 IN PKSPROPERTY Property
,
101 IN ULONG DescriptorsCount
,
102 IN
const KSPIN_DESCRIPTOR
* Descriptors
,
103 IN ULONG DescriptorSize
);
107 FindMatchingCreateItem(
108 PLIST_ENTRY ListHead
,
109 PUNICODE_STRING String
,
110 OUT PCREATE_ITEM_ENTRY
*OutCreateItem
);
113 KspCopyCreateRequest(
115 IN LPWSTR ObjectClass
,
121 IN PDEVICE_OBJECT DeviceObject
,
123 IN PKSDEVICE KsDevice
,
124 IN IKsFilterFactory
* FilterFactory
,
125 IN IKsFilter
* Filter
,
126 IN PKSPIN_CONNECT Connect
,
127 IN KSPIN_DESCRIPTOR_EX
* Descriptor
);
130 KspAddCreateItemToList(
131 OUT PLIST_ENTRY ListHead
,
133 IN PKSOBJECT_CREATE_ITEM ItemsList
);
137 IN PLIST_ENTRY ListHead
);
142 IN ULONG PropertySetsCount
,
143 IN
const KSPROPERTY_SET
* PropertySet
,
144 IN PFNKSALLOCATOR Allocator OPTIONAL
,
145 IN ULONG PropertyItemSize OPTIONAL
);
149 IKsFilterFactory_Create(
150 IN PDEVICE_OBJECT DeviceObject
,
154 KspSetFilterFactoriesState(
155 IN PKSIDEVICE_HEADER DeviceHeader
,
156 IN BOOLEAN NewState
);
160 KspMethodHandlerWithAllocator(
162 IN ULONG MethodSetsCount
,
163 IN
const KSMETHOD_SET
*MethodSet
,
164 IN PFNKSALLOCATOR Allocator OPTIONAL
,
165 IN ULONG MethodItemSize OPTIONAL
);
180 IN ULONG EventSetsCount
,
181 IN PKSEVENT_SET EventSet
,
182 IN OUT PLIST_ENTRY EventsList OPTIONAL
,
183 IN KSEVENTS_LOCKTYPE EventsFlags OPTIONAL
,
184 IN PVOID EventsLock OPTIONAL
,
185 IN PFNKSALLOCATOR Allocator OPTIONAL
,
186 IN ULONG EventItemSize OPTIONAL
);
189 KspValidateConnectRequest(
191 IN ULONG DescriptorsCount
,
192 IN PVOID Descriptors
,
193 IN ULONG DescriptorSize
,
194 OUT PKSPIN_CONNECT
* Connect
);
197 KspReadMediaCategory(
199 PKEY_VALUE_PARTIAL_INFORMATION
*OutInformation
);