Valery, if after six years of development a single shot timer doesn't work, I have no clue what to do. Perhaps it is better I shut up too. /Anton http://www.smartquant.com ----- Original Message ----- From: "Valeri Fine" <fine@bnl.gov> To: "Anton Fokin" <anton.fokin@smartquant.com>; "roottalk" <roottalk@pcroot.cern.ch> Sent: Monday, March 18, 2002 9:56 PM Subject: Re: [ROOT] Another bug in TTimer on windows > ----- Original Message ----- > From: "Anton Fokin" <anton.fokin@smartquant.com> > To: "Valeri Fine" <fine@bnl.gov>; "roottalk" <roottalk@pcroot.cern.ch> > Sent: Monday, March 18, 2002 1:06 PM > Subject: Re: [ROOT] Another bug in TTimer on windows > > > > Valery, > > > > > Anton, why each time one has to ask you one and the same thing > > > to be provided ? > > > > > > - A simple test or example to reproduce the problem. > > > - If you have found a problem reason and fix it then the correction > > > and test are appreciated. > > > > > > Can you memorize that ;-) > > > > > > NOT AT ALL AND I AM NOT GOING TO SIMPLY BACAUSE THIS IS NOT MY PROJECT! > > (check out ROOT copyrights) > > > > can you memorize this :) > > > > PS. Although if I can find a bug quickly, etc. I have no probs to > > help/report. > > > > I have asked a number of times : If you DO NOT SUPPORT ROOT ON WINDOWS tell > > me and others please, because people rely (read: depend) on you. > > I believe you know the answer and I think ROOT Web site does provide a clear answer. > "(check out ROOT copyrights)" > > What you are saying I must shut up and do not communicate ROOTTALK for free ? > > Ok, I agree I will not reply your questions for free anymore. > > Good luck, Valeri > > > > > > > We are talking about BACKGROUNDS of ROOT framework. A single shot timer. XXI > > century. Whatta f@#$. > > > > Cheers, > > Anton > > > > http://www.smartquant.com > > > > > > ----- Original Message ----- > > From: "Valeri Fine" <fine@bnl.gov> > > To: "Anton Fokin" <anton.fokin@smartquant.com>; "roottalk" > > <roottalk@pcroot.cern.ch> > > Sent: Monday, March 18, 2002 6:41 PM > > Subject: Re: [ROOT] Another bug in TTimer on windows > > > > > > > > > > ----- Original Message ----- > > > From: "Anton Fokin" <anton.fokin@smartquant.com> > > > To: "roottalk" <roottalk@pcroot.cern.ch> > > > Sent: Monday, March 18, 2002 6:31 AM > > > Subject: [ROOT] Another bug in TTimer on windows > > > > > > > > > > Hello, > > > > > > > > single shot async mode doesn't work under windows (dont know about > > Linux) > > > > > > > > This below doesn't trigger timer (HandleTimer) at all > > > > > > > > fTimer = new TTimer(this, 1000, kFALSE); > > > > fTimer->Start(1000, kTRUE); > > > > > > > > Although this > > > > > > > > fTimer = new TTimer(this, 1000, kFALSE); > > > > fTimer->Start(1000); > > > > > > > > does (constantly). > > > > > > Anton, why each time one has to ask you one and the same thing > > > to be provided ? > > > > > > - A simple test or example to reproduce the problem. > > > - If you have found a problem reason and fix it then the correction > > > and test are appreciated. > > > > > > Can you memorize that ;-) > > > > > > Coming back to the problem you reported: > > > > > > I did not know about Start method. > > > I've looked it up. From the first glance it is NOT correct. > > > http://root.cern.ch/root/html/src/TTimer.cxx.html#TTimer:Start > > > > > > void TTimer::Start(Int_t milliSec, Bool_t singleShot) > > > { > > > if (milliSec >= 0) > > > SetTime(milliSec); > > > Reset(); > > > TurnOn(); > > > if (singleShot) > > > Connect(this, "Timeout()", "TTimer", this, "TurnOff()"); > > > else > > > Disconnect(this, "Timeout()", this, "TurnOff()"); > > > } > > > > > > My guess the methods Connect/Disconnect may have been called too late. > > > To avoid the problem I would recommend to change the order of the > > methods above, namely: > > > > > > void TTimer::Start(Int_t milliSec, Bool_t singleShot) > > > { > > > if (milliSec >= 0) > > > SetTime(milliSec); > > > Reset(); > > > // TurnOn(); // move this statement > > > if (singleShot) > > > Connect(this, "Timeout()", "TTimer", this, "TurnOff()"); > > > else > > > Disconnect(this, "Timeout()", this, "TurnOff()"); > > > TurnOn(); // New position of the method > > > } > > > > > > I mean FIRST the signal/slot connection must be established and THEN the > > timer > > > should be fired but ... TurnOn > > > http://root.cern.ch/root/html/src/TTimer.cxx.html#TTimer:TurnOn > > > calls > > > > > > Disconnect(this, "Timeout()", this, "TurnOff()"); > > > > > > ??? That is NOT what we want for the single shot case. > > > > > > I wonder if one can provide the timeout that is long enough to get > > Signal/Slot > > > connection made established then everything should (?) work properly with > > no change. > > > > > > Can one check this ? > > > Thank you > > > Best regards, Valeri > > > > > > > > > > > /Anton > > > > > > > > http://www.smartquant.com > > > > > > > > > > > > > > > > > > > > > > > > > >
This archive was generated by hypermail 2b29 : Sat Jan 04 2003 - 23:50:46 MET