/*
 * Copyright 2009 Alexandre Julliard
 *
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Lesser General Public
 * License as published by the Free Software Foundation; either
 * version 2.1 of the License, or (at your option) any later version.
 *
 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public
 * License along with this library; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
 */

#pragma makedep proxy
#pragma makedep register

cpp_quote("#include <wingdi.h>")
#include "strmif.idl"

[
    threading(both),
    uuid(670d1d20-a068-11d0-b3f0-00aa003761c5)  /* IAMCopyCaptureFileProgress */
]
coclass PSFactoryBuffer { interface IFactoryBuffer; }

[
    helpstring("Filter Graph"),
    threading(both),
    uuid(e436ebb3-524f-11ce-9f53-0020af0ba770)
]
coclass FilterGraph { interface IFilterGraph2; }

[
    helpstring("Filter Graph no thread"),
    threading(both),
    uuid(e436ebb8-524f-11ce-9f53-0020af0ba770)
]
coclass FilterGraphNoThread { interface IFilterGraph2; }

[
    helpstring("Filter Mapper"),
    threading(both),
    uuid(e436ebb2-524f-11ce-9f53-0020af0ba770)
]
coclass FilterMapper { interface IFilterMapper; }

[
    helpstring("Filter Mapper2"),
    threading(both),
    uuid(cda42200-bd88-11d0-bd4e-00a0c911ce86)
]
coclass FilterMapper2 { interface IFilterMapper3; }

[
    helpstring("System Clock"),
    threading(both),
    uuid(e436ebb1-524f-11ce-9f53-0020af0ba770)
]
coclass SystemClock { interface IReferenceClock; }

[
    helpstring("Memory Allocator"),
    threading(both),
    uuid(1e651cc0-b199-11d0-8212-00c04fc32c45)
]
coclass MemoryAllocator { interface IMemAllocator; }

[
    helpstring("Seeking"),
    threading(both),
    uuid(060af76c-68dd-11d0-8fc1-00c04fd9189d)
]
coclass SeekingPassThru { interface ISeekingPassThru; }

[
    helpstring("File Source Filter"),
    threading(both),
    uuid(e436ebb5-524f-11ce-9f53-0020af0ba770)
]
coclass AsyncReader { interface IBaseFilter; }

[
    helpstring("AVI Decompressor"),
    threading(both),
    uuid(cf49d4e0-1115-11ce-b03a-0020af0ba770)
]
coclass AVIDec { interface IBaseFilter; }

[
    helpstring("DirectSound Audio Renderer"),
    threading(both),
    uuid(79376820-07d0-11cf-a24d-0020afd79767)
]
coclass DSoundRender { interface IBaseFilter; }

[
    helpstring("Wave Audio Renderer"),
    threading(both),
    uuid(e30629d1-27e5-11ce-875d-00608cb78066)
]
coclass AudioRender { interface IBaseFilter; }

[
    helpstring("Video Renderer"),
    threading(both),
    uuid(70e102b0-5556-11ce-97c0-00aa0055595a)
]
coclass VideoRenderer { interface IBaseFilter; }

[
    helpstring("Default Video Renderer"),
    threading(both),
    uuid(6bc1cffa-8fc1-4261-ac22-cfb4cc38db50)
]
coclass VideoRendererDefault { interface IBaseFilter; }

[
    helpstring("ACM wrapper"),
    threading(both),
    uuid(6a08cf80-0e18-11cf-a24d-0020afd79767)
]
coclass ACMWrapper { interface IBaseFilter; }

[
    helpstring("Video Mixing Renderer"),
    threading(both),
    uuid(b87beb7b-8d29-423f-ae4d-6582c10175ac)
]
coclass VideoMixingRenderer { interface IBaseFilter; }

[
    helpstring("Video Mixing Renderer 9"),
    threading(both),
    uuid(51b4abf3-748f-4e3b-a276-c828330e926a)
]
coclass VideoMixingRenderer9 { interface IBaseFilter; }