ReactOS 0.4.17-dev-934-g091855f
dvoice_private.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

HRESULT DPVOICE_CreateDirectPlayVoiceClient (IClassFactory *iface, IUnknown *pUnkOuter, REFIID riid, void **ppobj)
 
HRESULT DPVOICE_CreateDirectPlayVoiceServer (IClassFactory *iface, IUnknown *pUnkOuter, REFIID riid, void **ppobj)
 
HRESULT DPVOICE_CreateDirectPlayVoiceTest (IClassFactory *iface, IUnknown *pUnkOuter, REFIID riid, void **ppobj)
 
HRESULT DPVOICE_GetCompressionTypes (DVCOMPRESSIONINFO *pData, DWORD *pdwDataSize, DWORD *pdwNumElements, DWORD dwFlags)
 

Function Documentation

◆ DPVOICE_CreateDirectPlayVoiceClient()

HRESULT DPVOICE_CreateDirectPlayVoiceClient ( IClassFactory *  iface,
IUnknown *  pUnkOuter,
REFIID  riid,
void **  ppobj 
)

Definition at line 224 of file client.c.

225{
227 HRESULT ret;
228
229 TRACE("(%p, %s, %p)\n", pUnkOuter, debugstr_guid(riid), ppobj);
230
231 *ppobj = NULL;
232
234 if (!client)
235 return E_OUTOFMEMORY;
236
237 client->IDirectPlayVoiceClient_iface.lpVtbl = &DirectPlayVoiceClient_Vtbl;
238 client->ref = 1;
239
240 ret = IDirectPlayVoiceClient_QueryInterface(&client->IDirectPlayVoiceClient_iface, riid, ppobj);
241 IDirectPlayVoiceClient_Release(&client->IDirectPlayVoiceClient_iface);
242
243 return ret;
244}
#define E_OUTOFMEMORY
Definition: ddrawi.h:100
#define NULL
Definition: types.h:112
static const IDirectPlayVoiceClientVtbl DirectPlayVoiceClient_Vtbl
Definition: client.c:203
#define GetProcessHeap()
Definition: compat.h:736
#define HeapAlloc
Definition: compat.h:733
#define HEAP_ZERO_MEMORY
Definition: compat.h:134
return ret
Definition: mutex.c:147
#define IDirectPlayVoiceClient_Release(p)
Definition: dvoice.h:418
#define IDirectPlayVoiceClient_QueryInterface(p, a, b)
Definition: dvoice.h:416
REFIID riid
Definition: atlbase.h:39
#define debugstr_guid
Definition: kernel32.h:35
static FILE * client
Definition: client.c:37
#define TRACE(s)
Definition: solgame.cpp:4

◆ DPVOICE_CreateDirectPlayVoiceServer()

HRESULT DPVOICE_CreateDirectPlayVoiceServer ( IClassFactory *  iface,
IUnknown *  pUnkOuter,
REFIID  riid,
void **  ppobj 
)

Definition at line 213 of file server.c.

214{
216 HRESULT ret;
217
218 TRACE("(%p, %s, %p)\n", pUnkOuter, debugstr_guid(riid), ppobj);
219
220 *ppobj = NULL;
221
223 if (!server)
224 return E_OUTOFMEMORY;
225
226 server->IDirectPlayVoiceServer_iface.lpVtbl = &DirectPlayVoiceServer_Vtbl;
227 server->ref = 1;
228
229 ret = IDirectPlayVoiceServer_QueryInterface(&server->IDirectPlayVoiceServer_iface, riid, ppobj);
230 IDirectPlayVoiceServer_Release(&server->IDirectPlayVoiceServer_iface);
231
232 return ret;
233}
static const IDirectPlayVoiceServerVtbl DirectPlayVoiceServer_Vtbl
Definition: server.c:196
#define IDirectPlayVoiceServer_QueryInterface(p, a, b)
Definition: dvoice.h:435
#define IDirectPlayVoiceServer_Release(p)
Definition: dvoice.h:437
static rfbScreenInfoPtr server
Definition: vnc.c:74

◆ DPVOICE_CreateDirectPlayVoiceTest()

HRESULT DPVOICE_CreateDirectPlayVoiceTest ( IClassFactory *  iface,
IUnknown *  pUnkOuter,
REFIID  riid,
void **  ppobj 
)

Definition at line 300 of file client.c.

301{
303 HRESULT ret;
304
305 TRACE("(%p, %s, %p)\n", pUnkOuter, debugstr_guid(riid), ppobj);
306
307 *ppobj = NULL;
308
310 if (!test)
311 return E_OUTOFMEMORY;
312
313 test->IDirectPlayVoiceTest_iface.lpVtbl = &DirectPlayVoiceTest_Vtbl;
314 test->ref = 1;
315
316 ret = IDirectPlayVoiceTest_QueryInterface(&test->IDirectPlayVoiceTest_iface, riid, ppobj);
317 IDirectPlayVoiceTest_Release(&test->IDirectPlayVoiceTest_iface);
318
319 return ret;
320}
static const IDirectPlayVoiceTestVtbl DirectPlayVoiceTest_Vtbl
Definition: client.c:292
#define IDirectPlayVoiceTest_Release(p)
Definition: dvoice.h:451
#define IDirectPlayVoiceTest_QueryInterface(p, a, b)
Definition: dvoice.h:449
#define test
Definition: rosglue.h:37

◆ DPVOICE_GetCompressionTypes()

HRESULT DPVOICE_GetCompressionTypes ( DVCOMPRESSIONINFO *  pData,
DWORD *  pdwDataSize,
DWORD *  pdwNumElements,
DWORD  dwFlags 
)

Definition at line 42 of file server.c.

43{
44 static const DVCOMPRESSIONINFO pcm_type =
45 {80, {0x8de12fd4,0x7cb3,0x48ce,{0xa7,0xe8,0x9c,0x47,0xa2,0x2e,0x8a,0xc5}}, NULL, NULL, 0, 64000};
46 static const WCHAR pcm_name[] = L"MS-PCM 64 kbit/s";
47
49 LPWSTR string_loc;
50
51 if (!pdwDataSize || !pdwNumElements)
53
54 if (dwFlags)
55 return DVERR_INVALIDFLAGS;
56
57 *pdwNumElements = 1;
58
59 if (*pdwDataSize < sizeof(pcm_type) + sizeof(pcm_name))
60 {
62 }
63 else if (!pData)
64 {
66 }
67 else
68 {
69 string_loc = (LPWSTR)((char*)pData + sizeof(pcm_type));
70 memcpy(pData, &pcm_type, sizeof(pcm_type));
71 memcpy(string_loc, pcm_name, sizeof(pcm_name));
72 pData->lpszName = string_loc;
73 ret = DV_OK;
74 }
75
76 *pdwDataSize = sizeof(pcm_type) + sizeof(pcm_name);
77 return ret;
78}
#define L(x)
Definition: resources.c:13
#define DVERR_INVALIDFLAGS
Definition: dvoice.h:312
#define DVERR_BUFFERTOOSMALL
Definition: dvoice.h:309
#define DVERR_INVALIDPOINTER
Definition: dvoice.h:350
#define DV_OK
Definition: dvoice.h:304
#define memcpy(s1, s2, n)
Definition: mkisofs.h:878
_In_ LPWSTR _In_ DWORD _In_ DWORD _In_ DWORD dwFlags
Definition: netsh.h:141
short WCHAR
Definition: pedump.c:58
TW_UINT32 TW_UINT16 TW_UINT16 TW_MEMREF pData
Definition: twain.h:1830
uint16_t * LPWSTR
Definition: typedefs.h:56

Referenced by dpvclient_GetCompressionTypes(), and dpvserver_GetCompressionTypes().