// GpsSimulator.java
//
// Copyright (C) 1998 Henrik Bjorkman. 
// May be distributed under GNU General public licence.
//
//
// Credits
//
// SUNs jdk 1.1.6 was used when developing this program.
//
//
//
// History
//
// 1998-10-31 Created by Henrik Bjorkman


//package se.beod.henrik.nav;

import java.io.*;
import java.util.Date;
import java.util.Calendar;
import java.awt.*;
import java.text.*;
import se.beod.henrik.nav.*;


public class KeyInput extends Thread
{
  Object caller;
  int key=-1;

  static void debug(String s)
  {
    System.out.println("KeyInput: " + s);
  }

  public KeyInput(Object caller)
  {
    this.caller=caller;
    this.start();
  }

  public synchronized int getKey()
  {
    int k=key;
    key=-1;
    return(k);
  }

  public synchronized void setKey(int key)
  {
    this.key=key;
  }

  public void run() 
  {
    //BufferedReader in=new BufferedReader(new InputStreamReader(System.in));

    debug("start");

    for(;;)
    {
      try 
      {
        int key=System.in.read();
        if (key>=' ') 
        {
          setKey(key);
          if (caller!=null) {synchronized (caller) {caller.notify();}}
        }
      }
      catch (IOException e) {debug(""+e);}
    }
  }
}


