Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

43 lines
1.5 KiB

#include <atlbase.h>
//extern CComModule _Module;
struct FILTERINFO
{
int _colorMode;
ULONG m_nBytesPerPixel;
DWORD dwEvents;
IDirectDrawSurface *m_pDDrawSurface;
};
class CImageDecodeEventSink : public IImageDecodeEventSink
{
public:
void Init( FILTERINFO * pFilter );
// CImageDecodeEventSink( FILTERINFO * pFilter );
// ~CImageDecodeEventSink();
ULONG STDMETHODCALLTYPE AddRef();
ULONG STDMETHODCALLTYPE Release();
STDMETHOD(QueryInterface)(REFIID iid, void** ppInterface);
STDMETHOD(GetSurface)(LONG nWidth, LONG nHeight, REFGUID bfid,
ULONG nPasses, DWORD dwHints, IUnknown** ppSurface);
STDMETHOD(GetDDrawSurface)(LONG nWidth, LONG nHeight, REFGUID bfid,
ULONG nPasses, DWORD dwHints, IUnknown** ppSurface);
STDMETHOD(OnBeginDecode)(DWORD* pdwEvents, ULONG* pnFormats,
GUID** ppFormats);
STDMETHOD(OnBitsComplete)();
STDMETHOD(OnDecodeComplete)(HRESULT hrStatus);
STDMETHOD(OnPalette)();
STDMETHOD(OnProgress)(RECT* pBounds, BOOL bFinal);
void SetDDraw( IDirectDraw4 *pDDraw ) {m_pDirectDrawEx = pDDraw;}
ULONG m_nRefCount;
FILTERINFO *m_pFilter;
IDirectDrawSurface *m_pDDrawSurface;
RECT m_rcProg;
DWORD m_dwLastTick;
IDirectDraw4 *m_pDirectDrawEx;
// friend CDirectDrawEx;
};