Commit Graph

301 Commits

Author SHA1 Message Date
Michael Stefaniuc 36a88d2841 dmusic: Implement IDirectMusic8::SetDirectSound().
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-10 09:16:00 -05:00
Michael Stefaniuc b75e8bc6bd dmusic: Use more sensible and consistent field names for IDirectMusic8Impl.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-10 09:15:50 -05:00
Michael Stefaniuc 251d1c0b86 dmusic/tests: Expand the dsound refcount testing with the port.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-10 09:15:45 -05:00
Michael Stefaniuc cf943820eb dmusic/tests: Add some IDirectMusic_SetDirectSound() tests.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-05 10:13:22 +02:00
Michael Stefaniuc 950b8a9699 dmusic: Avoid an intermediate copy in PackStructured().
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-02 11:18:33 +02:00
Michael Stefaniuc 7cd7f14696 dmusic: Implement IDirectMusicBuffer::PackUnstructured().
Based on a patch by Michael Müller <michael@fds-team.de>.

Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-01 19:29:16 +02:00
Michael Stefaniuc 4fbae8eab4 dmusic: Use DMUS_EVENT_SIZE() to calculate the size of the message.
Suggested by Michael Müller.

Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-01 19:29:15 +02:00
Nikolay Sivov f0fb2f16ca dmusic/tests: Use void* instead of void** type value for outer argument.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-24 20:30:30 +02:00
Michael Stefaniuc 883fe110ea dmusic: Support the IKsControl interface for the synth port.
Based on a patch by Michael Müller.

Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-05 11:43:21 +02:00
Michael Stefaniuc 845bf2ff59 dmusic: Move the SynthPortImpl struct to where it is used.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-05 11:43:20 +02:00
Michael Stefaniuc ca87c49390 dmusic: Simplify the IDirectMusicPort_QueryInterface implementation.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-05 11:43:17 +02:00
Michael Stefaniuc 1dc5cc3470 dmusic/tests: Add basic COM tests for IDirectMusicPort.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-05 11:43:14 +02:00
Michael Stefaniuc dd8d5f3820 dmusic: Avoid using the COM method implementations directly.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-01 20:47:46 +09:00
Michael Stefaniuc 253bffafba dmusic: Use debugstr_guid to trace some GUIDs.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-26 20:33:18 +09:00
Michael Stefaniuc abb0a22d31 dmusic: Remove old and ugly COM macros. 2015-06-29 19:07:55 +09:00
Michael Stefaniuc 8c6c7f6b49 dmloader: Add and use a generic IPersistStream_GetClassID. 2015-04-28 15:35:23 +09:00
Michael Stefaniuc f897757865 dmusic/tests: Remove an unused assigment (PVS-Studio). 2015-01-15 14:06:00 +01:00
Michael Stefaniuc 3d77974f76 dmusic: Remove duplicated interface ID checks (PVS-Studio). 2014-10-29 20:31:06 +09:00
Frédéric Delanoy 2ab8729020 Assorted spelling/grammar fixes. 2014-06-20 12:19:31 +02:00
Michael Stefaniuc 5e1783b59a dmusic: Increment the refcount when a IReferenceClock pointer is returned. 2014-06-17 09:04:24 +02:00
Michael Stefaniuc d33989f675 dmusic: Remove the redundant "IDirectMusicCollection" from method names. 2014-06-13 15:59:48 +02:00
Michael Stefaniuc 147f100f3e dmusic: Get rid of the extra pointer to a DMUS_OBJECTDESC. 2014-06-13 15:59:42 +02:00
Michael Stefaniuc 4e81a977c7 dmusic: Use generic "unimplemented" methods for IPersistStream. 2014-06-13 15:59:39 +02:00
Michael Stefaniuc 02ed47fa3c dmusic: Move the common parts of DMObject to a generic implementation. 2014-06-13 15:59:36 +02:00
Michael Stefaniuc 1a7c0a6a70 dmusic: Lock/unlock the module only on creation/destruction of the object. 2014-06-11 16:13:02 +02:00
Michael Stefaniuc d67f35b9dc dmusic: Don't leak memory on DirectMusicInstrument creation failure.
Also lock/unlock the module only on creation/destruction of the object.
2014-06-11 16:12:51 +02:00
Michael Stefaniuc 096bfbd214 dmusic: Simplify the creation of a DirectMusic8 object.
Also lock/unlock the module only on creation/destruction of the object.
2014-06-11 16:12:47 +02:00
Michael Stefaniuc d82e2935e4 dmusic: Release the clock when destroying the IDirectMusic8 object. 2014-06-11 16:12:43 +02:00
Michael Stefaniuc 19eba06a26 dmusic: Don't leak memory on IReferenceClock creation failure.
Also lock/unlock the module only on creation/destruction of the object.
2014-06-11 16:12:36 +02:00
Michael Stefaniuc 57eb95a2ea dmusic: Simplify the creation of a DirectMusicBuffer object.
Also lock/unlock the module only on creation/destruction of the object.
2014-06-11 16:12:32 +02:00
Michael Stefaniuc 3115e49017 dmusic/tests: Test unimplemented IPersistStream methods in DMCollection. 2014-06-11 12:59:10 +02:00
Michael Stefaniuc 5d7e93dc54 dmusic: Return S_FALSE for the unimplemented IPersistStream_IsDirty(). 2014-06-11 12:59:05 +02:00
Michael Stefaniuc 176b7aa842 dmusic: Move a struct to the .c file it is used. 2014-05-16 10:52:27 +02:00
Alexandre Julliard 7d3559bfe9 dxguid: Remove some symbols that aren't exported in native. 2014-04-24 12:41:38 +02:00
Andrey Gusev add85f4687 Assorted typos fixes. 2014-02-12 19:15:32 +01:00
Frédéric Delanoy 5e6f0e93fa dmusic/tests: Use common wine_dbgstr_guid implementation from test.h. 2014-01-28 11:44:56 +01:00
Michael Stefaniuc 2973dbb856 dmusic: Use the defines for the FOURCC codes. 2014-01-27 17:39:47 +01:00
Michael Stefaniuc edddda2374 include: There is no need to duplicate CLSID_DirectMusicAudioPathConfig as CLSID_DirectMusicAudioPath.
CLSID_DirectMusicAudioPath is private to Wine and produces the confusion
between the COM objects DirectMusicAudioPath and
DirectMusicAudioPathConfig. But those are totally different things.
2014-01-10 12:09:12 +01:00
Michael Stefaniuc 84df351b1e dmusic: Don't hardcode the guidClass in IDirectMusicObject::ParseDescriptor. 2014-01-06 17:10:04 +01:00
Michael Stefaniuc dc9208a0c5 dmusic/tests: Add some DirectMusicCollection tests. 2014-01-06 17:10:03 +01:00
Michael Stefaniuc fe0d2a2ba7 dmusic: Don't crash on NULL in IDirectMusicObject::GetDescriptor. 2014-01-06 17:10:02 +01:00
Michael Stefaniuc fda99c0fcc dmusic: The object class is immutable in a DirectMusicObject. 2014-01-06 17:10:01 +01:00
Michael Stefaniuc 5771ff8912 dmusic: Don't leak mem if DirectMusicCollection creation fails. 2014-01-06 17:08:52 +01:00
Michael Stefaniuc d3c550d0ba dmusic: Always AddRef the returned iface in QueryInterface. 2014-01-06 17:06:52 +01:00
Alexandre Julliard 99ef0d6ff0 makefiles: Get rid of the MAKE_TEST_RULES variable. 2014-01-02 12:13:16 +01:00
Alexandre Julliard 5e7416e5c8 makefiles: Get rid of the MAKE_DLL_RULES variable. 2014-01-02 12:08:18 +01:00
Michael Stefaniuc 393135c3c7 dmusic/tests: Change the way of detecting a workable dmusic. 2014-01-02 11:52:44 +01:00
Alexandre Julliard d08ff3ff19 makefiles: Use a single variable for all types of idl files. 2013-12-31 18:15:17 +01:00
Michael Stefaniuc 7474a37050 dmusic/tests: Don't crash with old dmusic versions. 2013-12-31 12:23:04 +01:00
Michael Stefaniuc 0c4b3514a5 dmusic/tests: Add some COM tests for IDirectMusic/IDirectMusicCollection. 2013-12-30 19:01:43 +01:00
Michael Stefaniuc 645ca7504e dmusic/tests: Centralize the skip(). 2013-12-30 19:01:42 +01:00
Michael Stefaniuc 5f5c21e55d dmusic: These COM classes don't support COM aggregation. 2013-12-30 19:01:42 +01:00
Alexandre Julliard c7803b885b makefiles: Add makedep pragmas for registration idl files. 2013-11-05 20:38:18 +01:00
Michael Stefaniuc 2a39cb377a dlls: Replace the remaining CONSTs. 2013-09-25 11:49:20 +02:00
André Hentschel b75f5c728d dmusic: Remove superfluous cast. 2013-07-02 11:10:05 +02:00
Francois Gouget 2fca1765b6 dmusic: Make DMUSIC_CreateDirectMusicDownloadedInstrumentImpl() static. 2013-04-18 19:12:14 +02:00
Alexandre Julliard f02cdd877f Remove empty DLL_PROCESS_DETACH case statements. 2013-04-15 16:45:35 +02:00
Christian Costa 2562969804 dmusic: Add support for loading articulations. 2013-01-22 12:14:03 +01:00
Marcus Meissner dfa88a21c9 dmusic: Actually return the allocated interface (Coverity). 2013-01-21 12:51:14 +01:00
Andrew Talbot 00f85d7fc3 dmusic: Avoid signed-unsigned integer comparisons. 2013-01-16 12:21:53 +01:00
Christian Costa 1c77528a89 dmusic: COM cleanup of IDirectMusicDownload. 2013-01-09 17:39:35 +01:00
Christian Costa c6694e6dec dmusic: Implement SynthPortImpl_IDirectMusicPort_DownloadInstrument. 2012-12-24 14:36:21 +01:00
Christian Costa 494fbc69ca dmusic: Move IDirectMusicDownloadedInstrument to port.c since it is port dependant and perform COM cleanup. 2012-12-24 14:36:14 +01:00
Christian Costa 898c2954e0 dmusic: Use static variables for instrument header and id instead of using pointer. 2012-12-21 13:54:29 +01:00
Christian Costa bf0605c08a dmusic: Implement instrument regions loading. 2012-12-21 13:54:23 +01:00
Christian Costa f30c18f3d2 dmusic: Set instrument stream position where the instrument begins, not at the beginning of the instruments list. Simplify CustomLoad accordingly. 2012-12-20 18:30:16 +01:00
Christian Costa f3e883878d dmusic: Init port caps dwSize member before calling GetPortCaps. 2012-11-05 11:30:34 +01:00
Christian Costa f7a9df5ecb dmusic: Remove unused variables. 2012-11-05 11:30:34 +01:00
Christian Costa 31a582989f dmusic: Display new ref in AddRef and Release. 2012-11-02 19:48:21 +01:00
Christian Costa db390b774b dmusic: Dump port params only once. 2012-11-02 19:48:14 +01:00
Sven Baars 86d589b2e1 dmusic: Fix a copy and paste error. 2012-10-01 11:58:26 +02:00
Christian Costa 58f34f509b dmusic: Check returned value of GetPortCaps. 2012-09-28 11:29:39 +02:00
Christian Costa 6ebf13960b dmusic: Add master clock tests. 2012-09-24 22:27:47 +02:00
Christian Costa 699fa23bd2 dmusic: Rename params in SynthPortImpl_IDirectMusicPort_QueryInterface. 2012-09-21 17:06:03 +02:00
Christian Costa 27b2868899 dmusic: Rename params in IDirectMusic8Impl_GetDefaultPort. 2012-09-21 17:05:58 +02:00
Christian Costa 4262ecf910 dmusic: Rename params of SynthPortImpl_IDirectMusicPort_DownloadInstrument. 2012-09-20 19:22:36 +02:00
Christian Costa 57e6d416d6 dmusic: Add comments to Synth port vtables. 2012-09-20 19:22:32 +02:00
Christian Costa b8aadbfbd9 dmusic: Implement SynthPortImpl_IDirectMusicPort_PlayBuffer. 2012-09-20 19:22:28 +02:00
Christian Costa b177ceff1e dmusic: Setup and free all DirectMusicSynth objects when creating and releasing Synth port. 2012-09-20 19:22:21 +02:00
Christian Costa 1481d11f66 dmusic: Rename params in DMUSIC_CreateSynthPortImpl. 2012-09-19 13:05:29 +02:00
Christian Costa 7844c1ca25 dmusic: Rename IDirectMusicPortImpl object to SynthPortImpl. 2012-09-19 13:05:23 +02:00
Christian Costa 51eb9331cf dmusic: Rename CreateSynthPortImpl to CreateSynthPortImpl and create stubs for CreateMidi{In|Out}PortImpl.
Init constructors in system ports list accordingly.
2012-09-19 13:05:15 +02:00
Christian Costa d46f8e316a dmusic: Display new ref in AddRef and Release methods. 2012-09-18 14:47:00 +02:00
Christian Costa 142c527b4b dmusic: Use system ports list to create port in CreatePort and rename params. 2012-09-18 14:47:00 +02:00
Christian Costa 66a817f067 dmusic: Create the list of available system ports at the beginning and use it to enumerate ports. 2012-09-17 12:07:41 +02:00
Christian Costa 649a177007 dmusic: Rename params in GetMasterClock. 2012-09-17 12:07:16 +02:00
Christian Costa 8c07215f3a dmusic: Rename params in CreateMusicBuffer. 2012-09-17 12:06:59 +02:00
Christian Costa 0b0985f391 dmusic: Cleanup DMUSIC_CreateDirectMusicImpl. 2012-05-25 13:44:13 +02:00
Christian Costa 2024e241ff dmusic: Cleanup IDirectMusic8Impl_QueryInterface. 2012-05-24 20:08:45 +02:00
Christian Costa 7c78cf2d31 dmusic: Display new ref in trace for AddRef and Release for direct music object. 2012-05-24 20:08:44 +02:00
Christian Costa 4c7fb67fc1 dmusic: Simplify IPersistStream_Load by checking DLS header first and exit if it is wrong. 2012-05-21 20:21:19 +02:00
Christian Costa decada5f73 dmusic: COM cleanup of DirectMusicPort object. 2012-05-18 18:12:47 +02:00
Christian Costa c0dff8ac44 dmusic: Cleanup IDirectMusicCollection_EnumInstrument. 2012-05-18 18:12:31 +02:00
Christian Costa 495e3288db dmusic: Cleanup IDirectMusicCollection_GetInstrument. 2012-05-18 18:12:18 +02:00
Christian Costa 82f3b86c5c dmusic: Display new ref in trace for AddRef and Release for collection object. 2012-05-18 18:12:06 +02:00
Christian Costa 19cb2d2171 dmusic: Implement IDirectMusicBuffer_SetUsedBytes. 2012-05-14 12:19:55 +02:00
Christian Costa f0324c9665 dmusic: COM cleanup of DirectMusicCollection and get rid of separated IUnknown interface. 2012-05-14 12:19:45 +02:00
Christian Costa 540ae18f69 dmusic: COM cleanup of IReferenceClock. 2012-05-14 12:19:24 +02:00
Christian Costa 5ae4238cea dmusic: Display new ref in trace for AddRef and Release for IDirectMusicInstrument. 2012-05-11 15:39:22 +02:00
Christian Costa 1501d3a49a dmusic: Variable spelling fix. 2012-05-11 15:39:22 +02:00