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.
 
 
 
 
 
 

61 lines
1.7 KiB

typedef NTSTATUS (*ACPICALLBACKROUTINE)(
IN PDEVICE_OBJECT DeviceObject,
IN PIRP Irp,
IN PVOID Context,
IN BOOLEAN CalledInCompletion
) ;
NTSTATUS
ACPIIrpSetPagableCompletionRoutineAndForward(
IN PDEVICE_OBJECT DeviceObject,
IN PIRP Irp,
IN ACPICALLBACKROUTINE CompletionRoutine,
IN PVOID Context,
IN BOOLEAN InvokeOnSuccess,
IN BOOLEAN InvokeIfUnhandled,
IN BOOLEAN InvokeOnError,
IN BOOLEAN InvokeOnCancel
);
NTSTATUS
ACPIIrpInvokeDispatchRoutine(
IN PDEVICE_OBJECT DeviceObject,
IN PIRP Irp,
IN PVOID Context,
IN ACPICALLBACKROUTINE CompletionRoutine,
IN BOOLEAN InvokeOnSuccess,
IN BOOLEAN InvokeIfUnhandled
);
//
// These functions are private to acpiirp.c
//
typedef struct {
PDEVICE_OBJECT DeviceObject ;
PIRP Irp ;
ACPICALLBACKROUTINE CompletionRoutine ;
BOOLEAN InvokeOnSuccess ;
BOOLEAN InvokeIfUnhandled ;
BOOLEAN InvokeOnError ;
BOOLEAN InvokeOnCancel ;
PIO_WORKITEM IoWorkItem ;
PVOID Context ;
} ACPI_IO_CONTEXT, *PACPI_IO_CONTEXT ;
NTSTATUS
ACPIIrpGenericFilterCompletionHandler(
IN PDEVICE_OBJECT DeviceObject,
IN PIRP Irp,
IN PVOID Context
);
VOID
ACPIIrpCompletionRoutineWorker(
IN PDEVICE_OBJECT DeviceObject,
IN PVOID Context
);