New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Compile error #6
Comments
Thanks for checking out the project! The compiler is right, As for parameter automation: it was kind of an intentional decision not to expose parameters to the DAW. If they were just exposed normally, then DAW-based automation would conflict with the plugin's internal controller assignments, so it should be decided which kind of automation would win in that case. This question could be eliminated by introducing a special controller for the DAW, because then the automation source for parameters would always be unambiguous. But on a second thought, this seems kind of unnecessary, since this is essentially the same as automating any MIDI CC in the DAW, and then assigning that MIDI CC to any param within the synth, which is already doable without having to write a single line of code. However, the VST 3 version has an advantage in this area, since that is required by the spec to expose parameters for each MIDI CC, which has side effects that would be nice to have for the FST version as well. I created issue #7 about this, thanks for the idea! |
Thanks for the quick fix! The GUI test project now builds successfully. But now there is a next issue:
This one I do not really understand when looking at the code around line 526 in vst3/plugin.cpp - for me it looks right... Do you use a different build mechanism? Or just an older version of MinGW? May I ask how you debug? (I'm used to Visual Studio projects for Windows and lately also learned a little bit about cmake and I possibly should also be able to use Visual Code for this purpose - but I do not yet have any experience with MinGW and makefile). Would there be another way to communicate with you? |
I think the compiler's problem is not that this method does write into a zero sized buffer at the moment, but that it could be called in a way which would result in doing that. I was in a hurry in the morning, and I closed the issue with only running the test that failed to compile, without checking if everything else is okay. I'm going to fix this some time after work.
I'm not an experienced C++ developer, so most of the time I rely on the good old
GH issues is fine for me - the older I get, the more I'm avoiding instant communication platforms, social media, notifications, etc. :-D |
HeHe, I fixed this temporarily exactly the same way as you did , except that I didn't rename the function. I'd have 2 suggestions for the Serializer:
I think this passing of strings by value also occurs in other classes... |
Oh, and the excessive use of 'const' for variables passed in as values also doesn't make too much sense in C++; It's no additional guarantee for the caller of the function - it only means that within the function the value of the variable cannot be changed... |
|
@2: I'm quite sure that in most cases passing a string, that should itself not be modified within called functions, by const reference should be the preferred way, since a reference is (usually) just implemented as a pointer. No copying/moving at all. I'm almost done with at least a draft which implements program banks, switching of programs within a bank, naming programs and save and load native fst banks and programs. |
Thank you, I'll take a look at them, but it may some time, because currently I'm also working on a couple of cool features. In the meanwhile, I created issue #8 and #9 from your code quality suggestions, so that I won't forget to address them. |
What would be the procedure to give you my changes for review? |
Nevermind! |
Sorry for being so late; a PR is exactly what I'd have suggested if I'd got to reply sooner. :-) |
I'm getting this
when I try to build latest main branch with '\build.bat' on Windows.
g++ --version gives me this:
Any ideas?
(I'm trying to add some FST ;-) features - like support for bank of programs, program name(s), switching of program etc. as well as support for parameter automation in a host...)
The text was updated successfully, but these errors were encountered: