38 #ifndef vpDirectShowSampleGrabberI_hh
39 #define vpDirectShowSampleGrabberI_hh
41 #ifndef DOXYGEN_SHOULD_SKIP_THIS
43 #include <visp3/core/vpConfig.h>
44 #if ( defined(VISP_HAVE_DIRECTSHOW) )
50 #include <visp3/core/vpImage.h>
51 #include <visp3/core/vpRGBa.h>
57 class VISP_EXPORT vpDirectShowSampleGrabberI :
public ISampleGrabberCB
59 vpDirectShowSampleGrabberI();
60 virtual ~vpDirectShowSampleGrabberI();
63 STDMETHODIMP_(ULONG) AddRef() {
return 1; }
64 STDMETHODIMP_(ULONG) Release() {
return 2; }
66 STDMETHODIMP QueryInterface(REFIID riid,
void **ppvObject);
69 STDMETHODIMP SampleCB(
double Time, IMediaSample *pSample)
75 STDMETHODIMP BufferCB(
double Time, BYTE *pBuffer,
long BufferLen);
79 AM_MEDIA_TYPE connectedMediaType;
82 bool specialMediaType;
97 friend class vpDirectShowGrabberImpl;