Source code of Windows XP (NT5)
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.

49 lines
1.2 KiB

  1. // File: srvccall.h
  2. #ifndef _SRVCCALL_H_
  3. #define _SRVCCALL_H_
  4. class CSrvcCall : public INmCallNotify2
  5. {
  6. private:
  7. INmCall * m_pCall;
  8. BOOL m_fIncoming;
  9. LPTSTR m_pszName;
  10. LPTSTR m_pszAddr;
  11. NM_ADDR_TYPE m_addrType;
  12. NM_CALL_STATE m_State;
  13. BOOL m_fSelectedConference;
  14. POSITION m_pos; // position in g_pCallList
  15. DWORD m_dwTick; // tick count at call start
  16. ULONG m_cRef;
  17. DWORD m_dwCookie;
  18. public:
  19. CSrvcCall(INmCall * pCall);
  20. ~CSrvcCall();
  21. // IUnknown methods
  22. STDMETHODIMP_(ULONG) AddRef(void);
  23. STDMETHODIMP_(ULONG) Release(void);
  24. STDMETHODIMP QueryInterface(REFIID riid, PVOID *ppv);
  25. // INmCallNotify methods
  26. STDMETHODIMP NmUI(CONFN uNotify);
  27. STDMETHODIMP StateChanged(NM_CALL_STATE uState);
  28. STDMETHODIMP Failed(ULONG uError);
  29. STDMETHODIMP Accepted(INmConference *pConference);
  30. // INmCallNotify2 methods
  31. STDMETHODIMP CallError(UINT cns);
  32. STDMETHODIMP VersionConflict(HRESULT Status, BOOL *pfContinue);
  33. STDMETHODIMP RemoteConference(BOOL fMCU, BSTR *pwszConfNames, BSTR *pbstrConfToJoin);
  34. STDMETHODIMP RemotePassword(BSTR bstrConference, BSTR *pbstrPassword, BYTE *pb, DWORD cb, BOOL fIsService);
  35. // Internal methods
  36. VOID Update(void);
  37. VOID RemoveCall(void);
  38. };
  39. #endif