New recruit. Has questions


#1

Hey! (my Fisrt Psot!)

I’ve been looking through any and all examples and demos and I’m slowly starting to get a handle on what is going on. But I have a few questions.

o___I seem to detect a certain redundancy with regards to the program flow. Is this how it flows?:

  1. The macro runs the application class
  2. which instantiates/runs the window class
  3. which calls a function
  4. that instantiates a main component
    … which holds my program.

Its confusing and hurts my head. :frowning:

But I guess the idea is, and I’m realising this as a write, to make it so that I only really have to think about what goes on in one component, aside from the “appSettings”.
Thanks I think I get it now.

o___ There is code that actually do stuff in header files. I though “they” would show up and stab you in the eye if you did that? Am I wrong or are the men in black just busy at the moment?

o___ I want to get into making VST sooner or later, and I am similarly confused with regards to how that flow works. What happens in what file. Is there some more info somewhere, forum threads of exceptional quality or maybe example code of astonishing clarity and instructiveness?

o___ I’m using code::blocks with the VC 2003 toolkit compiler and I get the following warnings:

LINK : warning LNK4089: all references to 'ADVAPI32.dll' discarded by /OPT:REF LINK : warning LNK4089: all references to 'RPCRT4.dll' discarded by /OPT:REF
Is this a real warning or just the linker asserting its presence?

Anyway. Happy to be here. Juce seems to be a piece of solid awesome, (like Chuck Norris).


#2

i presume you’ve been trying the tutorial! i say that because the ‘appSettings’ thing is something that i put in myself to make the program configuration as simple as possible. with the tutorial files you don’t need to edit the ApplicationStartup.cpp file. If you made a more sophisticated application, you may find it useful to configure things differently, and write your own version. For learning though, it is fine to just assume that all your program behaviour exists in a Component. I’ve made lots of programs and plugins and never ventured into a different way of doing things yet!

with regards to having function definitions in header files, generally you’ll probably put your definitions in a .cpp file, and just declare the class in the header. For tutorial purposes, there’s little point in separating them - that gives you two files to edit just to add something to one class! Generally it’s nicer to have separate files, but don’t be afraid to have a fully defined class in a header file, especially if it’s only a small one. The main reason against it is for compilation time! The other reason is that you don’t want to have too many #includes in a header, incase it causes clashes along the line.


#3

Nothing to worry about, it’s just optimizing out stuff that’s not needed.

Oh, and welcome aboard!


#4

Cheers!

Is’nt it a bit wonky that it warns you about optimizations. It should say FYI or something. (Whats next? “WARNING, Compilation Done: 0 errors!!!”:D)

Yeah, I was looking at your code, haydxn. Good job with the PDF and all. Will you get into VSTs and stuff later on?

I guess what confuses me with this stuff is that I never get to see the eventloop or the entry point or anything. I tend to think about code in hierarchies, so I sort of need a root before I see how it fits together.


#5

yup, vsts will be covered :slight_smile:


#6

Sweet!


#7

The reason it warns about not including some libraries is that, even if a library is not used, sometimes you still want it loaded as it may still do things to the program, ergo, it warns you about that. You can of course pragma disable that warning if you want.


#8