Commit Graph

3002 Commits

Author SHA1 Message Date
Robbert van der Helm 54966a36f2 Implement effSetChunk 2020-03-10 12:57:53 +01:00
Robbert van der Helm e89ddfe7b1 Correct reading chunks
They're not actually stored in `data`, but in `*data`.
2020-03-10 00:36:34 +01:00
Robbert van der Helm 7fcf5abaf2 Handle effGetChunk correctly 2020-03-09 23:53:36 +01:00
Robbert van der Helm 7e75f913fa Add the ability to override writing back data 2020-03-09 23:36:54 +01:00
Robbert van der Helm ec96064cc1 Implement another EventPayload for binary data 2020-03-09 23:24:10 +01:00
Robbert van der Helm 1da0d583a6 Draft up an approach for effGetChunk 2020-03-09 21:57:31 +01:00
Robbert van der Helm 96d0428d56 Factor out the serializer for event payloads 2020-03-09 21:44:44 +01:00
Robbert van der Helm 8dad15b597 Always use resizable buffers
It was a slight problem for audio buffers, but events can apparently
also have an arbitrary size because of chunks.
2020-03-09 21:32:49 +01:00
Robbert van der Helm adf33e84a8 Use a template argument for serializing behaviour
This keeps it a bit more readable.
2020-03-09 20:13:08 +01:00
Robbert van der Helm 10b6121cb8 Fix deserialization format of events
Apparently it uses VLAs, but in a very sneaky way.
2020-03-09 17:20:15 +01:00
Robbert van der Helm 69008e97a4 Serialize midi events using vectors
Easier than to implement C-style arrays in Bitsery and this way we also
don't have to worry about cleanup.

Serum still segfaults with multiple events so something is still off.
2020-03-09 15:31:35 +01:00
Robbert van der Helm be11364c58 Remvoe the bitsery c-array attempt
I'll just use vectors and a thin wrapper instead, shouldn't have much
overhead.
2020-03-09 14:42:11 +01:00
Robbert van der Helm 6b30100611 Move the derived bitsery extension to bitsery::ext
To make it easier to move it over later and to make the implementation
slightly less verbose.
2020-03-09 12:39:06 +01:00
Robbert van der Helm cd8d12094b Rename the temporary pointer object extension
This should make it clearer at a glance that it's not the original
implementation.
2020-03-09 12:32:45 +01:00
Robbert van der Helm 765dcf01e3 Add a file for a c-array bitsery extension 2020-03-08 23:03:10 +01:00
Robbert van der Helm 2fda0bc9f2 Add missing copyright headers 2020-03-08 22:34:53 +01:00
Robbert van der Helm 40142f801e Pass throug the VstEvents struct 2020-03-08 20:29:40 +01:00
Robbert van der Helm c5ea1e5153 Add serialization for midi events 2020-03-08 20:02:24 +01:00
Robbert van der Helm 5523871fd8 Pass a marker struct instead of an empty array 2020-03-08 18:51:16 +01:00
Robbert van der Helm d8e39ed16a Fix returning buffers from std::visit
Last time I tried it references somehow didn't work.
2020-03-08 18:40:16 +01:00
Robbert van der Helm 2326a92c62 Improve event passing clarity 2020-03-08 18:33:01 +01:00
Robbert van der Helm 1434f5855b Fix wine forward initialization order
`io_context.run()` returns if there is no more work to do, so it should
be called only after we give it something to do.
2020-03-08 17:59:47 +01:00
Robbert van der Helm ff89d12c1a Use std::avriant to encode event payloads
It's a bit more complicated this way, but nwo we can easily add support
for the opcode specific structs.
2020-03-08 17:47:09 +01:00
Robbert van der Helm d434bcf682 Move data types and serializers to their own file 2020-03-08 14:32:15 +01:00
Robbert van der Helm b46488ac28 Add a description of communication.h 2020-03-08 14:25:15 +01:00
Robbert van der Helm 97a68e3fb0 Add debug labels for new dispatch opcodes 2020-03-08 13:52:55 +01:00
Robbert van der Helm f1901de62b Add an updated version of the aeffectx.h header
From the Audacity project.
2020-03-08 13:48:09 +01:00
Robbert van der Helm 6373c38663 Correct VeSTige header name to aeffectx.h 2020-03-08 13:27:17 +01:00
Robbert van der Helm 3232f76f97 Add missing flush 2020-03-08 13:18:50 +01:00
Robbert van der Helm 68490d42b6 Add more TODOs 2020-03-08 13:00:37 +01:00
Robbert van der Helm 68215679a6 Get rid of verbosity level 2
Probably wasn't going to be very useful.
2020-03-08 12:48:44 +01:00
Robbert van der Helm 3d92b9db28 Add a section about debugging in the readme 2020-03-08 12:46:53 +01:00
Robbert van der Helm ea4b0babcd Wrap the debug print functions in unlikely macros
Since the compiler can't tell that these routines should never be hit
during normal usage.
2020-03-07 23:59:45 +01:00
Robbert van der Helm b67a3546b7 Remove redundant information from logging 2020-03-07 23:40:09 +01:00
Robbert van der Helm 3bfb6cf38b Disable logging on the Wine side
It was incredibly verbose, and for debugging the networking part you
could still use stdout.
2020-03-07 23:36:30 +01:00
Robbert van der Helm 35b0174b9e Add log messages everywhere 2020-03-07 23:10:07 +01:00
Robbert van der Helm 5d96f9e13b Improve logging formatting 2020-03-07 23:09:58 +01:00
Robbert van der Helm 80ed96acd7 Change the debug verbosity environment variable 2020-03-07 22:50:59 +01:00
Robbert van der Helm ee75dcc7e6 Add specific logging functions for all the events 2020-03-07 22:29:21 +01:00
Robbert van der Helm 280d9fcd2b Print Wine STDOUT and STDERR through the logger 2020-03-07 21:43:04 +01:00
Robbert van der Helm e5348fc5f7 Fix logging to files 2020-03-07 18:58:23 +01:00
Robbert van der Helm 50172aefbb Write basic log messages 2020-03-07 17:57:56 +01:00
Robbert van der Helm 77b2d1b44a Add a function for formatting log messages 2020-03-07 16:48:41 +01:00
Robbert van der Helm 356d6a6efc Add a usage section to the readme 2020-03-07 15:39:45 +01:00
Robbert van der Helm e0d7e17d7d Update the todos 2020-03-07 15:39:45 +01:00
Robbert van der Helm 4bcb77defa Add logging prefixes based on the plugin 2020-03-07 15:39:45 +01:00
Robbert van der Helm bfc0d46780 Shut up CCLS 2020-03-07 15:39:45 +01:00
Robbert van der Helm 54d62c6a66 Split src/common/* into headers and definitions 2020-03-06 19:18:27 +01:00
Robbert van der Helm 7d0bf3e3c4 Further clean up the Boost hacks
This way we can also finally split up the src/common/* files into
headers and implementations.
2020-03-06 18:44:47 +01:00
Robbert van der Helm 13d013312a Clean up the Boost/windows.h trickery
I didn't know NOMINMAX was a thing, but that fixes a lot of compile
errors.
2020-03-06 18:37:35 +01:00