Go to the documentation of this file.
26 { {&IID_IUnknown,0}, {&IID_IEnumMediaTypes,0} })
31 AM_MEDIA_TYPE **types,
unsigned long *fetched)
34 dshowdebug(
"ff_dshow_enummediatypes_Next(%p)\n",
this);
37 if (!this->
pos && n == 1) {
38 if (!IsEqualGUID(&this->
type.majortype, &GUID_NULL)) {
56 dshowdebug(
"ff_dshow_enummediatypes_Skip(%p)\n",
this);
63 dshowdebug(
"ff_dshow_enummediatypes_Reset(%p)\n",
this);
70 dshowdebug(
"ff_dshow_enummediatypes_Clone(%p)\n",
this);
83 IEnumMediaTypesVtbl *vtbl = this->vtbl;
84 SETVTBL(vtbl, enummediatypes, QueryInterface);
85 SETVTBL(vtbl, enummediatypes, AddRef);
86 SETVTBL(vtbl, enummediatypes, Release);
87 SETVTBL(vtbl, enummediatypes, Next);
88 SETVTBL(vtbl, enummediatypes, Skip);
89 SETVTBL(vtbl, enummediatypes, Reset);
90 SETVTBL(vtbl, enummediatypes, Clone);
93 this->type.majortype = GUID_NULL;
#define DECLARE_CREATE(prefix, class, setup,...)
static void nothing(void *foo)
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(prefix, class)
long WINAPI ff_dshow_enummediatypes_Next(DShowEnumMediaTypes *, unsigned long, AM_MEDIA_TYPE **, unsigned long *)
long ff_copy_dshow_media_type(AM_MEDIA_TYPE *dst, const AM_MEDIA_TYPE *src)
#define SETVTBL(vtbl, prefix, fn)
DShowEnumMediaTypes * ff_dshow_enummediatypes_Create(const AM_MEDIA_TYPE *type)
#define DECLARE_DESTROY(prefix, class, func)
#define DECLARE_RELEASE(prefix, class)