TableInfoMgr.h 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. //TableInfoMgr.h
  2. /////////////////////////////////////////////////////////////////////
  3. /********************************************************************
  4. 主要是对全局信息的管理
  5. ********************************************************************/
  6. #ifndef _TABLEINFO_MGR_H_
  7. #define _TABLEINFO_MGR_H_
  8. /////////////////////////////////////////////////////////////////////
  9. #include "mutexlock.h"
  10. /////////////////////////////////////////////////////////////////////
  11. template<typename Key, typename Value > class CList;
  12. typedef CList<long, void *> LongVoidLists;
  13. /////////////////////////////////////////////////////////////////////
  14. class CTableInfoMgr
  15. {
  16. public:
  17. CTableInfoMgr();
  18. virtual ~CTableInfoMgr();
  19. public:
  20. BOOL Init(int nElemSize, char *szTableName);
  21. BOOL End();
  22. int GetElementSize();
  23. const char *GetTableName();
  24. long GetItemCount();
  25. void *GetItemValue(long lIndex);
  26. BOOL Add(long lKey, void *pInfo);
  27. BOOL Modify(long lKey, void *pInfo);
  28. BOOL Delete(long lKey);
  29. BOOL DeleteAll();
  30. void *Find(long lKey);
  31. private:
  32. int m_nElementSize;
  33. char m_szTableName[64];
  34. LongVoidLists *m_ptTableInfo;
  35. };
  36. /////////////////////////////////////////////////////////////////////
  37. #endif //_TABLEINFO_MGR_H_