📄 cframelist.h
字号:
//
// CFrameList.h
//
#ifndef __H_CFrameList__
#define __H_CFrameList__
// Only suitable for fix-sized frames.
// Only when all buffers are filled, outer users can get buffered frame out.
// Add the latest frame to the bottom, and the top frame will be overrided.
class CFrameList
{
private:
long mFrameSize; // In bytes
long mMaxFrameCount; // Frames stored in the list
long mLastFrameOffset; // Start position of the last frame
long mFrameCounter;
CCritSec mSyncBuffer;
BYTE * mFrameBuffer;
BOOL mReachEnd; // No more samples will be received
long mIndexWhenEndReached;
private:
__inline void MoveOneFrameUp(void);
public:
CFrameList(long inFrameSize, long inMaxCount);
~CFrameList();
void AddFrame(BYTE * inFrame);
void GetFrame(PBYTE * outFrame);
void ReleaseFrame(void);
BOOL IsFrameBufferFull(void);
void SetReachEnd(BOOL inIsEnd);
void Flush(void);
};
#endif // __H_CFrameList__
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -