Hi, Fons, I am meeting several problems in ROOT: 1) problem with IdleTimer in TApplication (for ROOT2.00/09) Yes, I can invoke TROOT::Idle to enable or disable system Idle Handling. But gROOT.Idle(0,"printf(\"aap\\n\");") also invoke RemoveIdleTimer of Application to disable system Idle Handling, in which fIdleTimer and fIdleCommand are deleted. //____________________________________________________________________________ void TApplication::RemoveIdleTimer() { // Remove idle timer. Normally called via TROOT::Idle(0). if (fIdleTimer) { // timers are removed from the gSystem timer list by their dtor SafeDelete(fIdleTimer); delete [] fIdleCommand; } } In case I only want to toggle system Idle Handling after SetIdleTimer, I prefer to using StartIdleing and StopIdleing in which fIdleTimer and fIdleCommand would not be deleted. In the source code, it reads, //____________________________________________________________________________ void TApplication::StartIdleing() { // Call when system starts idleing. if (fIdleTimer) { fIdleTimer->Reset(); gSystem->AddTimer(fIdleTimer); } } //____________________________________________________________________________ void TApplication::StopIdleing() { // Call when system stops idleing. if (fIdleTimer) gSystem->RemoveTimer(fIdleTimer); } But it does not work as expected in the source code. 2) Problem with TMarker3DBox::Draw (for ROOT2.00/09) When the size of TMarker3DBox is quite large, its position in drawing is a little shifted, the larger its size is, the more shift is. 3) Problem with rootcint at Linux for ROOT2.00/10 and 11 It always leads to "Segmentation fault" when invoking rootcint to generate dictionary. The example I tried is "rootcint -f EventCint.cxx -c Event.h LinkDef.h" which is in $ROOTSYS/test. The systems I tested are RedHat4.1 and S.u.S.E-5.3 Thanks for attention --Shuwei On Fri, 28 Aug 1998, Fons Rademakers wrote: > Hi ye, > > use the idle timer via the TROOT::Idle() interface (and see there also > how the StartIdleing() and StopIdleing() should be used). Example: > > gROOT.Idle(1,"printf(\"aap\\n\");") > > to disable: > > gROOT.Idle(0,"printf(\"aap\\n\");") > > Cheers, Fons. > > > Ye Shuwei wrote: > > > > > > In addition, I found that TApplication::StartIdleing() and StopIdleing() > > do not work under interactive ROOT, I have not checked for batch mode. So I > > have to use RemoveIdleTimer each time when I want to stop the IdleTimer, and > > use SetIdleTimer to restart IdleTimer. I checked the corresponding source > > code, it should work. > > > > Best regards --Shuwei > > -- > Org: CERN, European Laboratory for Particle Physics. > Mail: 1211 Geneve 23, Switzerland Phone: +41 22 7679248 > E-Mail: Fons.Rademakers@cern.ch Fax: +41 22 7677910 >
This archive was generated by hypermail 2b29 : Tue Jan 04 2000 - 00:34:37 MET