View Javadoc

1   package cz.cuni.amis.pogamut.emohawk.agent.module.sensomotoric;
2   
3   import java.util.HashMap;
4   
5   /**
6    * Bubbles that can be used as a background for emoticons
7    *
8    * @author Jimmy
9    */
10  public enum EmoticonBubbleType {
11  
12  	NONE("None", "null"),
13      BUBBLE_EMOTIVE_SLIGHTLY_LEFT("bublina_emotivni_lehceleva_512", "BUBBLE_EMOTIVE_SLIGHTLY_LEFT"),
14      BUBBLE_EMOTIVE_SLIGHTLY_RIGHT("bublina_emotivni_lehceprava_512", "BUBBLE_EMOTIVE_SLIGHTLY_RIGHT"),
15      BUBBLE_EMOTIVE_LEFT("bublina_emotivni_leva_512", " BUBBLE_EMOTIVE_LEFT"),
16      BUBBLE_EMOTIVE_RIGHT("bublina_emotivni_prava_512", "BUBBLE_EMOTIVE_RIGHT"),
17      BUBBLE_EMOTIVE_CENTER("bublina_emotivni_stred_512", "BUBBLE_EMOTIVE_CENTER"),
18      BUBBLE_THOUGHT_SLIGHTLY_LEFT("bublina_mysleni_lehceleva_512", "BUBBLE_THOUGHT_SLIGHTLY_LEFT"),
19      BUBBLE_THOUGHT_SLIGHTLY_RIGHT("bublina_mysleni_lehceprava_512", "BUBBLE_THOUGHT_SLIGHTLY_RIGHT"),
20      BUBBLE_THOUGHT_LEFT("bublina_mysleni_leva_512", "BUBBLE_THOUGHT_LEFT"),
21      BUBBLE_THOUGHT_RIGHT("bublina_mysleni_prava_512", "BUBBLE_THOUGHT_RIGHT"),
22      BUBBLE_THOUGHT_CENTER("bublina_mysleni_stred_512", "BUBBLE_THOUGHT_CENTER"),
23      BUBBLE_NORMAL_SLIGHTLY_LEFT("bublina_normalni_lehceleva_512", "BUBBLE_NORMAL_SLIGHTLY_LEFT"),
24      BUBBLE_NORMAL_SLIGHTLY_RIGHT("bublina_normalni_lehceprava_512", "BUBBLE_NORMAL_SLIGHTLY_RIGHT"),
25      BUBBLE_NORMAL_LEFT("bublina_normalni_leva_512", "BUBBLE_NORMAL_LEFT"),
26      BUBBLE_NORMAL_RIGHT("bublina_normalni_prava_512", "BUBBLE_NORMAL_RIGHT"),
27      BUBBLE_NORMAL_CENTER("bublina_normalni_stred_512", "BUBBLE_NORMAL_CENTER");
28      
29      /** 
30       * Id of the emoticon in Unreal 
31       */
32      String id;
33      
34      /** 
35       * English name of the emoticon. 
36       */
37      String nameEN;
38  
39      /** 
40       * Default constructor.
41       */
42      EmoticonBubbleType(String cId, String cNameEN) {
43          id = cId;
44          nameEN = cNameEN;        
45      }
46      
47      //
48      // STATIC
49      //
50      
51      /** 
52       * For faster translation of string bubble id to EmoticonBubbleType enum.
53       */
54      static HashMap<String, EmoticonBubbleType> bubblesMapping = new HashMap<String, EmoticonBubbleType>();
55      
56      static {
57      	for (EmoticonBubbleType bubble : EmoticonBubbleType.values()) {
58      		bubblesMapping.put(bubble.id, bubble);
59      	}
60      }
61      
62      /**
63       * Return "bubble type" for it's ID.
64       * 
65       * @param id
66       * @return
67       */
68      public static EmoticonBubbleType get(String id) {
69      	return bubblesMapping.get(id);
70      }
71      
72      /**
73       * Whether we have this EmoticonBubbleType.
74       * 
75       * @param id
76       * @return
77       */
78      public static boolean has(String id) {
79      	return bubblesMapping.containsKey(id);
80      }
81  	
82  }