54 lines
1.5 KiB
C++
54 lines
1.5 KiB
C++
|
//+-------------------------------------------------------------------------
|
||
|
//
|
||
|
// Microsoft Windows
|
||
|
//
|
||
|
// Copyright (C) Microsoft Corporation, 1998 - 1999
|
||
|
//
|
||
|
// File: dsoundcaptureobj.cpp
|
||
|
//
|
||
|
//--------------------------------------------------------------------------
|
||
|
|
||
|
// dSoundCaptureObj.cpp : Implementation of CDirectApp and DLL registration.
|
||
|
// DHF_DS entire file
|
||
|
#define DIRECTSOUND_VERSION 0x600
|
||
|
|
||
|
#include "stdafx.h"
|
||
|
#include "Direct.h"
|
||
|
#include "dSound.h"
|
||
|
|
||
|
#include "dms.h"
|
||
|
#include "dSoundObj.h"
|
||
|
#include "dSoundCaptureObj.h"
|
||
|
#include "dSoundCaptureBufferObj.h"
|
||
|
|
||
|
CONSTRUCTOR(_dxj_DirectSoundCapture, {});
|
||
|
DESTRUCTOR(_dxj_DirectSoundCapture, {});
|
||
|
GETSET_OBJECT(_dxj_DirectSoundCapture);
|
||
|
|
||
|
|
||
|
|
||
|
STDMETHODIMP C_dxj_DirectSoundCaptureObject::createCaptureBuffer(
|
||
|
DSCBufferDesc *desc,I_dxj_DirectSoundCaptureBuffer **retval)
|
||
|
{
|
||
|
|
||
|
HRESULT hr = DD_OK;
|
||
|
IDirectSoundCaptureBuffer *lpBuffer=NULL;
|
||
|
DSCBUFFERDESC *realDesc=(DSCBUFFERDESC*)desc;
|
||
|
|
||
|
|
||
|
realDesc->dwSize=sizeof(DSCBUFFERDESC);
|
||
|
desc->pFormat=(long)PtrToLong(&(desc->fxFormat)); //bugbug SUNDOWN
|
||
|
|
||
|
hr=m__dxj_DirectSoundCapture->CreateCaptureBuffer(realDesc,&lpBuffer,NULL);
|
||
|
if FAILED(hr) return hr;
|
||
|
|
||
|
INTERNAL_CREATE(_dxj_DirectSoundCaptureBuffer, lpBuffer, retval);
|
||
|
return hr;
|
||
|
}
|
||
|
|
||
|
STDMETHODIMP C_dxj_DirectSoundCaptureObject::getCaps(DSCCaps *caps){
|
||
|
((DSCCAPS*)caps)->dwSize=sizeof(DSCCAPS);
|
||
|
return m__dxj_DirectSoundCapture->GetCaps((DSCCAPS*)caps);
|
||
|
}
|
||
|
|