summaryrefslogtreecommitdiff
path: root/src/libw32dll/DirectShow/inputpin.h
diff options
context:
space:
mode:
authorMiguel Freitas <miguelfreitas@users.sourceforge.net>2002-01-06 18:56:19 +0000
committerMiguel Freitas <miguelfreitas@users.sourceforge.net>2002-01-06 18:56:19 +0000
commit8377788b342919ec0ff4c29f048b907abce994d4 (patch)
tree4e68ceae3962d2033d0124c232196f6b896cf25f /src/libw32dll/DirectShow/inputpin.h
parent3c6d03ef837577db63f9b7f246978a9ccb009aae (diff)
downloadxine-lib-8377788b342919ec0ff4c29f048b907abce994d4.tar.gz
xine-lib-8377788b342919ec0ff4c29f048b907abce994d4.tar.bz2
updating directshow support with avifile/mplayer changes
CVS patchset: 1357 CVS date: 2002/01/06 18:56:19
Diffstat (limited to 'src/libw32dll/DirectShow/inputpin.h')
-rw-r--r--src/libw32dll/DirectShow/inputpin.h228
1 files changed, 44 insertions, 184 deletions
diff --git a/src/libw32dll/DirectShow/inputpin.h b/src/libw32dll/DirectShow/inputpin.h
index ba1e2817e..1ad9a2d60 100644
--- a/src/libw32dll/DirectShow/inputpin.h
+++ b/src/libw32dll/DirectShow/inputpin.h
@@ -3,209 +3,69 @@
#include "interfaces.h"
-//class CBaseFilter2;
+typedef struct _CBaseFilter2 CBaseFilter2;
+struct _CBaseFilter2
+{
+ IBaseFilter_vt* vt;
+ DECLARE_IUNKNOWN();
+ IPin* pin;
+ GUID interfaces[5];
+
+ IPin* ( *GetPin )(CBaseFilter2* This);
+};
-typedef struct _CBaseFilter
+CBaseFilter2* CBaseFilter2Create();
+
+
+typedef struct _CBaseFilter CBaseFilter;
+struct _CBaseFilter
{
- struct _IBaseFilter_vt *vt;
-
+ IBaseFilter_vt* vt;
+ DECLARE_IUNKNOWN(); // has to match CBaseFilter2 - INHERITANCE!!
IPin* pin;
IPin* unused_pin;
GUID interfaces[2];
- DECLARE_IUNKNOWN(CBaseFilter)
-} CBaseFilter;
-typedef struct _CInputPin
+ IPin* ( *GetPin )(CBaseFilter* This);
+ IPin* ( *GetUnusedPin )(CBaseFilter* This);
+};
+
+CBaseFilter* CBaseFilterCreate(const AM_MEDIA_TYPE* vhdr, CBaseFilter2* parent);
+
+
+typedef struct _CInputPin CInputPin;
+struct _CInputPin
{
- IPin_vt *vt;
-
- AM_MEDIA_TYPE type;
+ IPin_vt* vt;
+ DECLARE_IUNKNOWN();
CBaseFilter* parent;
+ AM_MEDIA_TYPE type;
GUID interfaces[1];
- DECLARE_IUNKNOWN(CInputPin)
-
-} CInputPin;
+};
-typedef struct _CBaseFilter2
-{
- struct _IBaseFilter_vt *vt;
-
- IPin* pin;
- GUID interfaces[5];
- DECLARE_IUNKNOWN(CBaseFilter2)
-
-}CBaseFilter2;
+CInputPin* CInputPinCreate(CBaseFilter* parent, const AM_MEDIA_TYPE* vhdr);
-typedef struct _CRemotePin
+typedef struct CRemotePin
{
- IPin_vt *vt;
+ IPin_vt* vt;
+ DECLARE_IUNKNOWN();
CBaseFilter* parent;
- IPin* remote_pin;
GUID interfaces[1];
- DECLARE_IUNKNOWN(CRemotePin)
-}CRemotePin;
+ IPin* remote_pin;
+} CRemotePin;
+
+CRemotePin* CRemotePinCreate(CBaseFilter* pt, IPin* rpin);
+
-typedef struct _CRemotePin2
+typedef struct CRemotePin2
{
- IPin_vt *vt;
+ IPin_vt* vt;
+ DECLARE_IUNKNOWN();
CBaseFilter2* parent;
GUID interfaces[1];
- DECLARE_IUNKNOWN(CRemotePin2)
-}CRemotePin2;
-
-
-long STDCALL CInputPin_Connect (
- IPin * This,
- /* [in] */ IPin *pReceivePin,
- /* [in] */ AM_MEDIA_TYPE *pmt);
-
-long STDCALL CInputPin_ReceiveConnection(IPin * This,
- /* [in] */ IPin *pConnector,
- /* [in] */ const AM_MEDIA_TYPE *pmt);
-
-long STDCALL CInputPin_Disconnect(IPin * This);
-long STDCALL CInputPin_ConnectedTo(IPin * This, /* [out] */ IPin **pPin);
-
-long STDCALL CInputPin_ConnectionMediaType(IPin * This,
- /* [out] */ AM_MEDIA_TYPE *pmt);
-
-long STDCALL CInputPin_QueryPinInfo(IPin * This, /* [out] */ PIN_INFO *pInfo);
-long STDCALL CInputPin_QueryDirection(IPin * This,
- /* [out] */ PIN_DIRECTION *pPinDir);
-long STDCALL CInputPin_QueryId(IPin * This, /* [out] */ unsigned short* *Id);
-
-long STDCALL CInputPin_QueryAccept(IPin * This,
- /* [in] */ const AM_MEDIA_TYPE *pmt);
-
-
-long STDCALL CInputPin_EnumMediaTypes (
- IPin * This,
- /* [out] */ IEnumMediaTypes **ppEnum);
-
-long STDCALL CInputPin_QueryInternalConnections(IPin * This,
- /* [out] */ IPin **apPin,
- /* [out][in] */ unsigned long *nPin);
-
-long STDCALL CInputPin_EndOfStream (IPin * This);
-long STDCALL CInputPin_BeginFlush(IPin * This);
-
-long STDCALL CInputPin_EndFlush(IPin * This);
-
-long STDCALL CInputPin_NewSegment(IPin * This,
- /* [in] */ REFERENCE_TIME tStart,
- /* [in] */ REFERENCE_TIME tStop,
- /* [in] */ double dRate);
-
-CInputPin * CInputPin_Create(CBaseFilter* p, const AM_MEDIA_TYPE *vh);
-void CInputPin_Destroy(CInputPin * this);
-
-long STDCALL CBaseFilter_GetClassID(IBaseFilter * This,
- /* [out] */ CLSID *pClassID);
-long STDCALL CBaseFilter_Stop(IBaseFilter * This);
-
-long STDCALL CBaseFilter_Pause(IBaseFilter * This);
-
-long STDCALL CBaseFilter_Run(IBaseFilter * This,
- REFERENCE_TIME tStart);
-
-long STDCALL CBaseFilter_GetState(IBaseFilter * This,
- /* [in] */ unsigned long dwMilliSecsTimeout,
- // /* [out] */ FILTER_STATE *State)
- void* State);
-
-long STDCALL CBaseFilter_SetSyncSource(IBaseFilter * This,
- /* [in] */ IReferenceClock *pClock);
-
-long STDCALL CBaseFilter_GetSyncSource (
- IBaseFilter * This,
- /* [out] */ IReferenceClock **pClock);
-
-
-long STDCALL CBaseFilter_EnumPins (
- IBaseFilter * This,
- /* [out] */ IEnumPins **ppEnum);
-
-long STDCALL CBaseFilter_FindPin (
- IBaseFilter * This,
- /* [string][in] */ const unsigned short* Id,
- /* [out] */ IPin **ppPin);
-
-
-long STDCALL CBaseFilter_QueryFilterInfo (
- IBaseFilter * This,
-// /* [out] */ FILTER_INFO *pInfo)
- void* pInfo);
-
-long STDCALL CBaseFilter_JoinFilterGraph (
- IBaseFilter * This,
- /* [in] */ IFilterGraph *pGraph,
- /* [string][in] */ const unsigned short* pName);
-
-
-long STDCALL CBaseFilter_QueryVendorInfo (
- IBaseFilter * This,
- /* [string][out] */ unsigned short* *pVendorInfo);
-
-CBaseFilter * CBaseFilter_Create(const AM_MEDIA_TYPE *type, CBaseFilter2* parent);
-
-
-void CBaseFilter_Destroy(CBaseFilter *this);
-IPin* CBaseFilter_GetPin(CBaseFilter *this);
-IPin* CBaseFilter_GetUnusedPin(CBaseFilter *this);
-long STDCALL CBaseFilter2_GetClassID (
- IBaseFilter * This,
- /* [out] */ CLSID *pClassID);
-
-long STDCALL CBaseFilter2_Stop (
- IBaseFilter * This);
-long STDCALL CBaseFilter2_Pause (IBaseFilter * This);
-
-long STDCALL CBaseFilter2_Run (IBaseFilter * This, REFERENCE_TIME tStart);
-
-long STDCALL CBaseFilter2_GetState (
- IBaseFilter * This,
- /* [in] */ unsigned long dwMilliSecsTimeout,
-// /* [out] */ FILTER_STATE *State)
- void* State);
-
-long STDCALL CBaseFilter2_SetSyncSource (
- IBaseFilter * This,
- /* [in] */ IReferenceClock *pClock);
-long STDCALL CBaseFilter2_GetSyncSource (
- IBaseFilter * This,
- /* [out] */ IReferenceClock **pClock);
-
-long STDCALL CBaseFilter2_EnumPins (
- IBaseFilter * This,
- /* [out] */ IEnumPins **ppEnum);
-long STDCALL CBaseFilter2_FindPin (
- IBaseFilter * This,
- /* [string][in] */ const unsigned short* Id,
- /* [out] */ IPin **ppPin);
-
-long STDCALL CBaseFilter2_QueryFilterInfo (
- IBaseFilter * This,
-// /* [out] */ FILTER_INFO *pInfo)
- void* pInfo);
-
-long STDCALL CBaseFilter2_JoinFilterGraph(IBaseFilter * This,
- /* [in] */ IFilterGraph *pGraph,
- /* [string][in] */
- const unsigned short* pName);
-
-long STDCALL CBaseFilter2_QueryVendorInfo(IBaseFilter * This,
- /* [string][out] */
- unsigned short* *pVendorInfo);
-CBaseFilter2 * CBaseFilter2_Create();
-void CBaseFilter2_Destroy(CBaseFilter2 *this);
-
-IPin* CBaseFilter2_GetPin(CBaseFilter2 *this);
-
-CRemotePin * CRemotePin_Create(CBaseFilter* pt, IPin* rpin);
-void CRemotePin_Destroy(CRemotePin * this);
-CRemotePin2 * CRemotePin2_Create(CBaseFilter2* p);
-void CRemotePin2_Destroy(CRemotePin2 * this);
+} CRemotePin2;
+CRemotePin2* CRemotePin2Create(CBaseFilter2* parent);
#endif /* DS_INPUTPIN_H */