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

  1. #include <atlbase.h>
  2. //extern CComModule _Module;
  3. struct FILTERINFO
  4. {
  5. int _colorMode;
  6. ULONG m_nBytesPerPixel;
  7. DWORD dwEvents;
  8. IDirectDrawSurface *m_pDDrawSurface;
  9. };
  10. class CImageDecodeEventSink : public IImageDecodeEventSink
  11. {
  12. public:
  13. void Init( FILTERINFO * pFilter );
  14. // CImageDecodeEventSink( FILTERINFO * pFilter );
  15. // ~CImageDecodeEventSink();
  16. ULONG STDMETHODCALLTYPE AddRef();
  17. ULONG STDMETHODCALLTYPE Release();
  18. STDMETHOD(QueryInterface)(REFIID iid, void** ppInterface);
  19. STDMETHOD(GetSurface)(LONG nWidth, LONG nHeight, REFGUID bfid,
  20. ULONG nPasses, DWORD dwHints, IUnknown** ppSurface);
  21. STDMETHOD(GetDDrawSurface)(LONG nWidth, LONG nHeight, REFGUID bfid,
  22. ULONG nPasses, DWORD dwHints, IUnknown** ppSurface);
  23. STDMETHOD(OnBeginDecode)(DWORD* pdwEvents, ULONG* pnFormats,
  24. GUID** ppFormats);
  25. STDMETHOD(OnBitsComplete)();
  26. STDMETHOD(OnDecodeComplete)(HRESULT hrStatus);
  27. STDMETHOD(OnPalette)();
  28. STDMETHOD(OnProgress)(RECT* pBounds, BOOL bFinal);
  29. void SetDDraw( IDirectDraw4 *pDDraw ) {m_pDirectDrawEx = pDDraw;}
  30. ULONG m_nRefCount;
  31. FILTERINFO *m_pFilter;
  32. IDirectDrawSurface *m_pDDrawSurface;
  33. RECT m_rcProg;
  34. DWORD m_dwLastTick;
  35. IDirectDraw4 *m_pDirectDrawEx;
  36. // friend CDirectDrawEx;
  37. };