View Javadoc

1   /*
2    * @(#)$Id: HWRecogniser.java 824 2010-05-26 22:38:01Z bpuype $
3    *
4    * Author       :   Ueli Kurmann, igesture@uelikurmann.ch
5    *
6    * Purpose      : 	MyScript wrapper.
7    *
8    * -----------------------------------------------------------------------
9    *
10   * Revision Information:
11   *
12   * Date             Who         Reason
13   *
14   * Dec 26, 2006     ukurmann    Initial Release
15   * Mar 15, 2007     bsigner     Cleanup
16   *
17   * -----------------------------------------------------------------------
18   *
19   * Copyright 1999-2009 ETH Zurich. All Rights Reserved.
20   *
21   * This software is the proprietary information of ETH Zurich.
22   * Use is subject to license terms.
23   * 
24   */
25  
26  
27  package org.ximtec.igesture.algorithm.myscript;
28  
29  import org.sigtec.ink.Note;
30  import org.sigtec.ink.recognition.MyScript;
31  import org.sigtec.ink.recognition.Recogniser;
32  import org.sigtec.ink.recognition.Result;
33  import org.ximtec.igesture.algorithm.DefaultAlgorithm;
34  import org.ximtec.igesture.algorithm.rubine.RubineConfiguration;
35  import org.ximtec.igesture.algorithm.rubine.RubineConfiguration.Config;
36  import org.ximtec.igesture.configuration.Configuration;
37  import org.ximtec.igesture.core.Gesture;
38  import org.ximtec.igesture.core.GestureClass;
39  import org.ximtec.igesture.core.GestureSample;
40  import org.ximtec.igesture.core.ResultSet;
41  
42  
43  /**
44   * MyScript wrapper.
45   * 
46   * @version 1.0 Dec 2006
47   * @author Ueli Kurmann, igesture@uelikurmann.ch
48   * @author Beat Signer, signer@inf.ethz.ch
49   */
50  public class HWRecogniser extends DefaultAlgorithm {
51  
52     private Recogniser recogniser;
53  
54  
55     public void init(Configuration configuration) {
56        recogniser = new Recogniser();
57        recogniser.loadResource(MyScript.getResource(MyScript.EN_UK_AK_CUR));
58        recogniser.loadResource(MyScript.getResource(MyScript.EN_UK_LK_TEXT));
59     } // init
60  
61  
62     public ResultSet recognise(Gesture< ? > gesture) {
63        ResultSet resultSet = new ResultSet();
64  
65        if (gesture instanceof GestureSample) {
66           Note note = ((GestureSample)gesture).getGesture();
67           Note clone = (Note)note.clone();
68           Result result = recogniser.recognise(clone);
69           resultSet.addResult(new org.ximtec.igesture.core.Result(
70                 new GestureClass(result.getText()), result.getConfidence()));
71        }
72  
73        return resultSet;
74     } // recognise
75  
76  
77     public Config[] getConfigParameters() {
78        return RubineConfiguration.Config.values();
79     } // getConfigParameters
80  
81  
82  	@Override
83  	public int getType() {
84  		return -1;
85  	}
86  
87  }