pvo@sapphire.oce.orst.edu (Paul O'Neill) (06/06/90)
I've just finished my first excursion into Sunview programming. Fun. Easy. Impressed the boss. BUT--perhaps a window wiz can help with this unexplained problem. I started with a terminal-driven image processing program that does near-real-time stuff to an input of RS-170 video. I built one panel (with lots of sliders, choices, etc.) in one window in one frame. After startingn window_main_loop(frame); "interupt-driven" type procedures control what the program is doing. Everything worked as expected, except that the image-processor embedded in my 4/110 (SunOS 4.0.1 if you care) was being told when to grab frames and massage them in an "interupt-driven" sort of way by SIGALARMs generated by: ualarm(usec_remaining, usec_interval); and its associated: signal(SIGALRM, takedata) THE PROBLEM: If the cursor is removed from the Sunview panel, or the panel is closed, the SIGALARMs stop and no more data is grabbed or analyzed. Returning to the panel doesn't restart the SIGALARMs. Any ideas? Thanks. Paul O'Neill pvo@oce.orst.edu Coastal Imaging Lab OSU--Oceanography Corvallis, OR 97331 503-737-3251
dgehringer@sun.com (Doug Gehringer) (06/07/90)
In article <8553@brazos.Rice.edu> pvo@sapphire.oce.orst.edu (Paul O'Neill) writes: >THE PROBLEM: > >If the cursor is removed from the Sunview panel, or the panel is closed, >the SIGALARMs stop and no more data is grabbed or analyzed. Returning to >the panel doesn't restart the SIGALARMs. Are you using the notifier to handle your alarms? See section 17 of the Sunview Programmers Guide (in the 4.0 docs, around pg. 291, in 4.1, pg. 265). You can't use timers and signals directly, you need to send them through the notifer. - Doug Gehringer, Graphics Software Sun Microsystems, Mail stop 21-04 (415) 336-6472 or 960-1300 dgehringer@sun.COM