From: <dz...@gm...> - 2006-03-03 09:30:30
|
Hello List, I want to generate multiple plot windows with plplot (5.5.3, compiled with --with p_threads ) on Debian testing. What I have tried is to use pthreads, were NUM_THREAD threads are invoked. In each thread a code like plssub(1,2); plsdev("xwin"); plinit(); /*plot something*/ ... //some pl* commands ... plend(); is executed. I also tried the c++ version, where in each thread a new instance of an object like in x01cc.cc is created, including a plstream member *pls and a plot() routine in its constructor: pls = new plstream(); pls->ssub(1,1); // plplot initialization pls->sdev("xwin"); /* device type */ pls->init(); //some pl* commands I expected, that a new window is created when i start new thread. This is true, but they don't react (no resize, ...) I think, using threads is too complicated, it might be easier. Can anybody give some hints? (Where something like "refresh" needs to be placed?) Thank you, Dirk -- "Feel free" mit GMX FreeMail! Monat für Monat 10 FreeSMS inklusive! http://www.gmx.net |
From: Arjen M. <arj...@wl...> - 2006-03-03 12:24:49
|
dz...@gm... wrote: > > Hello List, > I want to generate multiple plot windows with plplot (5.5.3, compiled with > --with p_threads ) on Debian testing. > I use PLplot in a plot program that can display multiple windows with plots. I do not use threads to achieve responsiveness for all windows: that is taken care of by the event loop. Instead I simply draw the plot via PLplot and leave the event processing to the GUI library. I am not sure how you would proceed in a program that does not have a GUI component to take care of the event loop, but instead would rely on the presentation graphics library (in this case PLplot) for dealing with them. PLplot does it via the implementation of pleop() in the individual drivers. Regards, Arjen |