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.

114 lines
3.6 KiB

  1. /*++
  2. Copyright (c) 2000 Microsoft Corporation
  3. Module Name:
  4. FaxSender.h
  5. Abstract:
  6. Definition of Sender Class
  7. Author:
  8. Iv Garber (IvG) May, 2000
  9. Revision History:
  10. --*/
  11. #ifndef __FAXSENDER_H_
  12. #define __FAXSENDER_H_
  13. #include "resource.h"
  14. #include "FaxCommon.h"
  15. #include "FaxRecipient.h"
  16. //
  17. //====================== FAX SENDER ===========================================================
  18. //
  19. class ATL_NO_VTABLE CFaxSender :
  20. public CComObjectRootEx<CComSingleThreadModel>,
  21. public ISupportErrorInfo,
  22. public IDispatchImpl<IFaxSender, &IID_IFaxSender, &LIBID_FAXCOMEXLib>
  23. {
  24. public:
  25. CFaxSender()
  26. {
  27. }
  28. DECLARE_REGISTRY_RESOURCEID(IDR_FAXSENDER)
  29. DECLARE_NOT_AGGREGATABLE(CFaxSender)
  30. DECLARE_PROTECT_FINAL_CONSTRUCT()
  31. BEGIN_COM_MAP(CFaxSender)
  32. COM_INTERFACE_ENTRY(IFaxSender)
  33. COM_INTERFACE_ENTRY(IDispatch)
  34. COM_INTERFACE_ENTRY(ISupportErrorInfo)
  35. END_COM_MAP()
  36. public:
  37. static HRESULT Create(IFaxSender **ppSender);
  38. STDMETHOD(GetSenderProfile)(/*[out, retval]*/ FAX_PERSONAL_PROFILE *pSenderProfile);
  39. STDMETHOD(PutSenderProfile)(/*[in]*/ FAX_PERSONAL_PROFILE *pSenderProfile);
  40. // ISupportsErrorInfo
  41. STDMETHOD(InterfaceSupportsErrorInfo)(REFIID riid);
  42. // IFaxSender
  43. STDMETHOD(SaveDefaultSender)();
  44. STDMETHOD(LoadDefaultSender)();
  45. STDMETHOD(get_BillingCode)(/*[out, retval]*/ BSTR *pbstrBillingCode);
  46. STDMETHOD(put_BillingCode)(/*[in]*/ BSTR bstrBillingCode);
  47. STDMETHOD(get_City)(/*[out, retval]*/ BSTR *pbstrCity);
  48. STDMETHOD(put_City)(/*[in]*/ BSTR bstrCity);
  49. STDMETHOD(get_Company)(/*[out, retval]*/ BSTR *pbstrCompany);
  50. STDMETHOD(put_Company)(/*[in]*/ BSTR bstrCompany);
  51. STDMETHOD(get_Country)(/*[out, retval]*/ BSTR *pbstrCountry);
  52. STDMETHOD(put_Country)(/*[in]*/ BSTR bstrCountry);
  53. STDMETHOD(get_Department)(/*[out, retval]*/ BSTR *pbstrDepartment);
  54. STDMETHOD(put_Department)(/*[in]*/ BSTR bstrDepartment);
  55. STDMETHOD(get_Email)(/*[out, retval]*/ BSTR *pbstrEmail);
  56. STDMETHOD(put_Email)(/*[in]*/ BSTR bstrEmail);
  57. STDMETHOD(get_HomePhone)(/*[out, retval]*/ BSTR *pbstrHomePhone);
  58. STDMETHOD(put_HomePhone)(/*[in]*/ BSTR bstrHomePhone);
  59. STDMETHOD(get_TSID)(/*[out, retval]*/ BSTR *pbstrTSID);
  60. STDMETHOD(put_TSID)(/*[in]*/ BSTR bstrTSID);
  61. STDMETHOD(get_OfficePhone)(/*[out, retval]*/ BSTR *pbstrOfficePhone);
  62. STDMETHOD(put_OfficePhone)(/*[in]*/ BSTR bstrOfficePhone);
  63. STDMETHOD(get_OfficeLocation)(/*[out, retval]*/ BSTR *pbstrOfficeLocation);
  64. STDMETHOD(put_OfficeLocation)(/*[in]*/ BSTR bstrOfficeLocation);
  65. STDMETHOD(get_State)(/*[out, retval]*/ BSTR *pbstrState);
  66. STDMETHOD(put_State)(/*[in]*/ BSTR bstrState);
  67. STDMETHOD(get_StreetAddress)(/*[out, retval]*/ BSTR *pbstrStreetAddress);
  68. STDMETHOD(put_StreetAddress)(/*[in]*/ BSTR bstrStreetAddress);
  69. STDMETHOD(get_Title)(/*[out, retval]*/ BSTR *pbstrTitle);
  70. STDMETHOD(put_Title)(/*[in]*/ BSTR bstrTitle);
  71. STDMETHOD(get_ZipCode)(/*[out, retval]*/ BSTR *pbstrZipCode);
  72. STDMETHOD(put_ZipCode)(/*[in]*/ BSTR bstrZipCode);
  73. STDMETHOD(get_FaxNumber)(/*[out, retval]*/ BSTR *pbstrFaxNumber);
  74. STDMETHOD(put_FaxNumber)(/*[in]*/ BSTR bstrFaxNumber);
  75. STDMETHOD(get_Name)(/*[out, retval]*/ BSTR *pbstrName);
  76. STDMETHOD(put_Name)(/*[in]*/ BSTR bstrName);
  77. private:
  78. CComBSTR m_bstrOfficeLocation;
  79. CComBSTR m_bstrStreetAddress;
  80. CComBSTR m_bstrOfficePhone;
  81. CComBSTR m_bstrBillingCode;
  82. CComBSTR m_bstrDepartment;
  83. CComBSTR m_bstrHomePhone;
  84. CComBSTR m_bstrCompany;
  85. CComBSTR m_bstrCountry;
  86. CComBSTR m_bstrZipCode;
  87. CComBSTR m_bstrEmail;
  88. CComBSTR m_bstrState;
  89. CComBSTR m_bstrTitle;
  90. CComBSTR m_bstrCity;
  91. CComBSTR m_bstrTSID;
  92. CComObject<CFaxRecipient> m_Recipient;
  93. };
  94. #endif //__FAXSENDER_H_