Mercurial > mplayer.hg
annotate loader/dshow/inputpin.h @ 35967:76d4f38ffdf9
Fix crash with file selector after pressing OK.
The crash would occur with the "dot directory" selected and pressing OK
when previously either the "directory up" button or OK (to refresh the
file list) has been pressed.
author | ib |
---|---|
date | Wed, 27 Mar 2013 18:56:13 +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 */ |