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.
 
 
 
 
 
 

90 lines
2.6 KiB

#ifndef _IMANAGER_H_
#define _IMANAGER_H_
#include <ias.h>
class COutgoingCall;
class COutgoingCallManager;
class CIncomingCallManager;
class CConfObject;
class COprahNCUI : public INodeControllerEvents,
public INmManager, public CConnectionPointContainer
{
protected:
static COprahNCUI *m_pOprahNCUI;
COutgoingCallManager* m_pOutgoingCallManager;
CIncomingCallManager* m_pIncomingCallManager;
CConfObject* m_pConfObject;
BSTR m_bstrUserName;
ULONG m_cRef;
public:
COprahNCUI();
~COprahNCUI();
UINT GetOutgoingCallCount();
ULONG GetAuthenticatedName(PBYTE * ppb);
VOID OnOutgoingCallCreated(INmCall* pCall);
VOID OnOutgoingCallCanceled(COutgoingCall* pCall);
VOID OnIncomingCallAccepted();
VOID OnIncomingCallCreated(INmCall* pCall);
VOID CancelCalls();
static COprahNCUI *GetInstance() { return m_pOprahNCUI; }
CConfObject *GetConfObject() { return m_pConfObject; }
HRESULT AbortResolve(UINT uAsyncRequest);
//
// INodeControllerEvents methods:
//
STDMETHODIMP OnConferenceStarted( CONF_HANDLE hConference,
HRESULT hResult);
STDMETHODIMP OnConferenceEnded( CONF_HANDLE hConference);
STDMETHODIMP OnRosterChanged( CONF_HANDLE hConference,
PNC_ROSTER pRoster);
STDMETHODIMP OnIncomingInviteRequest( CONF_HANDLE hConference,
PCWSTR pcwszNodeName,
BOOL fSecure);
STDMETHODIMP OnIncomingJoinRequest( CONF_HANDLE hConference,
PCWSTR pcwszNodeName);
STDMETHODIMP OnQueryRemoteResult( PVOID pvCallerContext,
HRESULT hResult,
BOOL fMCU,
PWSTR* ppwszConferenceNames,
PWSTR* ppwszConfDescriptors);
STDMETHODIMP OnInviteResult( CONF_HANDLE hConference,
REQUEST_HANDLE hRequest,
UINT uNodeID,
HRESULT hResult);
//
// INmManager methods
//
STDMETHODIMP_(ULONG) AddRef(void);
STDMETHODIMP_(ULONG) Release(void);
STDMETHODIMP QueryInterface(REFIID riid, PVOID *ppvObj);
STDMETHODIMP Initialize(BSTR szName, DWORD_PTR pCredentials, DWORD port, DWORD flags);
STDMETHODIMP Call(INmCall **ppCall,
DWORD dwFlags,
NM_ADDR_TYPE addrType,
BSTR bstrAddr,
BSTR bstrConference,
BSTR bstrPassword);
STDMETHODIMP CreateConference(INmConference **ppConference,
BSTR bstrName,
BSTR bstrPassword,
BOOL fSecure);
};
// The global instance that is declared in conf.cpp:
extern INodeController* g_pNodeController;
HRESULT OnNotifyCallStateChanged(IUnknown *pCallNotify, PVOID pv, REFIID riid);
#endif // _IMANAGER_H_