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.

94 lines
3.3 KiB

  1. /****************************************************************************
  2. * @doc INTERNAL NETWORKP
  3. *
  4. * @module CaptureP.h | Header file for the <c CNetworkProperty>
  5. * class used to implement a property page to test the TAPI control
  6. * interface <i ITQualityControl>.
  7. ***************************************************************************/
  8. #define NUM_NETWORK_CONTROLS 10
  9. #define IDC_VideoOut_RTT 0
  10. #define IDC_VideoOut_LossRate 1
  11. #define IDC_VideoIn_RTT 2
  12. #define IDC_VideoIn_LossRate 3
  13. #define IDC_AudioOut_RTT 4
  14. #define IDC_AudioOut_LossRate 5
  15. #define IDC_AudioIn_RTT 6
  16. #define IDC_AudioIn_LossRate 7
  17. #define IDC_Video_PlayoutDelay 8
  18. #define IDC_Audio_PlayoutDelay 9
  19. /****************************************************************************
  20. * @doc INTERNAL CNETWORKPCLASS
  21. *
  22. * @class CNetworkProperty | This class implements handling of a
  23. * single network property in a property page.
  24. *
  25. * @mdata int | CNetworkProperty | m_NumProperties | Keeps
  26. * track of the number of properties.
  27. *
  28. * @mdata ITQualityControl* | CNetworkProperty | m_pITQualityControl | Pointer
  29. * to the <i ITQualityControl> interface.
  30. ***************************************************************************/
  31. class CNetworkProperty : public CPropertyEditor
  32. {
  33. public:
  34. CNetworkProperty(HWND hDlg, ULONG IDLabel, ULONG IDMinControl, ULONG IDMaxControl, ULONG IDDefaultControl, ULONG IDStepControl, ULONG IDEditControl, ULONG IDTrackbarControl, ULONG IDProgressControl, ULONG IDProperty, ITStreamQualityControl *pITQualityControl);
  35. ~CNetworkProperty ();
  36. // CPropertyEditor base class pure virtual overrides
  37. HRESULT GetValue();
  38. HRESULT SetValue();
  39. HRESULT GetRange();
  40. private:
  41. ITStreamQualityControl *m_pITQualityControl;
  42. };
  43. /****************************************************************************
  44. * @doc INTERNAL CNETWORKPCLASS
  45. *
  46. * @class CNetworkProperties | This class implements a property page
  47. * to test the new TAPI control interface <i ITQualityControl>.
  48. *
  49. * @mdata int | CNetworkProperties | m_NumProperties | Keeps
  50. * track of the number of properties.
  51. *
  52. * @mdata ITQualityControl* | CNetworkProperties | m_pITQualityControl | Pointer
  53. * to the <i ITQualityControl> interface.
  54. *
  55. * @mdata CNetworkProperty* | CNetworkProperties | m_Controls[NUM_NETWORK_CONTROLS] | Array
  56. * of capture properties.
  57. ***************************************************************************/
  58. class CNetworkProperties
  59. {
  60. public:
  61. CNetworkProperties();
  62. ~CNetworkProperties();
  63. HPROPSHEETPAGE OnCreate();
  64. HRESULT OnConnect(ITStream *pVideoInStream, ITStream *pVideoOutStream, ITStream *pAudioInStream, ITStream *pAudioOutStream);
  65. HRESULT OnDisconnect();
  66. HRESULT OnActivate();
  67. HRESULT OnDeactivate();
  68. HRESULT OnApplyChanges();
  69. private:
  70. void SetDirty();
  71. BOOL m_bInit;
  72. HWND m_hDlg;
  73. int m_NumProperties;
  74. ITStreamQualityControl *m_pVideoInITQualityControl;
  75. ITStreamQualityControl *m_pVideoOutITQualityControl;
  76. ITStreamQualityControl *m_pAudioInITQualityControl;
  77. ITStreamQualityControl *m_pAudioOutITQualityControl;
  78. CNetworkProperty *m_Controls[NUM_NETWORK_CONTROLS];
  79. // Dialog proc
  80. static INT_PTR CALLBACK BaseDlgProc(HWND hDlg, UINT uMessage, WPARAM wParam, LPARAM lParam);
  81. };