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.

85 lines
2.8 KiB

  1. ///////////////////////////////////////////////////////////////////////////////
  2. //
  3. //
  4. // Copyright (c) 1998-1999 Microsoft Corporation
  5. //
  6. //
  7. // Name: Manager.h
  8. //
  9. // Description: Definition of the CTerminalManager class
  10. //
  11. ///////////////////////////////////////////////////////////////////////////////
  12. #if !defined(AFX_MANAGER_H__E75F58A3_AD1C_11D0_A028_00AA00B605A4__INCLUDED_)
  13. #define AFX_MANAGER_H__E75F58A3_AD1C_11D0_A028_00AA00B605A4__INCLUDED_
  14. #if _MSC_VER >= 1000
  15. #pragma once
  16. #endif // _MSC_VER >= 1000
  17. #include "resource.h" // main symbols
  18. /////////////////////////////////////////////////////////////////////////////
  19. /////////////////////////////////////////////////////////////////////////////
  20. // //
  21. // CTerminalManager //
  22. // //
  23. /////////////////////////////////////////////////////////////////////////////
  24. /////////////////////////////////////////////////////////////////////////////
  25. class CTerminalManager :
  26. public ITTerminalManager2,
  27. public CComObjectRootEx<CComMultiThreadModel>,
  28. public CComCoClass<CTerminalManager,&CLSID_TerminalManager>
  29. {
  30. public:
  31. CTerminalManager();
  32. BEGIN_COM_MAP(CTerminalManager)
  33. COM_INTERFACE_ENTRY(ITTerminalManager)
  34. COM_INTERFACE_ENTRY(ITTerminalManager2)
  35. END_COM_MAP()
  36. DECLARE_VQI()
  37. DECLARE_REGISTRY_RESOURCEID(IDR_TerminalManager)
  38. // ITTerminalManager
  39. public:
  40. STDMETHOD(GetDynamicTerminalClasses)(
  41. IN DWORD dwMediaTypes,
  42. IN OUT DWORD * pdwNumClasses,
  43. OUT IID * pTerminalClasses
  44. );
  45. STDMETHOD(CreateDynamicTerminal)(
  46. IN IUnknown * pOuterUnknown,
  47. IN IID iidTerminalClass,
  48. IN DWORD dwMediaType,
  49. IN TERMINAL_DIRECTION Direction,
  50. IN MSP_HANDLE htAddress,
  51. OUT ITTerminal ** ppTerminal
  52. );
  53. // ITTerminalManager2
  54. public:
  55. STDMETHOD(GetPluggableSuperclasses)(
  56. IN OUT DWORD * pdwNumSuperclasses,
  57. OUT IID * pSuperclasses
  58. );
  59. STDMETHOD(GetPluggableTerminalClasses)(
  60. IN IID iidSuperclass,
  61. IN DWORD dwMediaTypes,
  62. IN OUT DWORD * pdwNumTerminals,
  63. OUT IID * pTerminals
  64. );
  65. };
  66. #endif // !defined(AFX_MANAGER_H__E75F58A3_AD1C_11D0_A028_00AA00B605A4__INCLUDED_)