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

📄 manager.h

📁 神龙卡 SDK_84xx_DShow_145_02.zip 这个是 windows 上二个是linux
💻 H
字号:
/***********************************************************************/
/* manager.h : Implementation of Memory Manager
*  REALmagic Quasar Hardware Library
*  Created by Kevin Vo
*  Copyright Sigma Designs Inc
*  Sigma Designs Proprietary and confidential
*  Created on 3/20/01
*  Description: 
/************************************************************************/

#ifndef __MANAGER_H
#define __MANAGER_H

#include "lists.h"
#include "mmdebug.h"

class MemManager
{
	public:
		MemManager(int freeBufferSize, int mediaSampleSize, unsigned long dwBufferSize);
		MemManager(unsigned char* buffer, unsigned long dwBufferSize);
		~MemManager();
		CBuffer *GetBuffer(void);
		void GetMediaSample (CBuffer*, CIMediaSample**);
		void ReleaseMediaSample(CIMediaSample*);
		void ReleaseBuffer(CBuffer*);
		// Transport Stream support methods.
		void SetTransportStream (void);
		CBuffer *GetTSBuffer (void);

	private:
		int m_iNumOfBuffer;
		int m_iNumOfTSBuffer;
		int m_iNumOfMediaSample;
		int m_iCurrentNumOfBuffer;
		int m_iCurrentNumOfMediaSample;

		unsigned char* m_pDemuxBuffer;
		unsigned long m_dwDemuxBufferSize;
		unsigned long m_dwTSBufferSize;

		CBufferList *m_pCBufferList;
		// Transport stream buffer list. Each buffer will be a MediaSample.
		CBufferList *m_pTSCBufferList;
		CIMediaSampleList *m_pCIMediaSampleList;

		CRITICAL_SECTION crBuffer;
		CRITICAL_SECTION crTSBuffer;
		CRITICAL_SECTION crMediaSample;
		HANDLE m_hBufferSemaphore;
		HANDLE m_hTSBufferSemaphore;
		HANDLE m_hMediaSampleSemaphore;
};

#endif

⌨️ 快捷键说明

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