53 IAudioData_AddRef(iface);
67 TRACE(
"(%p)->(): new ref = %lu\n", iface,
This->ref);
77 TRACE(
"%p decreasing refcount to %lu.\n", audiodata,
ref);
101 if (
This->data_owned)
144 *actual_data =
This->actual_data;
154 TRACE(
"(%p)->(%lu)\n", iface, data_valid);
156 if (data_valid >
This->size)
161 This->actual_data = data_valid;
171 TRACE(
"(%p)->(%p)\n", iface, wave_format_current);
173 if (!wave_format_current)
178 *wave_format_current =
This->wave_format;
187 TRACE(
"(%p)->(%p)\n", iface, wave_format);
199 This->wave_format = *wave_format;
223 TRACE(
"(%p,%p)\n", pUnkOuter, ppObj);
228 if (!(
object =
calloc(1,
sizeof(*
object))))
235 object->wave_format.nChannels = 1;
236 object->wave_format.nSamplesPerSec = 11025;
237 object->wave_format.wBitsPerSample = 16;
238 object->wave_format.nBlockAlign =
object->wave_format.wBitsPerSample *
object->wave_format.nChannels / 8;
239 object->wave_format.nAvgBytesPerSec =
object->wave_format.nBlockAlign *
object->wave_format.nSamplesPerSec;
241 *ppObj = &
object->IAudioData_iface;
#define InterlockedIncrement
#define InterlockedDecrement
static HRESULT WINAPI IAudioDataImpl_GetFormat(IAudioData *iface, WAVEFORMATEX *wave_format_current)
static ULONG WINAPI IAudioDataImpl_AddRef(IAudioData *iface)
static HRESULT WINAPI IAudioDataImpl_SetBuffer(IAudioData *iface, DWORD size, BYTE *data, DWORD flags)
static HRESULT WINAPI IAudioDataImpl_SetFormat(IAudioData *iface, const WAVEFORMATEX *wave_format)
static const struct IAudioDataVtbl AudioData_Vtbl
static HRESULT WINAPI IAudioDataImpl_QueryInterface(IAudioData *iface, REFIID riid, void **ret_iface)
static AMAudioDataImpl * impl_from_IAudioData(IAudioData *iface)
static HRESULT WINAPI IAudioDataImpl_SetActual(IAudioData *iface, DWORD data_valid)
static ULONG WINAPI IAudioDataImpl_Release(IAudioData *iface)
HRESULT AMAudioData_create(IUnknown *pUnkOuter, LPVOID *ppObj)
static HRESULT WINAPI IAudioDataImpl_GetInfo(IAudioData *iface, DWORD *length, BYTE **data, DWORD *actual_data)
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
GLuint GLsizei GLsizei * length
#define IsEqualGUID(rguid1, rguid2)
IAudioData IAudioData_iface
#define CONTAINING_RECORD(address, type, field)
#define CLASS_E_NOAGGREGATION