having fun with kvr developers

DSP, Plug-in and Host development discussion.
Mr Entertainment

Topic Starter

12335 posts since 30 Apr, 2002 from i might peeramid

Post Thu Nov 25, 2021 5:24 am

i suppose i ought to ask,
i mentioned my confusion about being incapable of copying a "project" or "solution" (to me these both mean "some bullshit compiler file i never needed to deal with in borland"). say i take a "default generated project/solution" for either vst or windows, and set it up with all the extra things in it i want to have, as a default project/solution.

in the olden days i would set up my default documents, then copy them, and start adding new stuff. all i've discerned is that that is no longer possible. when i want to make a new piece of software, i have to start from a new generated "empty load of stuff", so the shitball doesn't write over my old things, then laboriously add all the things i've found i want to add into them,

eg. in windows, your boy wants to have some sound and some graphics. when i start a new piece of software ("project/solution") i want to take *my* default documents for that, copy them, and immediately start adding in the new stuff instead of configuring the documents for the rudiments of doing stuff.

in the olden days, i would take my default script for synthedit module, and just throw in a "new dsp barrel".

if someone could point out my error in comprehension, instead of me taking an hour to meticulously set up all the basic crap again like an idiot, we still wouldn't be any further away from infinity.
you come and go, you come and go. amitabha neither a follower nor a leader be tagore "where roads are made i lose my way" where there is certainty, consideration is absent.

User avatar
KVRAF
4302 posts since 7 Jun, 2012 from Warsaw

Post Thu Nov 25, 2021 5:32 am

If you want to create multiple projects based on same engine, maybe a solution to your problem would be to add multiple projects to the solution? Same catalogs and compiler settings for all, you just choose a different project to compile at a time.

This is actually what MSVS solution is for. People do that, just download any project from Github and see ¯\_(ツ)_/¯
Blog ------------- YouTube channel
Tricky-Loops wrote: (...)someone like Armin van Buuren who claims to make a track in half an hour and all his songs sound somewhat boring(...)

User avatar
KVRian
939 posts since 31 Dec, 2008

Post Thu Nov 25, 2021 6:14 am

I still don't quite understand why you couldn't just create a template project the way you like. And then just copy and rename the project/solution name (by right click) every time you wanted a new clone.

Mr Entertainment

Topic Starter

12335 posts since 30 Apr, 2002 from i might peeramid

Post Thu Nov 25, 2021 8:43 am

i tried to do it various ways, such as copying documents and "create project from existing documents" and editing the files to not have any reference to the original file set beforehand in notepad, did not copy the solution file. put some time in on google. whatever i did, the edits were made to the documents in the source folder, the one i copied to try and make a new thing to work on. kind of sucked.

so a project is to a solution like "aGain" is to "vst". so all my windows sdk projects would be within a single solution?
you come and go, you come and go. amitabha neither a follower nor a leader be tagore "where roads are made i lose my way" where there is certainty, consideration is absent.

User avatar
KVRian
1132 posts since 25 Sep, 2014 from Specific Northwest

Post Thu Nov 25, 2021 11:11 am

I'm not sure what you are fighting here. Is your IDE up to no good? I know that if I duplicate a project in Xcode, I then have to rename about 97 different things. Or, if I create a new project, I then have to copy in my files and then edit about 47 different things still. Project templates are the way too go, if your IDE supports them.

User avatar
KVRAF
4302 posts since 7 Jun, 2012 from Warsaw

Post Thu Nov 25, 2021 11:28 am

Instead of telling us what you couldn't do or failed at, please better explain what is it that you want to do.

Or, better yet, explain it to yourself in first place. Write it down step by step.

Either it makes sense and someone in the world already figured out how to handle that effectively, or your plan sucks to begin with ¯\_(ツ)_/¯
Blog ------------- YouTube channel
Tricky-Loops wrote: (...)someone like Armin van Buuren who claims to make a track in half an hour and all his songs sound somewhat boring(...)

KVRAF
7111 posts since 17 Feb, 2005

Post Thu Nov 25, 2021 11:58 am

A project is your build. It holds the compilation settings and relative file links used in your source.

I have not used VS since C++ 2005 version. Anything done on the solution level, which I'm not sure what that even is anymore, may apply to projects in the solution.

After using the GCC command line, I find it's bottom up approach to be easier to manage. I use a .bat file to compile, and if I need a new version, I copy the project directory and start from there. This bottom up approach makes it easier to do anything. But it's especially useful to exactly control what files are included in the compilation. So if you have a missing symbol link, or an error in a file, it can effectively isolate the problem to the project's scope only.

KVRAF
6579 posts since 12 Feb, 2006 from Helsinki, Finland

Post Thu Nov 25, 2021 12:41 pm

camsr wrote:
Thu Nov 25, 2021 11:58 am
I have not used VS since C++ 2005 version. Anything done on the solution level, which I'm not sure what that even is anymore, may apply to projects in the solution.
It has not changed significantly from 2005. You have a "solution" that is a workspace that holds a collection of projects. The project-file extension changed from .vcproj to .vcxproj in 2010(?) that's pretty much the only real change.
After using the GCC command line, I find it's bottom up approach to be easier to manage. I use a .bat file to compile, and if I need a new version, I copy the project directory and start from there.
You might want to consider looking into Makefiles. They are basically nothing more than dependencies and build-rules (eg. when this .cpp has changed, run this command to produce a matching .obj). Both gcc and clang can also dump dependent headers (add -MMD to command line and they'll produce a .d file as a byproduct of regular compilation, that you can then include in the Makefile so make knows that the .obj should be rebuilt if the headers are changed).

Make can be scripted to do some fancier tricks (eg. I like to let it find all the source files automatically and even build targets for binaries based on directory structure), but it's very low-level and explicit, just a step above .bat, yet the fact that it tracks dependencies means that (1) you can do incremental builds, rather than having to recompile everything and (2) with the "-j" option it can run multiple jobs in parallel (eg. "-j4" would compile up to 4 source files at the same time).

While the automatically generated Makefiles from something like autoconf or CMake tend to be quite confusing, at it's core it's very simple and you can write very simple Makefiles manually and basically get the simplicity of .bat files (ie. make itself doesn't care what your build commands do, they are just regular shell commands) with the efficiency of incremental and parallel builds.
Preferred pronouns would be "it/it" because according to this country, I'm a piece of human trash.

Mr Entertainment

Topic Starter

12335 posts since 30 Apr, 2002 from i might peeramid

Post Thu Nov 25, 2021 4:12 pm

here's another one..

how do you completely turn off autocomplete? can't seem to get that to work from the options with fitting names.

i don't want a closed parenthesis or a closed quote when i type an open one. i don't want a box to pop up with a list of variables in it that stops me from clicking on the type that i wanted to below it. i don't want any help typing what i type.
you come and go, you come and go. amitabha neither a follower nor a leader be tagore "where roads are made i lose my way" where there is certainty, consideration is absent.

KVRAF
6579 posts since 12 Feb, 2006 from Helsinki, Finland

Post Thu Nov 25, 2021 4:18 pm

xoxos wrote:
Thu Nov 25, 2021 4:12 pm
how do you completely turn off autocomplete? can't seem to get that to work from the options with fitting names.

i don't want a closed parenthesis or a closed quote when i type an open one. i don't want a box to pop up with a list of variables in it that stops me from clicking on the type that i wanted to below it. i don't want any help typing what i type.
Tools -> Options... Text-editor -> All Languages, then turn of "auto list members", "parameter information" and "automatic brace completion" and that should disable most of it. You can still trigger the autocompletion with an explicit hotkey, though I forgot what the default is.
Preferred pronouns would be "it/it" because according to this country, I'm a piece of human trash.

Mr Entertainment

Topic Starter

12335 posts since 30 Apr, 2002 from i might peeramid

Post Fri Nov 26, 2021 11:07 am

everyone's been very nice, six pages in, me coming here and asking .. daft things like this. i remember automatic brace completion, it's a sensible appellation, the whole process leaves me gibbering in public about how i tried to do it.

ah well, another day. yesterday i got my operator overloading to work, but then it wouldn't concatenate eg. a + b + c, i had to write everything one op at a time like a = a + b, then a = a + c, by the end of the evening i scrapped the bastard and wrote it C style. i think i didn't have enough consts. borland was always friendly and nice and worked easily. falling on my face for retard stuff like performing a class function.. well, it takes a lifetime for it to feel comfortable.

"nobody knows what petzold does when he's got you all alone."

just to add more pointless noise,
the other day i observed the phrase "dynamical systems" which of course is an affront to the english language, like people who say "occultic", but apparently mathematicians are well comfortable saying wrong things. i forget exactly what term i ended up looking at but it seems to me that what we do in audio dsp is a subset of a larger field of mathematics, in the same way that geometry is a subset of topology though "historically distinct".

i only mention this because i find interesting things people have been doing for a long time that concern moving coordinates that have been entirely ignored for their aural synthesis applications. at this time i find the concern with audio programmers for "audio specific" procedures (addressing aliasing) to be comparatively useless compared to placing audio dsp within a larger scope where people can start thinking of signal operations as "moving stuff around" and then make more interesting synthesizers.

i wish i could remember the odd word used to indicate the scope of mathematics (something i found after "symplectic manifolds" but i'm not knowledgeable enough to appreciate such discretisations only to see they may fit what i'm already doing), as it would make this more meaningful, but i don't.
you come and go, you come and go. amitabha neither a follower nor a leader be tagore "where roads are made i lose my way" where there is certainty, consideration is absent.

KVRAF
6579 posts since 12 Feb, 2006 from Helsinki, Finland

Post Fri Nov 26, 2021 12:13 pm

xoxos wrote:
Fri Nov 26, 2021 11:07 am
everyone's been very nice, six pages in, me coming here and asking .. daft things like this. i remember automatic brace completion, it's a sensible appellation, the whole process leaves me gibbering in public about how i tried to do it.
Well, I'm not a huge fan of "smart" editor features either. Brace completion around selection is fine with me (ie. select something, hit open bracket, editor brackets the selected part), but just about anything else just gets in the way. I don't even use "smart" auto-indent anymore, since I find it easier when the editor just indents every newline to the same level as the previous (non-empty) line and if I want something else I can hit tab or backspace manually.
ah well, another day. yesterday i got my operator overloading to work, but then it wouldn't concatenate eg. a + b + c, i had to write everything one op at a time like a = a + b, then a = a + c, by the end of the evening i scrapped the bastard and wrote it C style.
Are the different types involved? For example, if you have an operator overload between "vector" and "float" then you'll typically want another between "float" and "vector" 'cos the overloads aren't commutative, so the compilation will fail if the types end up in wrong order, even if it's a situation where mathematically it doesn't matter. Usually you'd also mark any methods "const" (goes between parameter list and method body), but not sure if that can actually cause this to fail.
Preferred pronouns would be "it/it" because according to this country, I'm a piece of human trash.

User avatar
KVRian
939 posts since 31 Dec, 2008

Post Fri Nov 26, 2021 12:24 pm

xoxos wrote:
Fri Nov 26, 2021 11:07 am
just to add more pointless noise,
I actually think it's fun to have such random free talk with developers regardless. There is no reason why programmers should always be robotic about each and every thing they say. A place to just shout and complain with good or no good reason.

Girls do it all the time, talk for the purpose of talk. I used to think thats pointless, heh think again.

Mr Entertainment

Topic Starter

12335 posts since 30 Apr, 2002 from i might peeramid

Post Fri Nov 26, 2021 2:52 pm

oscillator.png
very first go :)

nope, same object. teh fails.
You do not have the required permissions to view the files attached to this post.
you come and go, you come and go. amitabha neither a follower nor a leader be tagore "where roads are made i lose my way" where there is certainty, consideration is absent.

Mr Entertainment

Topic Starter

12335 posts since 30 Apr, 2002 from i might peeramid

Post Fri Nov 26, 2021 3:57 pm

oscillator2.png
You do not have the required permissions to view the files attached to this post.
you come and go, you come and go. amitabha neither a follower nor a leader be tagore "where roads are made i lose my way" where there is certainty, consideration is absent.

Return to “DSP and Plug-in Development”