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.

92 lines
2.2 KiB

  1. #ifndef __BASECLS_HPP__
  2. #define __BASECLS_HPP__
  3. /*++
  4. Copyright (C) 2000 Microsoft Corporation
  5. All rights reserved.
  6. Module Name:
  7. ldmgr.hpp
  8. Abstract:
  9. This file contains the declararion of some base
  10. classes that are utilized by other classes(objects)
  11. in the surrogate process
  12. So far we have 2 of these
  13. o Printer Driver class
  14. o Ref Count Class
  15. Author:
  16. Khaled Sedky (khaleds) 18-Jan-2000
  17. Revision History:
  18. --*/
  19. class TRefCntMgr
  20. {
  21. public:
  22. TRefCntMgr(
  23. VOID
  24. );
  25. virtual ~TRefCntMgr(
  26. VOID
  27. );
  28. virtual DWORD
  29. AddRef(
  30. VOID
  31. );
  32. virtual DWORD
  33. Release(
  34. VOID
  35. );
  36. private:
  37. LONG m_cRefCnt;
  38. };
  39. class TClassID
  40. {
  41. public:
  42. char szClassID[32];
  43. inline TClassID(char *pszCallerID)
  44. {
  45. ZeroMemory(szClassID,32);
  46. StringCchCopyA(szClassID,
  47. 32,
  48. pszCallerID);
  49. }
  50. };
  51. class TPrinterDriver
  52. {
  53. public:
  54. TPrinterDriver(
  55. VOID
  56. );
  57. virtual ~TPrinterDriver(
  58. VOID
  59. );
  60. protected:
  61. HMODULE
  62. LoadPrinterDriver(
  63. IN HANDLE hPrinter
  64. );
  65. };
  66. #endif //__BASECLS_HPP__