olilarkin / wdl-ol

Enhanced version of Cockos' iPlug - A simple-to-use C++ framework for developing cross platform audio plugins and targeting multiple plugin APIs with the same code. VST / VST3 / Audiounit / RTAS / AAX (Native) formats supported. NOTE: THIS IS OBSOLETE, PLEASE SEE IPLUG2:
https://github.com/iplug2
936 stars 187 forks source link

Links to API documentation? #79

Closed Pomax closed 6 years ago

Pomax commented 6 years ago

Heya, I ran through Martin Finke's tutorial on wdl-ol and after digging through it and having some ideas on "what to do next" I can't really find any links that give the APIs that wdl-ol supports. For instance, if I want to add CC learning to a plugin control, I'm not sure what calls exist that let me spawn a right-click menu that I can populate with options ("link to CC", "forget link", etc).

Is it possible to add links to the readme that point people to the APIs that wdl-ol supports, in addition to the links to the cockos wdl page and the wdl-ol discussion forum?

olilarkin commented 6 years ago

A new version is coming soon with more documentation

Pomax commented 6 years ago

ooh, looking forward to it. It's been literally decades since I last did anything in C++, so being able to hack on some VST effects and synths is proving incredibly enjoyable.

QrchackOfficial commented 6 years ago

@olilarkin this is great news! Do we have an ETA?

olilarkin commented 6 years ago

not enough hours in the day at the moment, but much work is done. I just set up a Patreon, if you would like to support my efforts

https://www.patreon.com/posts/16142537

QrchackOfficial commented 6 years ago

Hmm can't really do it this way (gotta keep the uni budget in check), but let me know whenever you could use some help with development, would love to up my low-level skills

olilarkin commented 6 years ago

I could with some help with development since about 10 years ago!

olilarkin commented 6 years ago

I am also a student. if you think it needs documentation, roll up your sleeves and do it yourself! that's what I've done over many years

QrchackOfficial commented 6 years ago

That's certainly not a bad starting point, shoot the easy fixes at me and we'll see what can be done

QrchackOfficial commented 6 years ago

Not too focused on documentation (although I do think it's needed further down the road), high-DPI, UI scaling, CMake support and all the new C++ goodness sounds fun as well

QrchackOfficial commented 6 years ago

I suppose I should be on 4d0b2bba9a7475ec3a840f8641f9b21da2b1a3a6?

olilarkin commented 6 years ago

this is where the new work is at, +some things I haven't merged in cleanly yet

https://github.com/olilarkin/wdl-ol/tree/iplugquake

if someone wanted to fork it and start setting it up for cmake that would be much appreciated (a few people have done stuff already but I can't merge with my latest changes).

decent pull requests are a great way to contribute to the project (although I haven't been able to merge many nice things people have sent over the years due to time limitations).

QrchackOfficial commented 6 years ago

Got it. Are we able to compile on MSVC 2017 currently or should I switch to 2015 for now?

olilarkin commented 6 years ago

I will try and make sure vs2017 is compiling today/next few days. I develop on macOS in the first instance so sometimes windows support breaks.

some reading to do here (start of some documentation): https://github.com/olilarkin/wdl-ol/blob/iplugquake/IPlug2-doc.md

QrchackOfficial commented 6 years ago

Is it a good time to work on documentation? No significant API changes expected? I'd avoid writing documentation if stuff's about to change in a month or two.

olilarkin commented 6 years ago

there will be some. the kind of documentation that would be really helpful as if you could just get some placeholder stuff inline for a nice doxygen site. I would like to properly comment IPlugBase, IParam, IControl and IGraphics, alse IMidimsg, IRect. I haven't had time to really figure out doxygen, so if you could do that, and do pull requests that merge cleanly with my latest IPlug even if you don't understand the apis yourself - that make any sense?

olilarkin commented 6 years ago

I can fill in the details

QrchackOfficial commented 6 years ago

I guess. I didn't try Doxygen yet, but I have played around with Sandcastle, which is a .NET-specific tool. I'll have a look around how Doxygen works and see how we could set it up to generate some documentation. Do we want to just autogenerate, or do we need hand-crafted pages as well? I think some beginner tutorials should probably be there as well

olilarkin commented 6 years ago

that would be great, some methods are self-explanatory but it would be really good to have proper documentation of arguments etc., although this will bloat the code a bit. I plan to do some tutorials as well

QrchackOfficial commented 6 years ago

What's the current state of documentation? Do we have fairly documented arguments etc. or not really?

olilarkin commented 6 years ago

if you installed doxygen navigate to the IPlug folder and run doxygen there

https://github.com/olilarkin/wdl-ol/blob/iplugquake/IPlug/Doxyfile

you should see the status. there is no proper doxygen markup, just the odd comment here and there. have a look at the JUCE source code for example of where I'd like to get to

olilarkin commented 6 years ago

started work here: https://github.com/olilarkin/wdl-ol/commit/e6c970e7f90796b7033c6ed365bc5874a87d20a8

olilarkin commented 6 years ago

Closing this issue because basically it just needs to be done. If anyone wants to help be my guest! Started the work

Pomax commented 6 years ago

It would be useful to file a new issue for that "doing the work" part then, with a "help wanted" label to encourage people to help out on it =)

(work without a corresponding issue is work contributors can't discover needs doing)

QrchackOfficial commented 6 years ago

Good point @Pomax