UC Berkeley Group for User Interface Research
Updated November 17, 2000

edu.berkeley.guir.lib.satin.interpreter.rubine
Class RubineInterpreter

java.lang.Object
  |
  +--edu.berkeley.guir.lib.satin.interpreter.InterpreterImpl
        |
        +--edu.berkeley.guir.lib.satin.interpreter.rubine.RubineInterpreter
All Implemented Interfaces:
Cloneable, EventFilter, EventListener, Interpreter, SatinConstants, SatinEventFilter, Serializable, StrokeEventFilter, StrokeListener
Direct Known Subclasses:
GateInterpreter, GraffitiInterpreter

public abstract class RubineInterpreter
extends InterpreterImpl

Contains Rubine's recognizer. Subclass this to do something useful. This implementation also automatically caches existing recognizers.

This software is distributed under the Berkeley Software License.

 Revisions:  - SATIN-v1.0-1.0.0, Aug 02 1999, JH
               Created class
             - SATIN-v2.1-1.0.0, Aug 11 2000, JH
               Touched for SATIN release
 

Since:
JDK 1.2
Version:
SATIN-v2.1-1.0.0, Aug 11 2000
Author:
Jason Hong ( jasonh@cs.berkeley.edu )
See Also:
Serialized Form

Inner classes inherited from class edu.berkeley.guir.lib.satin.SatinConstants
SatinConstants.ObjectPoolAffineTransform, SatinConstants.ObjectPoolPoint2D, SatinConstants.ObjectPoolPolygon2D, SatinConstants.ObjectPoolRectangle2D, SatinConstants.ObjectPoolStringBuffer, SatinConstants.UniqueAffineTransform, SatinConstants.UniquePoint2D, SatinConstants.UniquePolygon2D, SatinConstants.UniqueRectangle2D
 
Field Summary
static String RUBINE_DATA_DIRECTORY_DEFAULT
           
static String RUBINE_DATA_DIRECTORY_PROPERTY
          The directory of where to load up interpreters from.
static String RUBINE_DATA_URL_DEFAULT
          The default value for where the Rubine Recognition data is stored, overridden by whatever value is specified in the properties file.
static String RUBINE_DATA_URL_PROPERTY
          The name of the property that specifies where the Rubine Recognition data is stored on the network.
 
Fields inherited from interface edu.berkeley.guir.lib.satin.SatinConstants
ABOVE, ALL, BAR, BELOW, clipboard, clprops, cmdqueue, cmdsubsys, CONTAINEDBY, CONTAINS, COORD_ABS, COORD_LOCAL, COORD_REL, DAMAGE_LATER, DAMAGE_NOW, DEBUG_GRAPHICS_OFFSET, DEBUG_STYLE_FILE, DEBUG_STYLE_GPROPERTY, DEEP, DEFAULT_POINT2D_POOL_SIZE, DEFAULT_POLYGON2D_POOL_SIZE, DEFAULT_RECTANGLE_POOL_SIZE, DEFAULT_REPAINT_THRESHOLD, DEFAULT_SELECT_THRESHOLD, DEFAULT_STRINGBUFFER_POOL_SIZE, DEFAULT_TRANSFORM_POOL_SIZE, DIR_CENTER, DIR_DOWN, DIR_DOWN_LEFT, DIR_DOWN_RIGHT, DIR_LEFT, DIR_RIGHT, DIR_UP, DIR_UP_LEFT, DIR_UP_RIGHT, FILTER_THRESHOLD, FIRST, FLOATING_PT_TOLERANCE, glprops, INTERSECTS, KEY_STYLE_DASHARRAY, KEY_STYLE_DASHPHASE, KEY_STYLE_DRAWCOLOR, KEY_STYLE_DRAWFONT, KEY_STYLE_DRAWTRANSPARENCY, KEY_STYLE_ENDCAP, KEY_STYLE_FILLCOLOR, KEY_STYLE_FILLTRANSPARENCY, KEY_STYLE_LINEJOIN, KEY_STYLE_LINEWIDTH, KEY_STYLE_MITERLIMIT, NEAR, NOTIFY_BOUNDS, NOTIFY_LAYER, NOTIFY_LOCATION, NOTIFY_STYLE, NOTIFY_TRANSFORM, poolPoints, poolPolys, poolRects, poolStrbuf, poolTx, rand, SATIN_DATA_DIRECTORY_DEFAULT, SATIN_DATA_DIRECTORY_GPROPERTY, SATIN_PROPERTIES_FILENAME, SHALLOW
 
Constructor Summary
RubineInterpreter(String strFileName)
          Constructor to create a Rubine Interpreter.
 
Method Summary
 RubineInterpreter clone(RubineInterpreter intrp)
           
 double getConfidence()
          Get the confidence level for gesture recognition, below which we will ignore.
 String getFileName()
           
 Recognizer getRecognizer()
           
 void handleNewStroke(NewStrokeEvent evt)
          Does nothing.
 void handleSingleStroke(SingleStrokeEvent evt)
          First classifies the stroke using Rubine's Recognizer, and then delegates to handleSingleStroke(SingleStrokeEvent, Classification) if the value is above the confidence threshold (as set by setConfidence(double)).
protected abstract  void handleSingleStroke(SingleStrokeEvent evt, Classification c)
          Do something given the classification.
 void handleUpdateStroke(UpdateStrokeEvent evt)
          Does nothing.
 void setConfidence(double val)
          Set the confidence level for gesture recognition, below which we will ignore.
 
Methods inherited from class edu.berkeley.guir.lib.satin.interpreter.InterpreterImpl
clone, clone, getAttachedGraphicalObject, getName, isConsumedAccepted, isEnabled, isEventAccepted, isEventAccepted, isLeftButtonAccepted, isMiddleButtonAccepted, isRightButtonAccepted, setAcceptConsumed, setAcceptLeftButton, setAcceptMiddleButton, setAcceptRightButton, setAttachedGraphicalObject, setEnabled, setName, toString
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

RUBINE_DATA_DIRECTORY_PROPERTY

public static final String RUBINE_DATA_DIRECTORY_PROPERTY
The directory of where to load up interpreters from.

RUBINE_DATA_DIRECTORY_DEFAULT

public static final String RUBINE_DATA_DIRECTORY_DEFAULT

RUBINE_DATA_URL_PROPERTY

public static final String RUBINE_DATA_URL_PROPERTY
The name of the property that specifies where the Rubine Recognition data is stored on the network.

RUBINE_DATA_URL_DEFAULT

public static final String RUBINE_DATA_URL_DEFAULT
The default value for where the Rubine Recognition data is stored, overridden by whatever value is specified in the properties file. This is a URL.
Constructor Detail

RubineInterpreter

public RubineInterpreter(String strFileName)
Constructor to create a Rubine Interpreter.
Method Detail

getRecognizer

public Recognizer getRecognizer()

getConfidence

public double getConfidence()
Get the confidence level for gesture recognition, below which we will ignore. By default, the confidence level is 0.90.

getFileName

public String getFileName()

setConfidence

public void setConfidence(double val)
Set the confidence level for gesture recognition, below which we will ignore. By default, the confidence level is 0.80.

handleNewStroke

public void handleNewStroke(NewStrokeEvent evt)
Does nothing.
Overrides:
handleNewStroke in class InterpreterImpl
Following copied from interface: edu.berkeley.guir.lib.satin.event.StrokeListener
Parameters:
evt - is the event to handle.

handleUpdateStroke

public void handleUpdateStroke(UpdateStrokeEvent evt)
Does nothing.
Overrides:
handleUpdateStroke in class InterpreterImpl
Following copied from interface: edu.berkeley.guir.lib.satin.event.StrokeListener
See Also:
StrokeListener.handleNewStroke(NewStrokeEvent).

handleSingleStroke

public void handleSingleStroke(SingleStrokeEvent evt)
First classifies the stroke using Rubine's Recognizer, and then delegates to handleSingleStroke(SingleStrokeEvent, Classification) if the value is above the confidence threshold (as set by setConfidence(double)).
Overrides:
handleSingleStroke in class InterpreterImpl
Following copied from interface: edu.berkeley.guir.lib.satin.event.StrokeListener
See Also:
StrokeListener.handleNewStroke(NewStrokeEvent).

handleSingleStroke

protected abstract void handleSingleStroke(SingleStrokeEvent evt,
                                           Classification c)
Do something given the classification.

clone

public RubineInterpreter clone(RubineInterpreter intrp)

Copyright Information