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.

35 lines
1.0 KiB

  1. // Gemplus (C) 1999
  2. // Version 1.0
  3. // Author: Sergey Ivanov
  4. // Date of creation - 18.05.1999
  5. // Change log:
  6. #ifndef WDM_MEM_INT
  7. #define WDM_MEM_INT
  8. #include "generic.h"
  9. #include "memory.h"
  10. #pragma PAGEDCODE
  11. class CWDMMemory : public CMemory
  12. {
  13. public:
  14. NTSTATUS m_Status;
  15. SAFE_DESTRUCTORS();
  16. virtual VOID dispose(VOID){self_delete();};
  17. protected:
  18. CWDMMemory(){m_Status = STATUS_SUCCESS;};
  19. virtual ~CWDMMemory(){};
  20. public:
  21. static CMemory* create(VOID);
  22. virtual PVOID allocate(IN POOL_TYPE PoolType,IN SIZE_T NumberOfBytes);
  23. virtual VOID zero(IN PVOID pMem,IN SIZE_T size);
  24. virtual VOID free(IN PVOID pMem);
  25. virtual VOID copy(IN VOID UNALIGNED *Destination,IN CONST VOID UNALIGNED *Source, IN SIZE_T Length);
  26. virtual PVOID mapIoSpace(IN PHYSICAL_ADDRESS PhysicalAddress,IN SIZE_T NumberOfBytes,IN MEMORY_CACHING_TYPE CacheType);
  27. virtual VOID unmapIoSpace(IN PVOID BaseAddress,IN SIZE_T NumberOfBytes);
  28. virtual VOID set(IN VOID UNALIGNED *Destination,IN SIZE_T Length,LONG Fill);
  29. };
  30. #endif//MEMORY