Go to the documentation of this file.
25 { {&IID_IUnknown,0}, {&IID_IEnumMediaTypes,0} })
31 AM_MEDIA_TYPE **types,
unsigned long *fetched)
34 dshowdebug(
"libAVEnumMediaTypes_Next(%p)\n",
this);
37 if (!this->pos &&
n == 1) {
38 if (!IsEqualGUID(&this->
type.majortype, &GUID_NULL)) {
57 dshowdebug(
"libAVEnumMediaTypes_Skip(%p)\n",
this);
65 dshowdebug(
"libAVEnumMediaTypes_Reset(%p)\n",
this);
73 dshowdebug(
"libAVEnumMediaTypes_Clone(%p)\n",
this);
87 IEnumMediaTypesVtbl *vtbl = this->vtbl;
97 this->type.majortype = GUID_NULL;
static void nothing(void *foo)
#define DECLARE_RELEASE(class)
libAVEnumMediaTypes * libAVEnumMediaTypes_Create(const AM_MEDIA_TYPE *type)
long WINAPI libAVEnumMediaTypes_Next(libAVEnumMediaTypes *, unsigned long, AM_MEDIA_TYPE **, unsigned long *)
it s the only field you need to keep assuming you have a context There is some magic you don t need to care about around this just let it vf type
#define DECLARE_ADDREF(class)
#define DECLARE_CREATE(class, setup,...)
long ff_copy_dshow_media_type(AM_MEDIA_TYPE *dst, const AM_MEDIA_TYPE *src)
#define SETVTBL(vtbl, class, fn)
#define DECLARE_DESTROY(class, func)