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
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