6 #ifndef _INC_cVidCapDirect_H
7 #define _INC_cVidCapDirect_H
14 #if defined(USE_DX_SHOW)
15 #include "../Image/cSurface.h"
18 MIDL_INTERFACE(
"56a86895-0ad4-11ce-b03a-0020af0ba770") IBaseFilter;
19 MIDL_INTERFACE("56a868b4-0ad4-11ce-b03a-0020af0ba770") IVideoWindow;
20 MIDL_INTERFACE("93E5A4E0-2D50-11d2-ABFA-00A0C9C6E38D") ICaptureGraphBuilder2;
21 MIDL_INTERFACE("36b73882-c2c8-11cf-8b46-00805f6cef60") IFilterGraph2;
23 MIDL_INTERFACE("6B652FFF-11FE-4fce-92AD-0266B5D7C78F") ISampleGrabber;
40 friend class cDirectSampleGrabberCB;
41 typedef cDirectShowObj SUPER_t;
44 cIUnkPtr<IBaseFilter> m_pSource;
45 cIUnkPtr<ISampleGrabber> m_pGrabber;
47 cIUnkPtr<ICaptureGraphBuilder2> m_pCapture;
49 REFTIME m_dblSampleTime;
54 HRESULT FindPin(IBaseFilter* pFilter,
enum _PinDirection dirrequired,
int nPinNum, cIUnkPtr<IPin>& rpPin);
55 HRESULT FindPinIn(IBaseFilter* pFilter,
int nPinNum, cIUnkPtr<IPin>& rpPin);
56 HRESULT FindPinOut(IBaseFilter* pFilter,
int nPinNum, cIUnkPtr<IPin>& rpPin);
59 cVidCapDirect(IBaseFilter* pSource =
nullptr);
60 virtual ~cVidCapDirect();
62 REFTIME get_SampleTime()
const
65 return m_dblSampleTime;
68 void put_Source(IBaseFilter* pSource);
69 const cSurface& get_Surf()
const
76 HRESULT CreateVidCap(
bool bOneShot);
78 virtual HRESULT GrabSample(cSurfaceBase& SurfCopy,
bool bConvert =
false);
MIDL_INTERFACE("7ED943DD-52E8-40b5-A8D8-76685C406330") ID3DXBaseMesh
#define GRAYLIB_LINK
Definition: GrayLibBase.h:35
INT32 HRESULT
_WIN32 style error codes. INT32
Definition: SysTypes.h:465
#define UNITTEST_FRIEND(n)
Define this in the class body to be unit tested. Allow the unit test to access private/protected stuf...
Definition: cUnitTestDecl.h:17
cThreadLockStub cThreadLockCount
Definition: cThreadLock.h:514
template class __DECL_IMPORT cIUnkPtr< IUnknown >
Definition: cIUnkPtr.h:315