⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 croleadmin.h

📁 陆其明的实务精选中附带光盘中的视频聊天源代码
💻 H
字号:
//
// CRoleAdmin.h
//

#ifndef __H_CRoleAdmin__
#define __H_CRoleAdmin__

#include "CPreviewAdmin.h"
#include "CUDPManager.h"
#include "CMsgReceiver.h"
#include "CMsgStation.h"

class CDXGraph;
class CFilterNetReceiver;
class CFilterNetSender;
class CRoleAdmin : public CPreviewAdmin, public CMsgReceiver
			     , public CMsgStation
{
protected:
	long			mDeviceConfig;
	CUDPManager		mUdpManager;
	
	WORD			mLocalUDPPort;
	WORD			mTargetUDPPort;
	DWORD			mTargetIP;

	CDXGraph *		mRemoteVideoGraph; // Receiving
	CDXGraph *		mRemoteAudioGraph; 
	CDXGraph *		mLocalVideoGraph;  // Sending
	CDXGraph *		mLocalAudioGraph;

	CFilterNetReceiver *	mVideoReceiver;
	CFilterNetReceiver *	mAudioReceiver;
	CFilterNetSender *		mVideoSender;
	CFilterNetSender *		mAudioSender;

public:
	CRoleAdmin();
	virtual ~CRoleAdmin();

	// Has audio? Has Video? (local and remote)
	void SetDeviceConfig(long inConfig);
	void SetTargetIP(DWORD inTarget);

	virtual BOOL Init(void);
	virtual void Uninit(void);

	virtual BOOL CallServer(void);
	virtual void Disconnect(BOOL inNotifyPeer = TRUE);

	virtual BOOL StopGraph(void);

protected:
	virtual bool ReceiveMessage(MessageT inMessage, void * ioParam, 
		void * ioParam2);

	BOOL SendSimpleCommand(long inCommand);
	BOOL SendLocalDeviceConfigToPeer(void);
	void CompleteVideoReceivingGraph(void);
	void CompleteAudioReceivingGraph(void);

	virtual BOOL CreateGraph(void);
	virtual void DeleteGraph(void);

	virtual BOOL CreateInputFilters(void);
	virtual void ReleaseInputFilters(void);

	virtual BOOL CreateOutputFilters(void);
	virtual void ReleaseOutputFilters(void);

	virtual BOOL ConnectFilters(void);
	virtual BOOL AfterBuildGraph(void);

	virtual SOCKET GetVideoStreamSocket(void);
	virtual SOCKET GetAudioStreamSocket(void);
};

#endif // __H_CRoleAdmin__

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -