Ignore:
Timestamp:
Sep 15, 2001, 11:28:23 AM (24 years ago)
Author:
sandervl
Message:

wine update

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/quartz/fgraph.h

    r6578 r6710  
    88
    99        IUnknown
     10                + IPersist
     11                + IDispatch
    1012                + IFilterGraph - IGraphBuilder - IFilterGraph2
     13                + IGraphVersion
    1114                + IDispatch - IMediaControl
     15                + IPersist - IMediaFilter
    1216                + IDispatch - IMediaEvent - IMediaEventEx
     17                + IMediaEventSink
    1318                + IDispatch - IMediaPosition
    1419                + IMediaSeeking
    15                 + IDispatch - IBasicVideo (pass to a renderer)
     20                + IDispatch - IBasicVideo[2] (pass to a renderer)
    1621                + IDispatch - IBasicAudio (pass to a renderer)
    1722                + IDispatch - IVideoWindow  (pass to a renderer)
     23        (following interfaces are not implemented)
     24                + IMarshal
     25                + IFilterMapper2 - IFilterMapper3
     26                FIXME - Are there any missing interfaces???
    1827 */
    1928
    2029#include "iunk.h"
     30#include "complist.h"
     31
     32
     33typedef struct FG_IPersistImpl
     34{
     35        ICOM_VFIELD(IPersist);
     36} FG_IPersistImpl;
     37
     38typedef struct FG_IDispatchImpl
     39{
     40        ICOM_VFIELD(IDispatch);
     41} FG_IDispatchImpl;
    2142
    2243typedef struct FG_IFilterGraph2Impl
     
    2546} FG_IFilterGraph2Impl;
    2647
     48typedef struct FG_IGraphVersionImpl
     49{
     50        ICOM_VFIELD(IGraphVersion);
     51} FG_IGraphVersionImpl;
     52
    2753typedef struct FG_IMediaControlImpl
    2854{
     
    3056} FG_IMediaControlImpl;
    3157
     58typedef struct FG_IMediaFilterImpl
     59{
     60        ICOM_VFIELD(IMediaFilter);
     61} FG_IMediaFilterImpl;
     62
    3263typedef struct FG_IMediaEventImpl
    3364{
    3465        ICOM_VFIELD(IMediaEventEx);
    3566} FG_IMediaEventImpl;
     67
     68typedef struct FG_IMediaEventSinkImpl
     69{
     70        ICOM_VFIELD(IMediaEventSink);
     71} FG_IMediaEventSinkImpl;
    3672
    3773typedef struct FG_IMediaPositionImpl
     
    64100{
    65101        QUARTZ_IUnkImpl unk;
     102        FG_IPersistImpl persist;
     103        FG_IDispatchImpl        disp;
    66104        FG_IFilterGraph2Impl    fgraph;
     105        FG_IGraphVersionImpl    graphversion;
    67106        FG_IMediaControlImpl    mediacontrol;
     107        FG_IMediaFilterImpl     mediafilter;
    68108        FG_IMediaEventImpl      mediaevent;
     109        FG_IMediaEventSinkImpl  mediaeventsink;
    69110        FG_IMediaPositionImpl   mediaposition;
    70111        FG_IMediaSeekingImpl    mediaseeking;
     
    73114        FG_IVideoWindowImpl     vidwin;
    74115
     116        /* IDispatch fields. */
    75117        /* IFilterGraph2 fields. */
     118        QUARTZ_CompList*        m_pFilterList;
     119        /* IGraphVersion fields. */
     120        CRITICAL_SECTION        m_csGraphVersion;
     121        LONG    m_lGraphVersion;
    76122        /* IMediaControl fields. */
     123        /* IMediaFilter fields. */
     124        CRITICAL_SECTION        m_csGraphState;
     125        FILTER_STATE    m_stateGraph; /* must NOT accessed directly! */
    77126        /* IMediaEvent fields. */
     127        HANDLE  m_hMediaEvent;
     128        /* IMediaEventSink fields. */
    78129        /* IMediaPosition fields. */
    79130        /* IMediaSeeking fields. */
    80         /* IBasicVideo fields. */
     131        /* IBasicVideo2 fields. */
    81132        /* IBasicAudio fields. */
    82133        /* IVideoWindow fields. */
     
    84135
    85136#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))
    86142
    87143HRESULT QUARTZ_CreateFilterGraph(IUnknown* punkOuter,void** ppobj);
    88144
    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 );
     145HRESULT CFilterGraph_InitIPersist( CFilterGraph* pfg );
     146void CFilterGraph_UninitIPersist( CFilterGraph* pfg );
     147HRESULT CFilterGraph_InitIDispatch( CFilterGraph* pfg );
     148void CFilterGraph_UninitIDispatch( CFilterGraph* pfg );
     149HRESULT CFilterGraph_InitIFilterGraph2( CFilterGraph* pfg );
     150void CFilterGraph_UninitIFilterGraph2( CFilterGraph* pfg );
     151HRESULT CFilterGraph_InitIGraphVersion( CFilterGraph* pfg );
     152void CFilterGraph_UninitIGraphVersion( CFilterGraph* pfg );
     153HRESULT CFilterGraph_InitIMediaControl( CFilterGraph* pfg );
     154void CFilterGraph_UninitIMediaControl( CFilterGraph* pfg );
     155HRESULT CFilterGraph_InitIMediaFilter( CFilterGraph* pfg );
     156void CFilterGraph_UninitIMediaFilter( CFilterGraph* pfg );
     157HRESULT CFilterGraph_InitIMediaEventEx( CFilterGraph* pfg );
     158void CFilterGraph_UninitIMediaEventEx( CFilterGraph* pfg );
     159HRESULT CFilterGraph_InitIMediaEventSink( CFilterGraph* pfg );
     160void CFilterGraph_UninitIMediaEventSink( CFilterGraph* pfg );
     161HRESULT CFilterGraph_InitIMediaPosition( CFilterGraph* pfg );
     162void CFilterGraph_UninitIMediaPosition( CFilterGraph* pfg );
     163HRESULT CFilterGraph_InitIMediaSeeking( CFilterGraph* pfg );
     164void CFilterGraph_UninitIMediaSeeking( CFilterGraph* pfg );
     165HRESULT CFilterGraph_InitIBasicVideo2( CFilterGraph* pfg );
     166void CFilterGraph_UninitIBasicVideo2( CFilterGraph* pfg );
     167HRESULT CFilterGraph_InitIBasicAudio( CFilterGraph* pfg );
     168void CFilterGraph_UninitIBasicAudio( CFilterGraph* pfg );
     169HRESULT CFilterGraph_InitIVideoWindow( CFilterGraph* pfg );
     170void CFilterGraph_UninitIVideoWindow( CFilterGraph* pfg );
    97171
    98172
Note: See TracChangeset for help on using the changeset viewer.