Hi Miller, hi all,
During my tests with the new version i realized that in s_audio.c, function sys_get_audio_apis the variable n is not intialized Also, in s_audio_pa.c i can only correctly compile (for Windows) if at line 20 the equivalence is not defined for MSW.
I also realized (and that is bad for my stuff) that the widgetbehavior structure is no longer prefilled with default functions. Do you plan to do more changes here, e.g. introduce functions to inherit behavior or change only specific entries of the struct?
I merged in version 0.37 test 7 into the devel_0_37 branch of the cvs ( hope i didn't break anything... there were a lot of changes...), and also added some of my stuff from the devel_0_36 branch: - thread locks with unlocking at idle time (functions sys_lock, sys_unlock, sys_trylock) - soft quitting using the sys_quit flag of the scheduler loop (non-exported function sys_exit)
These features have proven to work realiably with my setup (under Windows) in daily work. It would be great if they could be incorporated into the mainstream PD distribution. (Miller, is already asked this, but what is the reason that exit() is used to terminate PD instead of cleanly exiting the scheduler loop using the sys_quit flag?)
best greetings, Thomas
I also realized (and that is bad for my stuff) that the widgetbehavior structure is no longer prefilled with default functions.
Oops, no, that's not true. It's just that the visualization of object boxes seems to have changed (probably only compared to 0.36). I used to change the te_binbuf member of the object structure to display a new text inside the object box. Is there a better (more portable) way to do this?
best greeetings, Thomas
Hi Thomas,
"gatoms" update themselves by filling in binbufs (in function gatom_set())... this should work.
I don't think _how_ object boxes are drawn has changed, just _when_ they get drawn, since 0.36 (but I can always be wrong.)
cheers Miller
On Sat, Aug 02, 2003 at 06:01:56PM +0200, Thomas Grill wrote:
I also realized (and that is bad for my stuff) that the widgetbehavior structure is no longer prefilled with default functions.
Oops, no, that's not true. It's just that the visualization of object boxes seems to have changed (probably only compared to 0.36). I used to change the te_binbuf member of the object structure to display a new text inside the object box. Is there a better (more portable) way to do this?
best greeetings, Thomas
PD-dev mailing list PD-dev@iem.at http://iem.at/cgi-bin/mailman/listinfo/pd-dev
On Sat, 2 Aug 2003, Thomas Grill wrote:
I merged in version 0.37 test 7 into the devel_0_37 branch of the cvs ( hope i didn't break anything... there were a lot of changes...), and also added some of my stuff from the devel_0_36 branch:
- thread locks with unlocking at idle time (functions sys_lock, sys_unlock,
sys_trylock)
- soft quitting using the sys_quit flag of the scheduler loop (non-exported
function sys_exit)
These features have proven to work realiably with my setup (under Windows) in daily work. It would be great if they could be incorporated into the mainstream PD distribution.
Thats fantastic ... :)
Thanks a lot for doing the merge. I think that threading support is very important for pd in the future. This way we hopefully get feedback on possible problems with it.
Greetings,
Guenter
Hi Thomas,
During my tests with the new version i realized that in s_audio.c, function sys_get_audio_apis the variable n is not intialized Also, in s_audio_pa.c i can only correctly compile (for Windows) if at line 20 the equivalence is not defined for MSW.
I found&fixed 'n'... as to line 20 of s_audio_pa.c, the #defines are needed only in case you're using portaudio version 18; if you've got version 19 running they shouldn't be there. I'm still compiling with version 18 for MSW. Perhaps I should make this configurable?
I merged in version 0.37 test 7 into the devel_0_37 branch of the cvs ( hope i didn't break anything... there were a lot of changes...), and also added some of my stuff from the devel_0_36 branch:
- thread locks with unlocking at idle time (functions sys_lock, sys_unlock,
sys_trylock)
- soft quitting using the sys_quit flag of the scheduler loop (non-exported
function sys_exit)
These features have proven to work realiably with my setup (under Windows) in daily work. It would be great if they could be incorporated into the mainstream PD distribution. (Miller, is already asked this, but what is the reason that exit() is used to terminate PD instead of cleanly exiting the scheduler loop using the sys_quit flag?)
I'm planning to incorporate both of these into the "final" 0.37.. trying to get the (potentially more buggy) audio and MIDI changes in first. The reason Pd calls exit instead of causing the scheduler to return is so that the result of quitting is immediate (not after the next "tick" processes, for instance.) This is probably not too important a difference, so if there are real advantages to exiting cleanly I can try it out that way. It's impossible to stop people from exiting uncleanly in other ways (task manager, for instance) so I never saw it as important to worry about that.
best greetings, Thomas
PD-dev mailing list PD-dev@iem.at http://iem.at/cgi-bin/mailman/listinfo/pd-dev
Pd calls exit instead of causing the scheduler to return is so that the result of quitting is immediate (not after the next "tick" processes, for instance.) This is probably not too important a difference, so if there
are
real advantages to exiting cleanly I can try it out that way. It's
impossible
to stop people from exiting uncleanly in other ways (task manager, for
instance)
so I never saw it as important to worry about that.
It's probably the only real reason, but an important one for me..... when the PD dynamic library is used from within another application, that is when s_entry.c is not used but replaced, this application has no control over PD exiting, which may be important for cleanup. I tried using atexit handlers but that it is too limited. I don't think that the delay of soft quitting compared to exit is ever noticeable, is it?
best greetings, Thomas