- Implement KsAcquireDevice, KsReleaseDevice, KsTerminateDevice
- Fix unimplemented tags
- Use double in spec for functions taking longlong arguments [[Colin Finck]]

svn path=/trunk/; revision=42156
This commit is contained in:
Johannes Anderwald 2009-07-23 15:19:46 +00:00
parent c2874dcc29
commit 4fdbdba1d9
4 changed files with 73 additions and 42 deletions

View file

@ -1220,7 +1220,7 @@ KsAcquireControl(
}
/*
@unimplemented
@implemented
*/
KSDDKAPI
VOID
@ -1228,9 +1228,65 @@ NTAPI
KsAcquireDevice(
IN PKSDEVICE Device)
{
UNIMPLEMENTED
IKsDevice *KsDevice;
PKSIDEVICE_HEADER DeviceHeader = (PKSIDEVICE_HEADER)CONTAINING_RECORD(Device, KSIDEVICE_HEADER, KsDevice);
/* get device interface*/
KsDevice = (IKsDevice*)&DeviceHeader->lpVtblIKsDevice;
/* acquire device mutex */
KsDevice->lpVtbl->AcquireDevice(KsDevice);
}
/*
@implemented
*/
VOID
NTAPI
KsReleaseDevice(
IN PKSDEVICE Device)
{
IKsDevice *KsDevice;
PKSIDEVICE_HEADER DeviceHeader = (PKSIDEVICE_HEADER)CONTAINING_RECORD(Device, KSIDEVICE_HEADER, KsDevice);
/* get device interface*/
KsDevice = (IKsDevice*)&DeviceHeader->lpVtblIKsDevice;
/* release device mutex */
KsDevice->lpVtbl->ReleaseDevice(KsDevice);
}
/*
@implemented
*/
KSDDKAPI
VOID
NTAPI
KsTerminateDevice(
IN PDEVICE_OBJECT DeviceObject)
{
IKsDevice *KsDevice;
PKSIDEVICE_HEADER DeviceHeader;
PDEVICE_EXTENSION DeviceExtension = (PDEVICE_EXTENSION)DeviceObject->DeviceExtension;
/* get device header */
DeviceHeader = DeviceExtension->DeviceHeader;
/* get device interface*/
KsDevice = (IKsDevice*)&DeviceHeader->lpVtblIKsDevice;
/* now free device header */
KsFreeDeviceHeader((KSDEVICE_HEADER)DeviceHeader);
/* release interface when available */
if (KsDevice)
{
/* delete IKsDevice interface */
KsDevice->lpVtbl->Release(KsDevice);
}
}
/*
@unimplemented

View file

@ -681,32 +681,7 @@ KsInitializeDevice(
}
/*
@implemented
*/
KSDDKAPI
VOID
NTAPI
KsTerminateDevice(
IN PDEVICE_OBJECT DeviceObject)
{
UNIMPLEMENTED
}
/*
@implemented
*/
VOID
NTAPI
KsReleaseDevice(
IN PKSDEVICE Device)
{
UNIMPLEMENTED
}
/*
@implemented
@unimplemented
*/
KSDDKAPI
NTSTATUS

View file

@ -926,7 +926,7 @@ KspCreateFilter(
}
/*
@implemented
@unimplemented
*/
KSDDKAPI
VOID
@ -938,7 +938,7 @@ KsFilterAcquireProcessingMutex(
}
/*
@implemented
@unimplemented
*/
KSDDKAPI
VOID
@ -950,7 +950,7 @@ KsFilterReleaseProcessingMutex(
}
/*
@implemented
@unimplemented
*/
KSDDKAPI
NTSTATUS
@ -965,7 +965,7 @@ KsFilterAddTopologyConnections (
}
/*
@implemented
@unimplemented
*/
KSDDKAPI
VOID
@ -978,7 +978,7 @@ KsFilterAttemptProcessing(
}
/*
@implemented
@unimplemented
*/
KSDDKAPI
NTSTATUS
@ -993,7 +993,7 @@ KsFilterCreateNode (
}
/*
@implemented
@unimplemented
*/
KSDDKAPI
NTSTATUS
@ -1008,7 +1008,7 @@ KsFilterCreatePinFactory (
}
/*
@implemented
@unimplemented
*/
KSDDKAPI
PKSGATE
@ -1021,7 +1021,7 @@ KsFilterGetAndGate(
}
/*
@implemented
@unimplemented
*/
KSDDKAPI
ULONG
@ -1035,7 +1035,7 @@ KsFilterGetChildPinCount(
}
/*
@implemented
@unimplemented
*/
KSDDKAPI
PKSPIN
@ -1049,7 +1049,7 @@ KsFilterGetFirstChildPin(
}
/*
@implemented
@unimplemented
*/
KSDDKAPI
VOID
@ -1063,7 +1063,7 @@ KsFilterRegisterPowerCallbacks(
}
/*
@implemented
@unimplemented
*/
KSDDKAPI
PKSFILTER

View file

@ -153,7 +153,7 @@
@ stdcall KsPinRegisterIrpCompletionCallback(ptr ptr)
@ stdcall KsPinRegisterPowerCallbacks(ptr ptr ptr)
@ stdcall KsPinReleaseProcessingMutex(ptr)
;@ stdcall KsPinSetPinClockTime(ptr long)
@ stdcall KsPinSetPinClockTime(ptr double)
@ stdcall KsPinSubmitFrame(ptr ptr long ptr ptr)
@ stdcall KsPinSubmitFrameMdl(ptr ptr ptr ptr)
@ stdcall KsProbeStreamIrp(ptr long long)
@ -184,7 +184,7 @@
@ stdcall KsServiceBusEnumCreateRequest(ptr ptr)
@ stdcall KsServiceBusEnumPnpRequest(ptr ptr)
@ stdcall KsSetDefaultClockState(ptr long)
;@ stdcall KsSetDefaultClockTime(ptr long)
@ stdcall KsSetDefaultClockTime(ptr double)
@ stdcall KsSetDevicePnpAndBaseObject(ptr ptr ptr)
@ stdcall KsSetInformationFile(ptr ptr long long)
@ stdcall KsSetMajorFunctionHandler(ptr long)
@ -202,7 +202,7 @@
@ stdcall KsStreamPointerGetMdl(ptr)
@ stdcall KsStreamPointerGetNextClone(ptr)
@ stdcall KsStreamPointerLock(ptr)
;@ stdcall KsStreamPointerScheduleTimeout(ptr ptr longlong)
@ stdcall KsStreamPointerScheduleTimeout(ptr ptr double)
@ stdcall KsStreamPointerSetStatusCode(ptr long)
@ stdcall KsStreamPointerUnlock(ptr long)
@ stdcall KsSynchronousIoControlDevice(ptr long long ptr long ptr long ptr)