Go to the documentation of this file.
25 { {&IID_IUnknown,0}, {&IID_IEnumPins,0} })
30 unsigned long *fetched)
33 dshowdebug(
"ff_dshow_enumpins_Next(%p)\n",
this);
36 if (!this->
pos && n == 1) {
38 *pins = (IPin *) this->pin;
50 dshowdebug(
"ff_dshow_enumpins_Skip(%p)\n",
this);
57 dshowdebug(
"ff_dshow_enumpins_Reset(%p)\n",
this);
64 dshowdebug(
"ff_dshow_enumpins_Clone(%p)\n",
this);
77 IEnumPinsVtbl *vtbl = this->vtbl;
78 SETVTBL(vtbl, enumpins, QueryInterface);
79 SETVTBL(vtbl, enumpins, AddRef);
80 SETVTBL(vtbl, enumpins, Release);
#define DECLARE_CREATE(prefix, class, setup,...)
static int ff_dshow_enumpins_Setup(DShowEnumPins *this, DShowPin *pin, DShowFilter *filter)
long WINAPI ff_dshow_enumpins_Skip(DShowEnumPins *this, unsigned long n)
long WINAPI ff_dshow_enumpins_Clone(DShowEnumPins *this, DShowEnumPins **pins)
void(* filter)(uint8_t *src, int stride, int qscale)
static int ff_dshow_enumpins_Cleanup(DShowEnumPins *this)
#define DECLARE_ADDREF(prefix, class)
DECLARE_QUERYINTERFACE(enumpins, DShowEnumPins, { {&IID_IUnknown, 0}, {&IID_IEnumPins, 0} })
#define SETVTBL(vtbl, prefix, fn)
#define DECLARE_DESTROY(prefix, class, func)
DShowEnumPins * ff_dshow_enumpins_Create(DShowPin *pin, DShowFilter *filter)
unsigned long WINAPI ff_dshow_filter_AddRef(DShowFilter *)
#define DECLARE_RELEASE(prefix, class)
long WINAPI ff_dshow_enumpins_Reset(DShowEnumPins *this)
unsigned long WINAPI ff_dshow_pin_AddRef(DShowPin *)
long WINAPI ff_dshow_enumpins_Next(DShowEnumPins *, unsigned long, IPin **, unsigned long *)
unsigned long WINAPI ff_dshow_filter_Release(DShowFilter *)