comparison loader/dshow/DS_Filter.h @ 3056:213b35f84cf3

C++ -> C (import from avifile cvs)
author arpi
date Wed, 21 Nov 2001 19:12:39 +0000
parents da26060c81ef
children e3bbf44dbab2
comparison
equal deleted inserted replaced
3055:38df49b91824 3056:213b35f84cf3
1 #ifndef DS_FILTER_H 1 #ifndef DS_FILTER_H
2 #define DS_FILTER_H 2 #define DS_FILTER_H
3 3
4 #include "interfaces.h"
5 #include "inputpin.h" 4 #include "inputpin.h"
6 #include "outputpin.h" 5 #include "outputpin.h"
6
7 #if defined(__cplusplus)
8 extern "C" {
9 #endif
7 10
8 /** 11 /**
9 User will allocate and fill format structures, call Create(), 12 User will allocate and fill format structures, call Create(),
10 and then set up m_pAll. 13 and then set up m_pAll.
11 **/ 14 **/
12 15
13 struct DS_Filter 16 typedef struct _DS_Filter DS_Filter;
17 struct _DS_Filter
14 { 18 {
15 DS_Filter();
16 virtual ~DS_Filter();
17 void Start();
18 void Stop();
19
20 int m_iHandle; 19 int m_iHandle;
21 IBaseFilter* m_pFilter; 20 IBaseFilter* m_pFilter;
22 IPin* m_pInputPin; 21 IPin* m_pInputPin;
23 IPin* m_pOutputPin; 22 IPin* m_pOutputPin;
24 23
25 CBaseFilter* m_pSrcFilter; 24 CBaseFilter* m_pSrcFilter;
26 CBaseFilter2* m_pParentFilter; 25 CBaseFilter2* m_pParentFilter;
27 IPin* m_pOurInput; 26 IPin* m_pOurInput;
28 COutputPin* m_pOurOutput; 27 COutputPin* m_pOurOutput;
29 28
30 AM_MEDIA_TYPE *m_pOurType, *m_pDestType; 29 AM_MEDIA_TYPE *m_pOurType, *m_pDestType;
31 IMemAllocator* m_pAll; 30 IMemAllocator* m_pAll;
32 IMemInputPin* m_pImp; 31 IMemInputPin* m_pImp;
33 int m_iState; 32 int m_iState;
34 33
35 void Create(const char* dllname, const GUID* id, AM_MEDIA_TYPE* in_fmt, AM_MEDIA_TYPE* out_fmt); 34 void ( *Start )(DS_Filter*);
36 void SetPointer(char* pointer); 35 void ( *Stop )(DS_Filter*);
37
38 void destroy();
39 }; 36 };
40 37
38 DS_Filter* DS_FilterCreate(const char* dllname, const GUID* id,
39 AM_MEDIA_TYPE* in_fmt, AM_MEDIA_TYPE* out_fmt);
40 void DS_Filter_Destroy(DS_Filter* This);
41
42 #if defined(__cplusplus)
43 }
44 #endif
45
41 #endif /* DS_FILTER_H */ 46 #endif /* DS_FILTER_H */