summaryrefslogtreecommitdiffstats
path: root/sys/dshowvideosink/dshowvideofakesrc.h
diff options
context:
space:
mode:
Diffstat (limited to 'sys/dshowvideosink/dshowvideofakesrc.h')
-rw-r--r--sys/dshowvideosink/dshowvideofakesrc.h16
1 files changed, 13 insertions, 3 deletions
diff --git a/sys/dshowvideosink/dshowvideofakesrc.h b/sys/dshowvideosink/dshowvideofakesrc.h
index a6b03243..ac2248da 100644
--- a/sys/dshowvideosink/dshowvideofakesrc.h
+++ b/sys/dshowvideosink/dshowvideofakesrc.h
@@ -22,7 +22,7 @@
#include <streams.h>
#include <gst/gst.h>
-class VideoFakeSrcPin : public CBaseOutputPin
+class VideoFakeSrcPin : public CDynamicOutputPin
{
protected:
/* members */
@@ -41,11 +41,14 @@ public:
virtual HRESULT CheckMediaType(const CMediaType *pmt);
HRESULT GetMediaType(int iPosition, CMediaType *pMediaType);
virtual HRESULT DecideBufferSize (IMemAllocator *pAlloc, ALLOCATOR_PROPERTIES *ppropInputRequest);
+ virtual HRESULT BreakConnect();
+ virtual HRESULT CompleteConnect(IPin *pReceivePin);
+ virtual HRESULT Inactive();
STDMETHOD (SetMediaType) (AM_MEDIA_TYPE *pmt);
STDMETHOD (Flush) ();
STDMETHODIMP Notify(IBaseFilter * pSender, Quality q);
-
-
+ STDMETHODIMP Disconnect();
+ STDMETHODIMP Block(DWORD dwBlockFlags, HANDLE hEvent);
};
class VideoFakeSrc : public CBaseFilter
@@ -55,6 +58,8 @@ private:
CCritSec m_critsec;
VideoFakeSrcPin *m_pOutputPin;
+ CAMEvent m_evFilterStoppingEvent;
+
public:
/* methods */
VideoFakeSrc (void);
@@ -65,6 +70,11 @@ public:
/* Overrides */
int GetPinCount();
CBasePin *GetPin(int n);
+
+ STDMETHODIMP Run(REFERENCE_TIME tStart);
+ STDMETHODIMP Stop(void);
+ STDMETHODIMP Pause(void);
+ STDMETHODIMP JoinFilterGraph(IFilterGraph* pGraph, LPCWSTR pName);
};
#endif /* __DSHOWVIDEOFAKESRC_H__ */