/* * $Id: Timer.java,v 1.1 2001/05/11 15:00:49 ChoK Exp $ * * Copyright 2001 Kenta Cho. All rights reserved. */ package jp.gr.java_conf.abagames.util; /** * Timer. * * @version $Revision: 1.1 $ */ public class Timer implements Runnable, ITimer { private int duration; private ITime myITime; private Thread myThread; private LoopThread loopThread; private boolean loopf = true; public Timer(ITime aITime) { myITime = aITime; } long nextMills; long nw; public void run() { while ( loopf ) { try { Thread.sleep(duration); } catch (InterruptedException e) {} myITime.notifyFrame(); } } public void activate(int aDuration, boolean priorityf) { duration = aDuration; myThread = new Thread(this); myThread.start(); loopThread = new LoopThread(myITime); loopThread.activate(priorityf); } public void deactivate() { loopf = false; loopThread.deactivate(); } public void terminate() { deactivate(); } public final void setDuration(int duration) { this.duration = duration; } }