source: eviacam/trunk/fuentes/creavision/SampleGrabber.h @ 567

Last change on this file since 567 was 567, checked in by mabarracus, 4 years ago

updated sources to version 2.0.3

File size: 2.2 KB
Line 
1#ifndef SAMPLE_GRABBER_H
2#define SAMPLE_GRABBER_H
3
4#include "rpc.h"
5#include "rpcndr.h"
6
7// {0579154A-2B53-4994-B0D0-E773148EFF85}
8DEFINE_GUID(IID_ISampleGrabberCB,
90x0579154A, 0x2B53, 0x4994, 0xB0, 0xD0, 0xE7, 0x73, 0x14, 0x8E, 0xFF, 0x85);
10
11MIDL_INTERFACE("0579154A-2B53-4994-B0D0-E773148EFF85")
12ISampleGrabberCB : public IUnknown
13{
14public:
15    virtual HRESULT STDMETHODCALLTYPE SampleCB( 
16        double SampleTime,
17        IMediaSample *pSample) = 0;
18       
19    virtual HRESULT STDMETHODCALLTYPE BufferCB( 
20        double SampleTime,
21        BYTE *pBuffer,
22        long BufferLen) = 0;
23       
24};
25
26// {6B652FFF-11FE-4fce-92AD-0266B5D7C78F}
27DEFINE_GUID(IID_ISampleGrabber,
280x6B652FFF, 0x11FE, 0x4fce, 0x92, 0xAD, 0x02, 0x66, 0xB5, 0xD7, 0xC7, 0x8F);
29
30MIDL_INTERFACE("6B652FFF-11FE-4fce-92AD-0266B5D7C78F")
31ISampleGrabber : public IUnknown
32{
33public:
34    virtual HRESULT STDMETHODCALLTYPE SetOneShot( 
35        BOOL OneShot) = 0;
36       
37    virtual HRESULT STDMETHODCALLTYPE SetMediaType( 
38        const AM_MEDIA_TYPE *pType) = 0;
39       
40    virtual HRESULT STDMETHODCALLTYPE GetConnectedMediaType( 
41        AM_MEDIA_TYPE *pType) = 0;
42       
43    virtual HRESULT STDMETHODCALLTYPE SetBufferSamples( 
44        BOOL BufferThem) = 0;
45       
46    virtual HRESULT STDMETHODCALLTYPE GetCurrentBuffer( 
47        /* [out][in] */ long *pBufferSize,
48        /* [out] */ long *pBuffer) = 0;
49       
50    virtual HRESULT STDMETHODCALLTYPE GetCurrentSample( 
51        /* [retval][out] */ IMediaSample **ppSample) = 0;
52       
53    virtual HRESULT STDMETHODCALLTYPE SetCallback( 
54        ISampleGrabberCB *pCallback,
55        long WhichMethodToCallback) = 0;
56       
57};
58
59///////////////////////////////////////////////////////////////////////////////////
60
61static
62const
63CLSID CLSID_SampleGrabber = { 0xC1F400A0, 0x3F08, 0x11d3, { 0x9F, 0x0B, 0x00, 0x60, 0x08, 0x03, 0x9E, 0x37 } };
64
65///////////////////////////////////////////////////////////////////////////////////
66
67static
68const
69CLSID CLSID_NullRenderer = { 0xC1F400A4, 0x3F08, 0x11d3, { 0x9F, 0x0B, 0x00, 0x60, 0x08, 0x03, 0x9E, 0x37 } };
70
71///////////////////////////////////////////////////////////////////////////////////
72
73
74#endif
Note: See TracBrowser for help on using the repository browser.