From 121e8ebbbe9ad5e408f5ee39711b419f67713d72 Mon Sep 17 00:00:00 2001 From: Lei Zhang Date: Wed, 13 Feb 2008 13:10:23 -0800 Subject: [PATCH] include: Add ISampleGrabber interface. --- include/qedit.idl | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/include/qedit.idl b/include/qedit.idl index 886e46f1788..c4219afe1b6 100644 --- a/include/qedit.idl +++ b/include/qedit.idl @@ -40,3 +40,42 @@ interface ISampleGrabberCB : IUnknown long BufferLen ); } + +[ + object, + uuid(6B652FFF-11FE-4fce-92AD-0266B5D7C78F), + local, + pointer_default(unique) +] +interface ISampleGrabber: IUnknown +{ + HRESULT SetOneShot( + BOOL OneShot + ); + + HRESULT SetMediaType( + const AM_MEDIA_TYPE * pType + ); + + HRESULT GetConnectedMediaType( + AM_MEDIA_TYPE * pType + ); + + HRESULT SetBufferSamples( + BOOL BufferThem + ); + + HRESULT GetCurrentBuffer( + [in,out] long * pBufferSize, + [out] long * pBuffer + ); + + HRESULT GetCurrentSample( + [out] IMediaSample ** ppSample + ); + + HRESULT SetCallback( + ISampleGrabberCB * pCallback, + long WhichMethodToCallback + ); +};