Mercurial > mplayer.hg
diff 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 |
line wrap: on
line diff
--- a/loader/dshow/DS_Filter.h Wed Nov 21 18:40:59 2001 +0000 +++ b/loader/dshow/DS_Filter.h Wed Nov 21 19:12:39 2001 +0000 @@ -1,41 +1,46 @@ #ifndef DS_FILTER_H #define DS_FILTER_H -#include "interfaces.h" #include "inputpin.h" #include "outputpin.h" +#if defined(__cplusplus) +extern "C" { +#endif + /** User will allocate and fill format structures, call Create(), and then set up m_pAll. **/ -struct DS_Filter +typedef struct _DS_Filter DS_Filter; +struct _DS_Filter { - DS_Filter(); - virtual ~DS_Filter(); - void Start(); - void Stop(); - int m_iHandle; IBaseFilter* m_pFilter; IPin* m_pInputPin; IPin* m_pOutputPin; - + CBaseFilter* m_pSrcFilter; CBaseFilter2* m_pParentFilter; IPin* m_pOurInput; COutputPin* m_pOurOutput; - + AM_MEDIA_TYPE *m_pOurType, *m_pDestType; IMemAllocator* m_pAll; IMemInputPin* m_pImp; int m_iState; - void Create(const char* dllname, const GUID* id, AM_MEDIA_TYPE* in_fmt, AM_MEDIA_TYPE* out_fmt); - void SetPointer(char* pointer); - - void destroy(); + void ( *Start )(DS_Filter*); + void ( *Stop )(DS_Filter*); }; +DS_Filter* DS_FilterCreate(const char* dllname, const GUID* id, + AM_MEDIA_TYPE* in_fmt, AM_MEDIA_TYPE* out_fmt); +void DS_Filter_Destroy(DS_Filter* This); + +#if defined(__cplusplus) +} +#endif + #endif /* DS_FILTER_H */