486{
487 static const WCHAR emulated[] =
L" [Emulated]";
494 IDirectMusicSynth8* synth;
497
498 TRACE(
"(%p)\n",
object);
499
500
501
502
503
504
507 nb_ports = 1 + nb_midi_out + nb_midi_in + 1 ;
508
510 if (!
object->system_ports)
511 return;
512
513
514 for (
i = 0;
i < (nb_ports - 1 );
i++)
515 {
518 object->system_ports[
i].caps.dwMemorySize = 0;
519 object->system_ports[
i].caps.dwMaxChannelGroups = 1;
520 object->system_ports[
i].caps.dwMaxVoices = 0;
521 object->system_ports[
i].caps.dwMaxAudioChannels = 0;
523
525 object->system_ports[
i].caps.guidPort.Data1 =
i + 1;
526 }
527
528
537
538
539 for (
i = 0;
i < nb_midi_out;
i++)
540 {
549 }
550
551
552 for (
i = 0;
i < nb_midi_in;
i++)
553 {
562 }
563
564
566 hr =
CoCreateInstance(&CLSID_DirectMusicSynth,
NULL, CLSCTX_INPROC_SERVER, &IID_IDirectMusicSynth8, (
void**)&synth);
568 {
569 port->caps.dwSize =
sizeof(
port->caps);
572 }
574 nb_ports--;
575
576 object->num_system_ports = nb_ports;
577}
HRESULT WINAPI DECLSPEC_HOTPATCH CoCreateInstance(REFCLSID rclsid, IUnknown *outer, DWORD cls_context, REFIID riid, void **obj)
HRESULT synth_port_create(IDirectMusic8Impl *parent, DMUS_PORTPARAMS *port_params, DMUS_PORTCAPS *port_caps, IDirectMusicPort **port)
HRESULT midi_in_port_create(IDirectMusic8Impl *parent, DMUS_PORTPARAMS *port_params, DMUS_PORTCAPS *port_caps, IDirectMusicPort **port)
HRESULT midi_out_port_create(IDirectMusic8Impl *parent, DMUS_PORTPARAMS *port_params, DMUS_PORTCAPS *port_caps, IDirectMusicPort **port)
#define DMUS_PC_INPUTCLASS
#define DMUS_PORT_WINMM_DRIVER
#define DMUS_PC_SHAREABLE
#define DMUS_PC_OUTPUTCLASS
struct _DMUS_PORTCAPS DMUS_PORTCAPS
#define IDirectMusicSynth8_Release(p)
#define IDirectMusicSynth8_GetPortCaps(p, a)
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
LPWSTR WINAPI lstrcatW(LPWSTR lpString1, LPCWSTR lpString2)
WCHAR szPname[MAXPNAMELEN]
WCHAR szPname[MAXPNAMELEN]
UINT WINAPI midiInGetNumDevs(void)
UINT WINAPI midiOutGetNumDevs(void)
UINT WINAPI midiOutGetDevCapsW(UINT_PTR uDeviceID, LPMIDIOUTCAPSW lpCaps, UINT uSize)
UINT WINAPI midiInGetDevCapsW(UINT_PTR uDeviceID, LPMIDIINCAPSW lpCaps, UINT uSize)