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.

70 lines
1.5 KiB

  1. // NCSpewFile.h: interface for the CNCSpewFile class.
  2. //
  3. //////////////////////////////////////////////////////////////////////
  4. #if !defined(AFX_NCSPEWFILE_H__B512E73A_7E4E_4018_B009_A4925E007FB5__INCLUDED_)
  5. #define AFX_NCSPEWFILE_H__B512E73A_7E4E_4018_B009_A4925E007FB5__INCLUDED_
  6. #if _MSC_VER > 1000
  7. #pragma once
  8. #endif // _MSC_VER > 1000
  9. #include "regexpr.h"
  10. using namespace regex;
  11. typedef map<DWORD, tstring> CNCSpareLineMap;
  12. class CNCEntry
  13. {
  14. public:
  15. CNCEntry(DWORD dwLineNumber, tstring szTag, time_t m_tmTime, tstring szDescription, DWORD dwProcessID, DWORD dwThreadID);
  16. // CNCEntry(const CNCEntry&);
  17. DWORD m_dwLineNumber;
  18. tstring m_szTag;
  19. time_t m_tmTime;
  20. DWORD m_dwLevel;
  21. tstring m_szDescription;
  22. DWORD m_dwThreadId;
  23. DWORD m_dwProcessId;
  24. };
  25. typedef list<CNCEntry> CNCEntryList;
  26. typedef map<tstring, DWORD> CNCTagMap;
  27. class CNCThread
  28. {
  29. public:
  30. CNCThread();
  31. DWORD m_dwProcessId;
  32. DWORD m_dwThreadID;
  33. CNCEntryList m_lsLines;
  34. CNCTagMap m_Tags;
  35. };
  36. typedef map<DWORD, CNCThread> CNCThreadList;
  37. class CSpew
  38. {
  39. public:
  40. tstring szSpewName;
  41. CNCThreadList m_NCThreadList;
  42. CNCEntryList m_lsLines;
  43. CNCTagMap m_Tags;
  44. CNCSpareLineMap m_SpareLines;
  45. };
  46. typedef map<DWORD, CSpew> CSpewList;
  47. class CNCSpewFile
  48. {
  49. public:
  50. CNCThreadList *m_pCNCurrentThread;
  51. CSpewList m_Spews;
  52. public:
  53. CNCSpewFile(CArchive& ar);
  54. virtual ~CNCSpewFile();
  55. };
  56. #endif // !defined(AFX_NCSPEWFILE_H__B512E73A_7E4E_4018_B009_A4925E007FB5__INCLUDED_)