/[enigma]/enigma/src/enigma.cc
ViewVC logotype

Diff of /enigma/src/enigma.cc

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.15 by reallysoft, Fri May 9 10:50:46 2003 UTC revision 1.16 by dheck, Fri May 9 16:35:45 2003 UTC
# Line 309  namespace enigma Line 309  namespace enigma
309  }  }
310    
311  Alarm::Alarm(TimeHandler* h, double i, bool r)  Alarm::Alarm(TimeHandler* h, double i, bool r)
312      : handler(h), interval(i), timeleft(i), repeatp(r)  : handler(h), interval(i), timeleft(i), repeatp(r)
313  {}  {}
314    
315  void  void
316  Alarm::tick(double dtime)  Alarm::tick(double dtime)
317  {  {
318      timeleft -= dtime;      timeleft -= dtime;
319      while (timeleft <= 0) {      if (repeatp) {
320          handler->alarm();          while (timeleft <= 0) {
321          if (repeatp) {              handler->alarm();
322              // better loose some alarm()s than risk unwanted removal of alarm              // better loose some alarm()s than risk unwanted removal of alarm
323              while (timeleft <= 0) {  //             while (timeleft <= 0) {
324                  timeleft += interval;              timeleft += interval;
325              }  //             }
326          }          }
327      }      }
328  }  }
329    
330  Timer::Timer()  Timer::Timer() : rep(*new Rep)
     : rep(*new Rep)  
331  {}  {}
332    
333  Timer::~Timer()  Timer::~Timer() {
 {  
334      delete &rep;      delete &rep;
335  }  }
336    

Legend:
Removed from v.1.15  
changed lines
  Added in v.1.16

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26