#include "dshow.h"
#include "wine/strmbase.h"
#include "wine/debug.h"
Go to the source code of this file.
|
| WINE_DEFAULT_DEBUG_CHANNEL (strmbase) |
|
static IEnumPinsImpl * | impl_from_IEnumPins (IEnumPins *iface) |
|
HRESULT WINAPI | EnumPins_Construct (BaseFilter *base, BaseFilter_GetPin receive_pin, BaseFilter_GetPinCount receive_pincount, BaseFilter_GetPinVersion receive_version, IEnumPins **ppEnum) |
|
static HRESULT WINAPI | IEnumPinsImpl_QueryInterface (IEnumPins *iface, REFIID riid, LPVOID *ppv) |
|
static ULONG WINAPI | IEnumPinsImpl_AddRef (IEnumPins *iface) |
|
static ULONG WINAPI | IEnumPinsImpl_Release (IEnumPins *iface) |
|
static HRESULT WINAPI | IEnumPinsImpl_Next (IEnumPins *iface, ULONG cPins, IPin **ppPins, ULONG *pcFetched) |
|
static HRESULT WINAPI | IEnumPinsImpl_Skip (IEnumPins *iface, ULONG cPins) |
|
static HRESULT WINAPI | IEnumPinsImpl_Reset (IEnumPins *iface) |
|
static HRESULT WINAPI | IEnumPinsImpl_Clone (IEnumPins *iface, IEnumPins **ppEnum) |
|
◆ COBJMACROS
◆ IEnumPinsImpl
◆ EnumPins_Construct()
Definition at line 49 of file enumpins.c.
50{
52
53 if (!ppEnum)
55
57 if (!pEnumPins)
58 {
61 }
69 IBaseFilter_AddRef(&
base->IBaseFilter_iface);
72
73 TRACE(
"Created new enumerator (%p)\n", *ppEnum);
75}
static const struct IEnumPinsVtbl IEnumPinsImpl_Vtbl
LPVOID WINAPI CoTaskMemAlloc(SIZE_T size)
BaseFilter_GetPinVersion receive_version
BaseFilter_GetPinCount receive_pincount
IEnumPins IEnumPins_iface
Referenced by BaseFilterImpl_EnumPins(), and IEnumPinsImpl_Clone().
◆ IEnumPinsImpl_AddRef()
Definition at line 99 of file enumpins.c.
100{
103
104 TRACE(
"(%p)->(): new ref = %u\n", iface,
ref);
105
107}
#define InterlockedIncrement
static IEnumPinsImpl * impl_from_IEnumPins(IEnumPins *iface)
◆ IEnumPinsImpl_Clone()
Definition at line 193 of file enumpins.c.
194{
197
198 TRACE(
"(%p)->(%p)\n", iface, ppEnum);
199
203 return IEnumPins_Skip(*ppEnum,
This->uIndex);
204}
HRESULT WINAPI EnumPins_Construct(BaseFilter *base, BaseFilter_GetPin receive_pin, BaseFilter_GetPinCount receive_pincount, BaseFilter_GetPinVersion receive_version, IEnumPins **ppEnum)
◆ IEnumPinsImpl_Next()
Definition at line 125 of file enumpins.c.
126{
129
130 TRACE(
"(%p)->(%u, %p, %p)\n", iface, cPins, ppPins, pcFetched);
131
132 if (!ppPins)
134
135 if (cPins > 1 && !pcFetched)
137
138 if (pcFetched)
139 *pcFetched = 0;
140
143
145 {
148
150 break;
151 else
154 }
155
156 if (pcFetched)
159
163}
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
#define VFW_E_ENUM_OUT_OF_SYNC
◆ IEnumPinsImpl_QueryInterface()
Definition at line 77 of file enumpins.c.
78{
80
82
87
89 {
92 }
93
95
97}
#define IsEqualIID(riid1, riid2)
◆ IEnumPinsImpl_Release()
Definition at line 109 of file enumpins.c.
110{
113
114 TRACE(
"(%p)->(): new ref = %u\n", iface,
ref);
115
117 {
118 IBaseFilter_Release(&
This->base->IBaseFilter_iface);
120 }
121
123}
#define InterlockedDecrement
VOID WINAPI CoTaskMemFree(LPVOID ptr)
◆ IEnumPinsImpl_Reset()
Definition at line 181 of file enumpins.c.
182{
184
185 TRACE(
"(%p)->()\n", iface);
186
188
191}
◆ IEnumPinsImpl_Skip()
Definition at line 165 of file enumpins.c.
166{
168
169 TRACE(
"(%p)->(%u)\n", iface, cPins);
170
173
174 if (
This->receive_pincount(
This->base) >=
This->uIndex + cPins)
176
177 This->uIndex += cPins;
179}
◆ impl_from_IEnumPins()
◆ WINE_DEFAULT_DEBUG_CHANNEL()
WINE_DEFAULT_DEBUG_CHANNEL |
( |
strmbase |
| ) |
|
◆ IEnumPinsImpl_Vtbl
static const IEnumPinsVtbl IEnumPinsImpl_Vtbl |
|
static |
Initial value:=
{
}
static ULONG WINAPI IEnumPinsImpl_AddRef(IEnumPins *iface)
static HRESULT WINAPI IEnumPinsImpl_Clone(IEnumPins *iface, IEnumPins **ppEnum)
static HRESULT WINAPI IEnumPinsImpl_QueryInterface(IEnumPins *iface, REFIID riid, LPVOID *ppv)
static ULONG WINAPI IEnumPinsImpl_Release(IEnumPins *iface)
static HRESULT WINAPI IEnumPinsImpl_Next(IEnumPins *iface, ULONG cPins, IPin **ppPins, ULONG *pcFetched)
static HRESULT WINAPI IEnumPinsImpl_Skip(IEnumPins *iface, ULONG cPins)
static HRESULT WINAPI IEnumPinsImpl_Reset(IEnumPins *iface)
Definition at line 47 of file enumpins.c.
Referenced by EnumPins_Construct().