// MgrNVE.h : main header file for the MGRNVE DLL // #if !defined(AFX_MGRNVE_H__F98BE7B5_5D14_4AA3_9A9D_DD2630AEE94B__INCLUDED_) #define AFX_MGRNVE_H__F98BE7B5_5D14_4AA3_9A9D_DD2630AEE94B__INCLUDED_ #if _MSC_VER > 1000 #pragma once #endif // _MSC_VER > 1000 #ifndef __AFXWIN_H__ #error include 'stdafx.h' before including this file for PCH #endif #include "resource.h" // main symbols #include "ParamDlg.h" ///////////////////////////////////////////////////////////////////////////// // CMgrNVEApp // See MgrNVE.cpp for the implementation of this class // class CConnectionManager; class CMgrNVEApp : public CWinApp { public: CMgrNVEApp(); BOOL m_bIgnoreEventComm; // Overrides // ClassWizard generated virtual function overrides //{{AFX_VIRTUAL(CMgrNVEApp) //}}AFX_VIRTUAL //{{AFX_MSG(CMgrNVEApp) // NOTE - the ClassWizard will add and remove member functions here. // DO NOT EDIT what you see in these blocks of generated code ! //}}AFX_MSG DECLARE_MESSAGE_MAP() }; struct UDA5GlobAPI{ BOOL (__stdcall *Cmn5CreateInstance)(IUnknown **pUnknown); }; class CMgrNVE : public IPrismIICardManager { public: CMgrNVE(); ~CMgrNVE(); public: virtual HRESULT STDMETHODCALLTYPE QueryInterface( REFIID riid,void __RPC_FAR *__RPC_FAR *ppvObject); virtual ULONG STDMETHODCALLTYPE AddRef( void); virtual ULONG STDMETHODCALLTYPE Release( void); virtual HRESULT STDMETHODCALLTYPE ProcessSetup(); virtual HRESULT STDMETHODCALLTYPE ProcessEndup(); virtual HRESULT STDMETHODCALLTYPE ProcessRun(); virtual HRESULT STDMETHODCALLTYPE ProcessStop(); virtual HRESULT STDMETHODCALLTYPE SaveSetting(); virtual HRESULT STDMETHODCALLTYPE RestoreSetting(); virtual HRESULT STDMETHODCALLTYPE ResetSetting(); virtual BOOL STDMETHODCALLTYPE ShowPropertyPage(HWND hWndSite,RECT rcPage,DWORD v1,DWORD v2,DWORD v3); virtual BOOL STDMETHODCALLTYPE HidePropertyPage(); virtual HRESULT STDMETHODCALLTYPE GetProcessState(UINT* pProcessState); virtual HRESULT STDMETHODCALLTYPE ProcessCommand(UINT uCmd,BOOL *bCheckState); virtual HRESULT STDMETHODCALLTYPE ProcessTimer(UINT nTimerID); virtual HRESULT STDMETHODCALLTYPE Load(IInstanceManager* pFrameApp,char *Dlls[],DVRAUTHINFO authInfo[],int authCount,ISettingStorage* pStorage,IMessageManager* pMsgMng); virtual BOOL STDMETHODCALLTYPE GetMediaTypes(LONG* mediaCount, MEDIATYPE_MULTICHANNEL** mediaTypes); virtual HRESULT STDMETHODCALLTYPE GetApiCount(UINT* pCount); virtual HRESULT STDMETHODCALLTYPE GetApiInfo(UINT apiIndex,DVRAPIINFO* pApiInfo); BOOL CreateMediaInfo(); BOOL UpdateMediaInfo(ULONG i, NVE_MEDIA_SETTINGS *pSettings, LPCSTR Addr); BOOL DestroyMediaInfo(); BOOL AddServer(ULONG uCh, LPCSTR Addr, ULONG uProtocol, LPCSTR ID, LPCSTR Pass); BOOL DeleteServer(CConnectionManager *pConnection); CConnectionManager* GetConnectionInfo(ULONG uIndex) { return m_pConnection[uIndex]; } CConnectionManager* GetCurConnection() { return m_pCurConnection; } IInstanceManager* GetFrameApp() { return m_pFrameApp; } ISettingStorage* GetStorage() { return m_pStorage; } IMessageManager* GetMsgManager() { return m_pMsgManager; } void UpdatePage(); BOOL GetLinCh(ULONG uServerIndex, ULONG* pLinCh); BOOL SetLinCh(ULONG uServerIndex, ULONG* pLinCh); BOOL GetUsedLinCh(ULONG* pLinCh); BOOL IsSetup() { return m_bSetup; } ULONG GetCurDlg() { return m_uCurDlg; } CParamDlg *GetCurDlgPtr() { return m_pCurDlg; } BOOL ShowVStatus(CMN5_VIDEO_STATUS_INFO *pInfo, CConnectionManager *pConnMgr); BOOL ShowDI(CMN5_SENSOR_STATUS_INFO *pInfo, CConnectionManager *pConnMgr); BOOL AddServerTreeView(LPCSTR Addr, CConnectionManager *pConnection); BOOL DeleteServerTreeView(CConnectionManager *pConnection); #if 0 void SelectApi(ULONG sel) { m_uApi = sel; } ULONG GetSelApi() { return m_uApi; } BOOL ConnectionProc(BOOL success, ULONG index); void SetConnection(BOOL bConnecting) { m_bConnecting = bConnecting; } #endif private: #if 0 static DWORD WINAPI ConnectionProcStub(LPVOID lpParameter); DWORD WINAPI ConnectionProc(); #endif private: volatile LONG m_refCount; IInstanceManager* m_pFrameApp; IMessageManager* m_pMsgManager; ISettingStorage* m_pStorage; CRITICAL_SECTION m_CS; MEDIATYPE_MULTICHANNEL m_codvidChTypes; MEDIATYPE_MULTICHANNEL m_codvidChTypes1; MEDIATYPE_MULTICHANNEL m_codaudChTypes; MEDIATYPE_MULTICHANNEL m_textChTypes; MEDIATYPE_MULTICHANNEL m_DIChTypes; MEDIATYPE_MULTICHANNEL m_vidChTypes; MEDIATYPE_MULTICHANNEL m_MDChTypes; CConnectionManager *m_pConnection[NVE_MAX_SERVER]; CConnectionManager *m_pCurConnection; CParamDlg* m_pCurDlg; char m_szURL[NVE_MAX_SERVER][32]; LONG m_uCurDlg; LONG m_linCh[NVE_MAX_SERVER][NVE_MAX_CHANNEL];// linear channel number.. BOOL m_bSetup; UDA5GlobAPI m_Uda5Api; HMODULE m_hModule; #if 0 BOOL m_bRun; char m_Address[NVE_MAX_STR_LENGTH]; ULONG m_uApi; HANDLE m_hKillConnection; HANDLE m_hThreadConnection; HANDLE m_hConnection; BOOL m_bSetup; BOOL m_bConnecting; BOOL m_bTreeView[NVE_MAX_SERVER]; #endif }; extern CMgrNVEApp theApp; ///////////////////////////////////////////////////////////////////////////// //{{AFX_INSERT_LOCATION}} // Microsoft Visual C++ will insert additional declarations immediately before the previous line. #endif // !defined(AFX_MGRNVE_H__F98BE7B5_5D14_4AA3_9A9D_DD2630AEE94B__INCLUDED_)