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.

74 lines
1.9 KiB

  1. /*++
  2. Copyright (c) 2000 Microsoft Corporation
  3. Module Name:
  4. FaxOutboundRoutingGroup.h
  5. Abstract:
  6. Declaration of the CFaxOutboundRoutingGroup class.
  7. Author:
  8. Iv Garber (IvG) Jun, 2000
  9. Revision History:
  10. --*/
  11. #ifndef __FAXOUTBOUNDROUTINGGROUP_H_
  12. #define __FAXOUTBOUNDROUTINGGROUP_H_
  13. #include "resource.h" // main symbols
  14. #include "FaxCommon.h"
  15. //
  16. //================= FAX OUTBOUND ROUTING GROUP ===============================
  17. // Fax Outbound Routing Group does not need Ptr to the Fax Server.
  18. // All its Properties are taken at Init.
  19. //
  20. class ATL_NO_VTABLE CFaxOutboundRoutingGroup :
  21. public CComObjectRootEx<CComSingleThreadModel>,
  22. public ISupportErrorInfo,
  23. public IDispatchImpl<IFaxOutboundRoutingGroup, &IID_IFaxOutboundRoutingGroup, &LIBID_FAXCOMEXLib>
  24. {
  25. public:
  26. CFaxOutboundRoutingGroup()
  27. {
  28. DBG_ENTER(_T("FAX OUTBOUND ROUTING GROUP -- CREATE"));
  29. }
  30. ~CFaxOutboundRoutingGroup()
  31. {
  32. DBG_ENTER(_T("FAX OUTBOUND ROUTING GROUP -- DESTROY"));
  33. }
  34. DECLARE_REGISTRY_RESOURCEID(IDR_FAXOUTBOUNDROUTINGGROUP)
  35. DECLARE_NOT_AGGREGATABLE(CFaxOutboundRoutingGroup)
  36. DECLARE_PROTECT_FINAL_CONSTRUCT()
  37. BEGIN_COM_MAP(CFaxOutboundRoutingGroup)
  38. COM_INTERFACE_ENTRY(IFaxOutboundRoutingGroup)
  39. COM_INTERFACE_ENTRY(IDispatch)
  40. COM_INTERFACE_ENTRY(ISupportErrorInfo)
  41. END_COM_MAP()
  42. // Interfaces
  43. STDMETHOD(InterfaceSupportsErrorInfo)(REFIID riid);
  44. STDMETHOD(get_Name)(/*[out, retval]*/ BSTR *pbstrName);
  45. STDMETHOD(get_Status)(/*[out, retval]*/ FAX_GROUP_STATUS_ENUM *pStatus);
  46. STDMETHOD(get_DeviceIds)(/*[out, retval]*/ IFaxDeviceIds **pFaxDeviceIds);
  47. // Internal Use
  48. STDMETHOD(Init)(FAX_OUTBOUND_ROUTING_GROUP *pInfo, IFaxServerInner *pServer);
  49. private:
  50. CComBSTR m_bstrName;
  51. FAX_GROUP_STATUS_ENUM m_Status;
  52. CComPtr<IFaxDeviceIds> m_pDeviceIds;
  53. };
  54. #endif //__FAXOUTBOUNDROUTINGGROUP_H_