Commit Graph

2618 Commits

Author SHA1 Message Date
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
Robbert van der Helm 2a2ff6bd2a Add a note on concurrency to the logger 2020-03-06 15:56:24 +01:00
Robbert van der Helm 1d2c3d4d75 Add the base for a debug log 2020-03-06 15:40:15 +01:00
Robbert van der Helm 46b08530ae Pass through processReplacing
Should work, almost does.
2020-03-05 22:18:06 +01:00
Robbert van der Helm 54b5395c5e Use a statically allocated array for audio buffers
We wouldn't know the right size on the receiving end in advance.
2020-03-05 20:59:27 +01:00
Robbert van der Helm 9d68493af1 Shorten buffer_type to buffer_t 2020-03-05 19:47:31 +01:00
Robbert van der Helm 9754909930 Allow reusing buffers when reading and writing 2020-03-05 19:18:34 +01:00
Robbert van der Helm 620ba5b756 Define a buffer size for each type 2020-03-05 19:03:48 +01:00
Robbert van der Helm c9d6eea496 Add a data structure for serializing audio buffers 2020-03-05 18:33:51 +01:00
Robbert van der Helm e6671f687d Ensure written strings are null terminated
A strcpy would work as well but this is more robust and avoids C library
functions.
2020-03-05 18:02:13 +01:00
Robbert van der Helm f84557d0d0 Fix arguments for dispatch callback passthrough 2020-03-05 17:20:27 +01:00
Robbert van der Helm bea600a13a Pass through getParameter and setParameter 2020-03-05 17:00:45 +01:00
Robbert van der Helm 814a3b40b5 Use a thread for dispatch events 2020-03-05 16:29:59 +01:00
Robbert van der Helm 6c4dca151b Also add a proxy function for processReplacing 2020-03-05 15:31:15 +01:00
Robbert van der Helm 4f29a98cea Pass through the plugin's AEffect struct 2020-03-05 14:55:32 +01:00
Robbert van der Helm 8f34947307 Also serialize a plugin's parameter count
Forgot this initially.
2020-03-05 14:50:37 +01:00
Robbert van der Helm 5383bbb231 Add a serialization function for AEffect structs 2020-03-05 13:50:57 +01:00
Robbert van der Helm 88d5a5e9d8 Allow deserializing to existing objects 2020-03-05 13:13:40 +01:00
Robbert van der Helm 22f01a4b69 Update .clang-format 2020-03-05 13:04:16 +01:00
Robbert van der Helm cb6ad5f043 Rename both Bridge classes to differentiate
Switching between them became a bit confusing.
2020-03-01 01:17:15 +01:00
Robbert van der Helm 5ace761ce9 Pass callbacks back through to the host
Instead of using std::thread this can be done cleaner using recursive
async read functions. Everything withing those functions should of
course still remain synchronous.
2020-03-01 01:06:35 +01:00
Robbert van der Helm ca713ada4e Factor out sending and passing through events
Since we can use this both for the dispatch function and for host
callbacks.
2020-03-01 00:19:27 +01:00
Robbert van der Helm bdaa1bbeba Move all functionality to the bridge class 2020-02-29 00:26:21 +01:00
Robbert van der Helm 7b7e2e2c21 Check whether LoadLibrary has failed
Because that too can happen.
2020-02-28 22:45:09 +01:00
Robbert van der Helm e598d7c133 Add a bridge for the Wine host to connect back
This is equivalent to plugin/bridge.h but for communicating between the
native Linus VST plugin and the Windows VST plugin.
2020-02-27 13:55:19 +01:00
Robbert van der Helm cd5b294952 Replace msgpack with bitsery 2020-02-26 22:17:05 +01:00
Robbert van der Helm 5b07941986 Add missing TODOs and part of the protocol 2020-02-26 18:09:42 +01:00
Robbert van der Helm b2acd5508c Add bitsery as a dependency 2020-02-26 17:57:14 +01:00
Robbert van der Helm c2e102969e Rename parameters for clarity 2020-02-26 16:52:54 +01:00
Robbert van der Helm 3d12489e58 Pass all events to the plugin 2020-02-24 19:25:26 +01:00
Robbert van der Helm b04353e88c Get rid of the STDIN/STDOUT redirections
Not needed anymore.
2020-02-24 16:45:20 +01:00
Robbert van der Helm 5c946fff6a Communicate over the socket instead of STDIN 2020-02-24 16:43:04 +01:00
Robbert van der Helm df47104297 Connect to the unix socket from the Wine VST host 2020-02-24 15:46:22 +01:00
Robbert van der Helm a716072272 Pass the paths to the VST plugin .dll and socket 2020-02-24 13:50:47 +01:00
Robbert van der Helm b133d2078d Fix warning for function pointer casts
Still ain't pretty.
2020-02-24 13:28:02 +01:00