www.pudn.com > SourceFilter.rar > fSnake_op.h
//------------------------------------------------------------------------------
// File: fSnake_op.h
//
// Desc: define CSnakeStream class
//
// Author : Ashok Jaiswal
//
// Data/Time : September 2004
//------------------------------------------------------------------------------
#if !defined(FSNAKE_OP_H__A9DB83DB_A9FD_11D0_BFD1_444553540000__INCLUDED_)
#define FSNAKE_OP_H__A9DB83DB_A9FD_11D0_BFD1_444553540000__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
class CSnakeStream : public CSourceStream
{
public:
CSnakeStream(HRESULT *phr, CSnakeFilter *pParent, LPCWSTR pPinName);
virtual ~CSnakeStream(void);
// Attributes
public:
// Operations
public:
LONGLONG m_llFrameCount;
BITMAPINFO m_bmpInfo;
void *m_pPaintBuffer;
HDC m_dcPaint;
int m_nLastX;
int m_nLastY;
int m_nScoreBoardHeight;
int m_nSnakeBlockHeight;
int m_nSnakeBlockWidth;
int m_nNumberSnakeBlocks;
int m_nSpaceBetweenBlock;
// Overrides
protected:
///////////////////////////
// Media Type support
// media types filter have
virtual HRESULT GetMediaType(CMediaType *pMediaType);
///////////////////////////
// Buffer Negotiation support
// buffer size
virtual HRESULT DecideBufferSize(IMemAllocator *pMemAlloc, ALLOCATOR_PROPERTIES *pProperties);
///////////////////////////
// Data Source support
// media sample
virtual HRESULT FillBuffer(IMediaSample *pSample);
// signal
virtual HRESULT OnThreadCreate(void);
virtual HRESULT OnThreadDestroy(void);
virtual HRESULT OnThreadStartPlay(void);
// Overrides
protected:
// Implementations
protected:
// member variables
private:
};
#endif // !defined(FSNAKE_OP_H__A9DB83DB_A9FD_11D0_BFD1_444553540000__INCLUDED_)