Changeset 6710 for trunk/src/quartz/fgraph.h
- Timestamp:
- Sep 15, 2001, 11:28:23 AM (24 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/quartz/fgraph.h
r6578 r6710 8 8 9 9 IUnknown 10 + IPersist 11 + IDispatch 10 12 + IFilterGraph - IGraphBuilder - IFilterGraph2 13 + IGraphVersion 11 14 + IDispatch - IMediaControl 15 + IPersist - IMediaFilter 12 16 + IDispatch - IMediaEvent - IMediaEventEx 17 + IMediaEventSink 13 18 + IDispatch - IMediaPosition 14 19 + IMediaSeeking 15 + IDispatch - IBasicVideo (pass to a renderer)20 + IDispatch - IBasicVideo[2] (pass to a renderer) 16 21 + IDispatch - IBasicAudio (pass to a renderer) 17 22 + IDispatch - IVideoWindow (pass to a renderer) 23 (following interfaces are not implemented) 24 + IMarshal 25 + IFilterMapper2 - IFilterMapper3 26 FIXME - Are there any missing interfaces??? 18 27 */ 19 28 20 29 #include "iunk.h" 30 #include "complist.h" 31 32 33 typedef struct FG_IPersistImpl 34 { 35 ICOM_VFIELD(IPersist); 36 } FG_IPersistImpl; 37 38 typedef struct FG_IDispatchImpl 39 { 40 ICOM_VFIELD(IDispatch); 41 } FG_IDispatchImpl; 21 42 22 43 typedef struct FG_IFilterGraph2Impl … … 25 46 } FG_IFilterGraph2Impl; 26 47 48 typedef struct FG_IGraphVersionImpl 49 { 50 ICOM_VFIELD(IGraphVersion); 51 } FG_IGraphVersionImpl; 52 27 53 typedef struct FG_IMediaControlImpl 28 54 { … … 30 56 } FG_IMediaControlImpl; 31 57 58 typedef struct FG_IMediaFilterImpl 59 { 60 ICOM_VFIELD(IMediaFilter); 61 } FG_IMediaFilterImpl; 62 32 63 typedef struct FG_IMediaEventImpl 33 64 { 34 65 ICOM_VFIELD(IMediaEventEx); 35 66 } FG_IMediaEventImpl; 67 68 typedef struct FG_IMediaEventSinkImpl 69 { 70 ICOM_VFIELD(IMediaEventSink); 71 } FG_IMediaEventSinkImpl; 36 72 37 73 typedef struct FG_IMediaPositionImpl … … 64 100 { 65 101 QUARTZ_IUnkImpl unk; 102 FG_IPersistImpl persist; 103 FG_IDispatchImpl disp; 66 104 FG_IFilterGraph2Impl fgraph; 105 FG_IGraphVersionImpl graphversion; 67 106 FG_IMediaControlImpl mediacontrol; 107 FG_IMediaFilterImpl mediafilter; 68 108 FG_IMediaEventImpl mediaevent; 109 FG_IMediaEventSinkImpl mediaeventsink; 69 110 FG_IMediaPositionImpl mediaposition; 70 111 FG_IMediaSeekingImpl mediaseeking; … … 73 114 FG_IVideoWindowImpl vidwin; 74 115 116 /* IDispatch fields. */ 75 117 /* IFilterGraph2 fields. */ 118 QUARTZ_CompList* m_pFilterList; 119 /* IGraphVersion fields. */ 120 CRITICAL_SECTION m_csGraphVersion; 121 LONG m_lGraphVersion; 76 122 /* IMediaControl fields. */ 123 /* IMediaFilter fields. */ 124 CRITICAL_SECTION m_csGraphState; 125 FILTER_STATE m_stateGraph; /* must NOT accessed directly! */ 77 126 /* IMediaEvent fields. */ 127 HANDLE m_hMediaEvent; 128 /* IMediaEventSink fields. */ 78 129 /* IMediaPosition fields. */ 79 130 /* IMediaSeeking fields. */ 80 /* IBasicVideo fields. */131 /* IBasicVideo2 fields. */ 81 132 /* IBasicAudio fields. */ 82 133 /* IVideoWindow fields. */ … … 84 135 85 136 #define CFilterGraph_THIS(iface,member) CFilterGraph* This = ((CFilterGraph*)(((char*)iface)-offsetof(CFilterGraph,member))) 137 #define CFilterGraph_IPersist(th) ((IPersist*)&((th)->persist)) 138 #define CFilterGraph_IDispatch(th) ((IDispatch*)&((th)->disp)) 139 #define CFilterGraph_IFilterGraph2(th) ((IFilterGraph2*)&((th)->fgraph)) 140 #define CFilterGraph_IMediaFilter(th) ((IMediaFilter*)&((th)->mediafilter)) 141 #define CFilterGraph_IMediaControl(th) ((IMediaControl*)&((th)->mediacontrol)) 86 142 87 143 HRESULT QUARTZ_CreateFilterGraph(IUnknown* punkOuter,void** ppobj); 88 144 89 void CFilterGraph_InitIFilterGraph2( CFilterGraph* pfg ); 90 void CFilterGraph_InitIMediaControl( CFilterGraph* pfg ); 91 void CFilterGraph_InitIMediaEventEx( CFilterGraph* pfg ); 92 void CFilterGraph_InitIMediaPosition( CFilterGraph* pfg ); 93 void CFilterGraph_InitIMediaSeeking( CFilterGraph* pfg ); 94 void CFilterGraph_InitIBasicVideo2( CFilterGraph* pfg ); 95 void CFilterGraph_InitIBasicAudio( CFilterGraph* pfg ); 96 void CFilterGraph_InitIVideoWindow( CFilterGraph* pfg ); 145 HRESULT CFilterGraph_InitIPersist( CFilterGraph* pfg ); 146 void CFilterGraph_UninitIPersist( CFilterGraph* pfg ); 147 HRESULT CFilterGraph_InitIDispatch( CFilterGraph* pfg ); 148 void CFilterGraph_UninitIDispatch( CFilterGraph* pfg ); 149 HRESULT CFilterGraph_InitIFilterGraph2( CFilterGraph* pfg ); 150 void CFilterGraph_UninitIFilterGraph2( CFilterGraph* pfg ); 151 HRESULT CFilterGraph_InitIGraphVersion( CFilterGraph* pfg ); 152 void CFilterGraph_UninitIGraphVersion( CFilterGraph* pfg ); 153 HRESULT CFilterGraph_InitIMediaControl( CFilterGraph* pfg ); 154 void CFilterGraph_UninitIMediaControl( CFilterGraph* pfg ); 155 HRESULT CFilterGraph_InitIMediaFilter( CFilterGraph* pfg ); 156 void CFilterGraph_UninitIMediaFilter( CFilterGraph* pfg ); 157 HRESULT CFilterGraph_InitIMediaEventEx( CFilterGraph* pfg ); 158 void CFilterGraph_UninitIMediaEventEx( CFilterGraph* pfg ); 159 HRESULT CFilterGraph_InitIMediaEventSink( CFilterGraph* pfg ); 160 void CFilterGraph_UninitIMediaEventSink( CFilterGraph* pfg ); 161 HRESULT CFilterGraph_InitIMediaPosition( CFilterGraph* pfg ); 162 void CFilterGraph_UninitIMediaPosition( CFilterGraph* pfg ); 163 HRESULT CFilterGraph_InitIMediaSeeking( CFilterGraph* pfg ); 164 void CFilterGraph_UninitIMediaSeeking( CFilterGraph* pfg ); 165 HRESULT CFilterGraph_InitIBasicVideo2( CFilterGraph* pfg ); 166 void CFilterGraph_UninitIBasicVideo2( CFilterGraph* pfg ); 167 HRESULT CFilterGraph_InitIBasicAudio( CFilterGraph* pfg ); 168 void CFilterGraph_UninitIBasicAudio( CFilterGraph* pfg ); 169 HRESULT CFilterGraph_InitIVideoWindow( CFilterGraph* pfg ); 170 void CFilterGraph_UninitIVideoWindow( CFilterGraph* pfg ); 97 171 98 172
Note:
See TracChangeset
for help on using the changeset viewer.