cdataadmin.h

来自「《DirectShow开发指南》配套代码代码,需要DirectX SDK 7以上」· C头文件 代码 · 共 50 行

H
50
字号
// 
// CDataAdmin.h
//

#if !defined(__CDataAdmin_h__)
#define __CDataAdmin_h__

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

#include <afxtempl.h>
#include <afxmt.h>
#include "MyDef.h"

class CDataAdmin
{
// Attributes
public:
	HANDLE    m_hBufEnough;   // Buffer enough before run the filter graph

protected:
	CMutex *  m_pMutex;
	bool      m_bFlushing;

	CTypedPtrList <CPtrList, PMPEG1_PACK> DataList;
	CTypedPtrList <CPtrList, PMPEG1_PACK> PoolList;

// Operations
public:
	CDataAdmin();
	virtual ~CDataAdmin();

	void SetFlushing(bool inFlush = true);
	bool IsFlushing(void);
	// List administrate
	int ResetList(void);
	int GetListSize(void);
	PMPEG1_PACK GetDataBuffer(void);
	int ReleaseDataBuffer(PMPEG1_PACK pData);
	PMPEG1_PACK GetWriteBuffer(void);
	int ReleaseWriteBuffer(PMPEG1_PACK pData);

	PMPEG1_PACK PointToDataHead(void);
	int RollBackDataHead(PMPEG1_PACK pData);

	DWORD WaitForNext(DWORD  inTimeOut);
};

#endif // !defined(__CDataAdmin_h__)

⌨️ 快捷键说明

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