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.

88 lines
2.7 KiB

  1. /*++
  2. Copyright (c) 2000 Microsoft Corporation
  3. Module Name:
  4. FaxEventLogging.h
  5. Abstract:
  6. Declaration of the CFaxEventLogging Class.
  7. Author:
  8. Iv Garber (IvG) Jun, 2000
  9. Revision History:
  10. --*/
  11. #ifndef __FAXEVENTLOGGING_H_
  12. #define __FAXEVENTLOGGING_H_
  13. #include "resource.h" // main symbols
  14. #include "FaxCommon.h"
  15. //
  16. //========================= EVENT LOGGING ======================================
  17. //
  18. class ATL_NO_VTABLE CFaxEventLogging :
  19. public CComObjectRootEx<CComSingleThreadModel>,
  20. public ISupportErrorInfo,
  21. public IDispatchImpl<IFaxEventLogging, &IID_IFaxEventLogging, &LIBID_FAXCOMEXLib>,
  22. public CFaxInitInner
  23. {
  24. public:
  25. CFaxEventLogging() : CFaxInitInner(_T("FAX EVENT LOGGING")),
  26. m_bInited(false),
  27. m_InitLevel(fllNONE),
  28. m_OutboundLevel(fllNONE),
  29. m_InboundLevel(fllNONE),
  30. m_GeneralLevel(fllNONE)
  31. {
  32. }
  33. DECLARE_REGISTRY_RESOURCEID(IDR_FAXEVENTLOGGING)
  34. DECLARE_NOT_AGGREGATABLE(CFaxEventLogging)
  35. DECLARE_PROTECT_FINAL_CONSTRUCT()
  36. BEGIN_COM_MAP(CFaxEventLogging)
  37. COM_INTERFACE_ENTRY(IFaxEventLogging)
  38. COM_INTERFACE_ENTRY(IDispatch)
  39. COM_INTERFACE_ENTRY(ISupportErrorInfo)
  40. COM_INTERFACE_ENTRY(IFaxInitInner)
  41. END_COM_MAP()
  42. // Interfaces
  43. STDMETHOD(Save)();
  44. STDMETHOD(Refresh)();
  45. STDMETHOD(InterfaceSupportsErrorInfo)(REFIID riid);
  46. STDMETHOD(put_InitEventsLevel)(/*[out, retval]*/ FAX_LOG_LEVEL_ENUM InitEventLevel);
  47. STDMETHOD(get_InitEventsLevel)(/*[out, retval]*/ FAX_LOG_LEVEL_ENUM *pInitEventLevel);
  48. STDMETHOD(put_InboundEventsLevel)(/*[out, retval]*/ FAX_LOG_LEVEL_ENUM InboundEventLevel);
  49. STDMETHOD(put_GeneralEventsLevel)(/*[out, retval]*/ FAX_LOG_LEVEL_ENUM GeneralEventsLevel);
  50. STDMETHOD(get_InboundEventsLevel)(/*[out, retval]*/ FAX_LOG_LEVEL_ENUM *pInboundEventLevel);
  51. STDMETHOD(put_OutboundEventsLevel)(/*[out, retval]*/ FAX_LOG_LEVEL_ENUM OutboundEventsLevel);
  52. STDMETHOD(get_GeneralEventsLevel)(/*[out, retval]*/ FAX_LOG_LEVEL_ENUM *pGeneralEventsLevel);
  53. STDMETHOD(get_OutboundEventsLevel)(/*[out, retval]*/ FAX_LOG_LEVEL_ENUM *pOutboundEventsLevel);
  54. private:
  55. bool m_bInited;
  56. FAX_LOG_LEVEL_ENUM m_InitLevel;
  57. FAX_LOG_LEVEL_ENUM m_OutboundLevel;
  58. FAX_LOG_LEVEL_ENUM m_InboundLevel;
  59. FAX_LOG_LEVEL_ENUM m_GeneralLevel;
  60. CComBSTR m_bstrInitName;
  61. CComBSTR m_bstrOutboundName;
  62. CComBSTR m_bstrInboundName;
  63. CComBSTR m_bstrGeneralName;
  64. STDMETHOD(GetLevel)(FAX_ENUM_LOG_CATEGORIES faxCategory, FAX_LOG_LEVEL_ENUM *faxLevel);
  65. STDMETHOD(PutLevel)(FAX_ENUM_LOG_CATEGORIES faxCategory, FAX_LOG_LEVEL_ENUM faxLevel);
  66. };
  67. #endif //__FAXEVENTLOGGING_H_