KMemStack.h
上传用户:dzyhzl
上传日期:2019-04-29
资源大小:56270k
文件大小:1k
源码类别:

模拟服务器

开发平台:

C/C++

  1. //---------------------------------------------------------------------------
  2. // Sword3 Engine (c) 1999-2000 by Kingsoft
  3. //
  4. // File: KMemStack.h
  5. // Date: 2000.08.08
  6. // Code: WangWei(Daphnis)
  7. // Desc: Header File
  8. //---------------------------------------------------------------------------
  9. #ifndef KMemStack_H
  10. #define KMemStack_H
  11. //---------------------------------------------------------------------------
  12. #define MAX_CHUNK 10
  13. //---------------------------------------------------------------------------
  14. class ENGINE_API KMemStack
  15. {
  16. private:
  17. PBYTE m_pStack[MAX_CHUNK];
  18. int m_nStackTop;
  19. int  m_nStackEnd;
  20. int m_nChunkTop;
  21. int m_nChunkSize;
  22. public:
  23. KMemStack();
  24. ~KMemStack();
  25. void Init(int nChunkSize = 65536);
  26. PVOID Push(int nSize);
  27. void Free(PVOID pMem);
  28. BOOL AllocNewChunk();
  29. void FreeAllChunks();
  30. int GetChunkSize();
  31. int GetStackSize();
  32. };
  33. //---------------------------------------------------------------------------
  34. #endif