168
|
1 #ifndef DS_Filter_H
|
|
2 #define DS_Filter_H
|
|
3
|
|
4 #include "interfaces.h"
|
|
5 #include "inputpin.h"
|
|
6 #include "outputpin.h"
|
|
7 #include <string>
|
713
|
8
|
168
|
9 /**
|
|
10 User will allocate and fill format structures, call Create(),
|
|
11 and then set up m_pAll.
|
|
12 **/
|
|
13 class DS_Filter
|
|
14 {
|
|
15 public:
|
|
16 DS_Filter();
|
|
17 virtual ~DS_Filter();
|
|
18 void Start();
|
|
19 void Stop();
|
|
20 int m_iHandle;
|
|
21 IBaseFilter* m_pFilter;
|
|
22 IPin* m_pInputPin;
|
|
23 IPin* m_pOutputPin;
|
|
24
|
|
25 CBaseFilter* m_pSrcFilter;
|
|
26 CBaseFilter2* m_pParentFilter;
|
|
27 IPin* m_pOurInput;
|
|
28 COutputPin* m_pOurOutput;
|
|
29
|
|
30 AM_MEDIA_TYPE *m_pOurType, *m_pDestType;
|
|
31 IMemAllocator* m_pAll;
|
|
32 IMemInputPin* m_pImp;
|
|
33 int m_iState;
|
713
|
34
|
|
35 void Create(char* dllname, const GUID* id, AM_MEDIA_TYPE* in_fmt, AM_MEDIA_TYPE* out_fmt);
|
|
36 void SetPointer(char* pointer);
|
|
37 private:
|
|
38 void clean();
|
|
39 };
|
168
|
40
|
302
|
41 #endif
|