Am Sonntag, den 24.05.2009, 05:36 -0700 schrieb James Warden:
Hi Hermann,
Great, I tested it against jack1 and jack2, and it is working fine now :)
I looked at your additions. I have a couple of comments, nothing you should consider as
important or critical:
- guitarix.cpp, line 529-530:
I think any jack function will check if the client pointer passed as an argument is valid
so it is safe to call jack_get_buffer_size before checking the client pointer validity.
However, I have the habit of checking pointer validity before passing it to a 3rd party
function. You never know, when the 3rd party lib is closed-source and its API badly
documented, you may get crashes. It's not the case here so you can keep it like
that.
- guitarix.cpp, line 570-579: I would create a local function for this block of code
because you call it in some other place as well. You will have only one place to maintain
and gain more control on the variation of gNumOutChans. Turn it into:
if (merke == 0)
{
gtx_unregister_ports();
}
- german looking variable names: I have nothing against german, even learned it at school
:D but it's open-source, not open-german-source ;)
- I would also formalize a bit more what is guitarix's code so someone can tell right
away which is your code and which is not. For example, start all your home made standalone
functions with gtx_ (for GuiTariX)
For home made classes, GtxSomeClass
For class members of home made classes: fGtxSomeMember
For class methods of home made classes: gtxSomeMethod()
This will become much more readable.
You don't have to though, and cleaning up is a bit of a tedious job ... but if it is
to grow as you add more functionality, keep this in mind :)
Thanks for your work, I heard that you had to spend quite some time last night to make my
patch fit in for jack1 ;)
Tschuess :)
J.
Hello James
It have change again,the whole porthandling was a "dirty workaround" for
a proplem depper in the source. Fons give me some usefull hints to open
my mind and I be able to find and clear it. So the whole port
un/register stuff is gone, now guitarix only register ports when they
realy used (when jconv is run). A side effect from this, there is also
no different experience any more between jackd or jackdmp.
Okay, I will replace "merke" with "jcio" :D
bye,bye
hermann