Source code of Windows XP (NT5)
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.2 KiB

  1. // Gemplus (C) 1999
  2. // Version 1.0
  3. // Author: Sergey Ivanov
  4. // Date of creation - 18.05.1999
  5. // Change log:
  6. //
  7. #ifndef WDM_INT_INT
  8. #define WDM_INT_INT
  9. #include "generic.h"
  10. #include "int.h"
  11. #pragma PAGEDCODE
  12. class CWDMInterrupt : public CInterrupt
  13. {
  14. public:
  15. NTSTATUS m_Status;
  16. SAFE_DESTRUCTORS();
  17. virtual VOID dispose(VOID){self_delete();};
  18. protected:
  19. CWDMInterrupt(){m_Status = STATUS_SUCCESS;};
  20. virtual ~CWDMInterrupt(){};
  21. public:
  22. static CInterrupt* create(VOID);
  23. virtual NTSTATUS connect(OUT PKINTERRUPT *InterruptObject,
  24. IN PKSERVICE_ROUTINE ServiceRoutine,
  25. IN PVOID ServiceContext,
  26. IN PKSPIN_LOCK SpinLock OPTIONAL,
  27. IN ULONG Vector,
  28. IN KIRQL Irql,
  29. IN KIRQL SynchronizeIrql,
  30. IN KINTERRUPT_MODE InterruptMode,
  31. IN BOOLEAN ShareVector,
  32. IN KAFFINITY ProcessorEnableMask,
  33. IN BOOLEAN FloatingSave
  34. );
  35. virtual VOID disconnect(IN PKINTERRUPT InterruptObject);
  36. virtual VOID initializeDpcRequest(IN PDEVICE_OBJECT pFdo,IN PDEFERRED_FUNCTION DpcForIsr);
  37. virtual BOOLEAN synchronizeExecution ( IN PKINTERRUPT Interrupt,
  38. IN PKSYNCHRONIZE_ROUTINE SynchronizeRoutine,
  39. IN PVOID SynchronizeContext);
  40. };
  41. #endif//CInterrupt