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

📄 memstream.h

📁 利用rtp库实现实时语音传送
💻 H
字号:
// MemStream.h: interface for the CMemStream class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_MEMSTREAM_H__0A70E31F_E979_415A_B986_71C27FCF1BAD__INCLUDED_)
#define AFX_MEMSTREAM_H__0A70E31F_E979_415A_B986_71C27FCF1BAD__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

class CMemStream : public CAsyncStream  
{
public:
	void SetMediaLength(LONGLONG lMediaLength);
	void Unlock();
	void Lock();
	DWORD Alignment();
	LONGLONG Size(LONGLONG *pSizeAvailable);
	HRESULT Read(PBYTE pbBuffer,DWORD dwBytesToRead,BOOL bAlign,LPDWORD pdwBytesRead);
	HRESULT SetPointer(LONGLONG llPos);
	CMemStream();
	virtual ~CMemStream();
	void SetRTPSession(RTPSession *rtpSession);
	HRESULT Block();
	HRESULT ReleaseBlock();
	void FillBuffer(char* pbData,int nLength);
public:

protected:
    CCritSec		m_csLock;
    LONGLONG		m_llLength;
    LONGLONG		m_llPosition;
	RTPSession*		m_rtpSession;
	HANDLE			m_pMutex;
	char*			m_pbBuffer;
	BOOL			m_bWaiting;
	CTRLMSG			m_msg;
	DWORD			m_dwBytesToRead;
	DWORD			m_dwBytesHaveRead;
};

#endif // !defined(AFX_MEMSTREAM_H__0A70E31F_E979_415A_B986_71C27FCF1BAD__INCLUDED_)

⌨️ 快捷键说明

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