Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

47 lines
1.4 KiB

#include "wdmint.h"
#pragma PAGEDCODE
CInterrupt* CWDMInterrupt::create(VOID)
{ return new (NonPagedPool) CWDMInterrupt; }
#pragma PAGEDCODE
NTSTATUS CWDMInterrupt::connect(OUT PKINTERRUPT *InterruptObject,
IN PKSERVICE_ROUTINE ServiceRoutine,
IN PVOID ServiceContext,
IN PKSPIN_LOCK SpinLock OPTIONAL,
IN ULONG Vector,
IN KIRQL Irql,
IN KIRQL SynchronizeIrql,
IN KINTERRUPT_MODE InterruptMode,
IN BOOLEAN ShareVector,
IN KAFFINITY ProcessorEnableMask,
IN BOOLEAN FloatingSave )
{
return ::IoConnectInterrupt(InterruptObject,ServiceRoutine,ServiceContext,
SpinLock,Vector,Irql,SynchronizeIrql,
InterruptMode,ShareVector,ProcessorEnableMask,FloatingSave);
}
#pragma PAGEDCODE
VOID CWDMInterrupt::disconnect(IN PKINTERRUPT InterruptObject)
{
::IoDisconnectInterrupt(InterruptObject);
}
#pragma PAGEDCODE
VOID CWDMInterrupt::initializeDpcRequest(IN PDEVICE_OBJECT DeviceObject,IN PDEFERRED_FUNCTION DpcForIsr)
{
IoInitializeDpcRequest(DeviceObject, DpcForIsr);
//::KeInitializeDpc( &(DeviceObject)->Dpc,DpcForIsr,NULL);
}
#pragma PAGEDCODE
BOOLEAN CWDMInterrupt::synchronizeExecution (IN PKINTERRUPT Interrupt,
IN PKSYNCHRONIZE_ROUTINE SynchronizeRoutine,
IN PVOID SynchronizeContext)
{
return ::KeSynchronizeExecution (Interrupt,SynchronizeRoutine,SynchronizeContext);
}