Mercurial > mplayer.hg
annotate loader/dshow/inputpin.h @ 32797:18d7da3834d0
ffxandpcm works fine with the native avi demuxer.
author | cehoyos |
---|---|
date | Fri, 11 Feb 2011 12:39:46 +0000 |
parents | a8ea87c71d18 |
children |
rev | line source |
---|---|
26045 | 1 #ifndef MPLAYER_INPUTPIN_H |
2 #define MPLAYER_INPUTPIN_H | |
1545 | 3 |
168 | 4 #include "interfaces.h" |
3056 | 5 |
25794
2c8cdb9123b8
Fix a ton of illegal identifiers. Identifiers starting with __ or _ and a
diego
parents:
8292
diff
changeset
|
6 typedef struct CBaseFilter2 CBaseFilter2; |
2c8cdb9123b8
Fix a ton of illegal identifiers. Identifiers starting with __ or _ and a
diego
parents:
8292
diff
changeset
|
7 struct CBaseFilter2 |
3056 | 8 { |
9 IBaseFilter_vt* vt; | |
3130 | 10 DECLARE_IUNKNOWN(); |
3056 | 11 IPin* pin; |
12 GUID interfaces[5]; | |
168 | 13 |
3056 | 14 IPin* ( *GetPin )(CBaseFilter2* This); |
15 }; | |
16 | |
8292 | 17 CBaseFilter2* CBaseFilter2Create(void); |
3056 | 18 |
19 | |
25794
2c8cdb9123b8
Fix a ton of illegal identifiers. Identifiers starting with __ or _ and a
diego
parents:
8292
diff
changeset
|
20 typedef struct CBaseFilter CBaseFilter; |
2c8cdb9123b8
Fix a ton of illegal identifiers. Identifiers starting with __ or _ and a
diego
parents:
8292
diff
changeset
|
21 struct CBaseFilter |
168 | 22 { |
3056 | 23 IBaseFilter_vt* vt; |
3130 | 24 DECLARE_IUNKNOWN(); // has to match CBaseFilter2 - INHERITANCE!! |
168 | 25 IPin* pin; |
26 IPin* unused_pin; | |
3056 | 27 GUID interfaces[2]; |
1545 | 28 |
3056 | 29 IPin* ( *GetPin )(CBaseFilter* This); |
30 IPin* ( *GetUnusedPin )(CBaseFilter* This); | |
168 | 31 }; |
1545 | 32 |
3056 | 33 CBaseFilter* CBaseFilterCreate(const AM_MEDIA_TYPE* vhdr, CBaseFilter2* parent); |
34 | |
35 | |
7386 | 36 typedef struct |
168 | 37 { |
3056 | 38 IPin_vt* vt; |
3130 | 39 DECLARE_IUNKNOWN(); |
3467 | 40 CBaseFilter* parent; |
168 | 41 AM_MEDIA_TYPE type; |
3056 | 42 GUID interfaces[1]; |
7386 | 43 } CInputPin; |
168 | 44 |
3056 | 45 CInputPin* CInputPinCreate(CBaseFilter* parent, const AM_MEDIA_TYPE* vhdr); |
168 | 46 |
1545 | 47 |
7386 | 48 typedef struct |
168 | 49 { |
3056 | 50 IPin_vt* vt; |
3130 | 51 DECLARE_IUNKNOWN(); |
168 | 52 CBaseFilter* parent; |
3130 | 53 GUID interfaces[1]; |
168 | 54 IPin* remote_pin; |
3056 | 55 } CRemotePin; |
56 | |
57 CRemotePin* CRemotePinCreate(CBaseFilter* pt, IPin* rpin); | |
58 | |
168 | 59 |
7386 | 60 typedef struct |
168 | 61 { |
3056 | 62 IPin_vt* vt; |
3130 | 63 DECLARE_IUNKNOWN(); |
168 | 64 CBaseFilter2* parent; |
3056 | 65 GUID interfaces[1]; |
66 } CRemotePin2; | |
67 | |
68 CRemotePin2* CRemotePin2Create(CBaseFilter2* parent); | |
168 | 69 |
26045 | 70 #endif /* MPLAYER_INPUTPIN_H */ |