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
Robbert van der Helm
cfa765e4d6
Clean up file path creation
2020-02-24 13:22:03 +01:00
Robbert van der Helm
073f71847d
Fix socket creation
2020-02-10 21:43:05 +01:00
Robbert van der Helm
fd29e0a2d4
Add a Unix domain socket for host->vst events
2020-02-10 21:00:03 +01:00
Robbert van der Helm
4f22597970
Better document the serialization part
2020-02-10 18:24:38 +01:00
Robbert van der Helm
309a6cb00e
Add GPLv3 copyright headers
2020-02-10 16:47:43 +01:00
Robbert van der Helm
a7dedf1fbe
Describe the project's architecture
2020-02-10 16:18:46 +01:00
Robbert van der Helm
5fc87d2da4
Rename the wineprefix detection function
...
Since it actually has to produce a complete environment since there's no
way to conditionally set environment variables otherwise.
2020-02-10 15:01:32 +01:00
Robbert van der Helm
25382711da
Add wineprefix detection
2020-02-10 14:56:27 +01:00
Robbert van der Helm
1b1c0c57b9
Add the groundwork for loading VST plugins
2020-02-09 22:53:31 +01:00
Robbert van der Helm
875308bd6f
Answer event queries within the Wine VST host
2020-02-09 20:05:47 +01:00
Robbert van der Helm
73256d0055
Print exceptions thrown during initialization
2020-02-09 17:52:23 +01:00
Robbert van der Helm
b6c9acc57c
Add functions to encapsulate serialization
2020-02-09 17:22:45 +01:00
Robbert van der Helm
b757001435
Add basic communication with a child process
2020-02-08 17:18:39 +01:00
Robbert van der Helm
65996f856a
Add boilerplate for event handling
2020-02-07 17:16:09 +01:00
Robbert van der Helm
7a68654fa2
Handle freeing resources when closing the plugin
2020-02-07 15:04:27 +01:00
Robbert van der Helm
58d749862f
Delegate the plugin functionality to a class
...
This way we can hopefully contain all the manual memory management and
raw pointers somewhat.
2020-02-06 19:01:30 +01:00
Robbert van der Helm
3cda70ec04
Add some more boilerplate
2020-02-03 15:52:16 +01:00
Robbert van der Helm
f1a95ded2f
Initial commit with project skeleton
2020-02-03 14:13:43 +01:00