front_processing/extern/TUIO_JAVA/src/TUIO/TuioString.java
author bastiena
Thu, 15 Mar 2012 13:33:21 +0100
changeset 3 92f19af39024
child 9 0f44b7360c8d
permissions -rw-r--r--
Middleware : Swipe & Push & Jump(Experimental) Detectors ant events added Server modified for gesture detection TUIO Server C# Modified : Hand cursors redirected to /TUIO/3DCur channel New kind of OSC message created (TuioString) for gesture detection, using /TUIO/_siP channel. TUIO Processing Java Modified : Hand cursors redirected to /TUIO/3DCur channel New kind of OSC message created (TuioString) for gesture detection, using /TUIO/_siP channel. Front Processing : Mask added and modifications in the drawing process New front for gesture detection (just showing a text message in the mask for the moment)
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
3
92f19af39024 Middleware :
bastiena
parents:
diff changeset
     1
/*
92f19af39024 Middleware :
bastiena
parents:
diff changeset
     2
Added by alexandre.bastien@iri.centrepompidou.fr
92f19af39024 Middleware :
bastiena
parents:
diff changeset
     3
*/
92f19af39024 Middleware :
bastiena
parents:
diff changeset
     4
92f19af39024 Middleware :
bastiena
parents:
diff changeset
     5
package TUIO;
92f19af39024 Middleware :
bastiena
parents:
diff changeset
     6
92f19af39024 Middleware :
bastiena
parents:
diff changeset
     7
/**
92f19af39024 Middleware :
bastiena
parents:
diff changeset
     8
 * The TuioCursor class encapsulates /tuio/_siP TUIO strings.
92f19af39024 Middleware :
bastiena
parents:
diff changeset
     9
 *
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    10
 */ 
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    11
public class TuioString {
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    12
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    13
	/**
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    14
	 * The unique session ID number that is assigned to each TUIO string.
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    15
	 */ 
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    16
	protected long session_id;
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    17
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    18
	/**
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    19
	 * The individual string ID number that is assigned to each TuioString.
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    20
	 */ 
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    21
	protected int string_id;
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    22
	
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    23
	/**
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    24
	 * The individual string message that is assigned to each TuioString.
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    25
	 */ 
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    26
	protected String message;
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    27
	
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    28
	/**
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    29
	 * The time stamp of the last update represented as TuioTime (time since session start)
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    30
	 */
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    31
	protected TuioTime currentTime;
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    32
	/**
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    33
	 * The creation time of this TuioString represented as TuioTime (time since session start)
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    34
	 */
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    35
	protected TuioTime startTime;
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    36
	
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    37
	/**
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    38
	 * Defines the ADDED state.
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    39
	 */ 
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    40
	public static final int TUIO_ADDED = 0;
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    41
	/**
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    42
	 * Defines the REMOVED state.
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    43
	 */ 
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    44
	public static final int TUIO_REMOVED = 4;
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    45
	/**
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    46
	 * Reflects the current state of the TuioString
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    47
	 */ 
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    48
	protected int state;
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    49
	
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    50
	/**
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    51
	 * This constructor takes a TuioTime argument and assigns it along  with the provided 
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    52
	 * Session ID, String ID and a message to the newly created TuioString.
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    53
	 *
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    54
	 * @param	ttime	the TuioTime to assign
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    55
	 * @param	si	the Session ID  to assign
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    56
	 * @param	sti	the String ID  to assign
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    57
	 * @param	msg the message to assign
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    58
	 */
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    59
	public TuioString (TuioTime ttime, long si, int sti, String msg) {
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    60
		this.session_id = si;
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    61
		this.string_id = sti;
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    62
		this.message = msg;
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    63
		currentTime = new TuioTime(ttime);
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    64
		startTime = new TuioTime(currentTime);
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    65
	}
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    66
	
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    67
	/**
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    68
	 * This constructor takes the provided Session ID, String ID and message 
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    69
	 * and assigs these values to the newly created TuioString.
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    70
	 *
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    71
	 * @param	si	the Session ID  to assign
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    72
	 * @param	sti	the String ID  to assign
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    73
	 * @param	msg	the message to assign
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    74
	 */
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    75
	public TuioString (long si, int sti, String msg) {
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    76
		this.session_id = si;
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    77
		this.string_id = sti;
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    78
		this.message = msg;
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    79
		currentTime = TuioTime.getSessionTime();
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    80
		startTime = new TuioTime(currentTime);
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    81
	}
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    82
	
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    83
	/**
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    84
	 * This constructor takes the atttibutes of the provided TuioCursor 
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    85
	 * and assigs these values to the newly created TuioCursor.
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    86
	 *
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    87
	 * @param	tcur	the TuioCursor to assign
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    88
	 */
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    89
	public TuioString (TuioString tstr) {
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    90
		this.session_id = tstr.getSessionID();
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    91
		this.string_id = tstr.getStringID();
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    92
		this.message = tstr.getMessage();
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    93
		currentTime = new TuioTime(tstr.getCurrentTime());
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    94
		startTime = new TuioTime(currentTime);
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    95
	}
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    96
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    97
	/**
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    98
	 * Takes a TuioTime argument and assigns it along with the provided 
92f19af39024 Middleware :
bastiena
parents:
diff changeset
    99
	 * message to the private TuioString attributes.
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   100
	 * The speed and accleration values are calculated accordingly.
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   101
	 *
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   102
	 * @param	ttime	the TuioTime to assign
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   103
	 * @param	message2 the message to assign
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   104
	 */
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   105
	public void update(TuioTime ttime, String message2) {
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   106
		currentTime = new TuioTime(ttime);
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   107
		message = message2;
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   108
	}
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   109
	
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   110
	/**
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   111
	 * This method is used to update the TuioTime of a TuioString while keeping the same * * * message.
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   112
	 */
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   113
	public void stop(TuioTime ttime) {
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   114
		update(ttime,message);
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   115
	}
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   116
	
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   117
	/**
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   118
	 * Takes the atttibutes of the provided TuioString 
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   119
	 * and assigs these values to this TuioString.
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   120
	 * The TuioTime time stamp of this TuioString remains unchanged.
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   121
	 *
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   122
	 * @param	tstr	the TuioString to assign
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   123
	 */
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   124
	public void update (TuioString tstr) {
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   125
		message = tstr.getMessage();
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   126
	}
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   127
	
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   128
	/**
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   129
	 * Takes the message provided
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   130
	 * and assigs its value to this TuioString.
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   131
	 * The TuioTime time stamp of this TuioString remains unchanged.
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   132
	 *
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   133
	 * @param	msg	the message to assign
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   134
	 */
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   135
	public void update (String msg) {
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   136
		message = msg;
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   137
	}
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   138
	
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   139
	/**
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   140
	 * Assigns the REMOVE state to this TuioString and sets
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   141
	 * its TuioTime time stamp to the provided TuioTime argument.
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   142
	 *
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   143
	 * @param	ttime	the TuioTime to assign
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   144
	 */
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   145
	public void remove(TuioTime ttime) {
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   146
		currentTime = new TuioTime(ttime);
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   147
		state = TUIO_REMOVED;
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   148
	}
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   149
	
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   150
	/**
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   151
	 * Returns the Session ID of this TuioString.
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   152
	 * @return	the Session ID of this TuioString
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   153
	 */
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   154
	public long getSessionID() {
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   155
		return session_id;
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   156
	}
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   157
	
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   158
	/**
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   159
	 * Returns the String ID of this TuioString.
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   160
	 * @return	the String ID of this TuioString
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   161
	 */
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   162
	public int getStringID() {
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   163
		return string_id;
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   164
	}
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   165
	
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   166
	/**
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   167
	 * Returns the Message of this TuioString.
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   168
	 * @return	the Message of this TuioString
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   169
	 */
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   170
	public String getMessage() {
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   171
		return message;
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   172
	}
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   173
	
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   174
	/**
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   175
	 * Returns the Current Time of this TuioString.
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   176
	 * @return	the Current Time of this TuioString
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   177
	 */
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   178
	public TuioTime getCurrentTime() {
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   179
		return currentTime;
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   180
	}
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   181
	
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   182
	/**
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   183
	 * Returns the TUIO state of this TuioString.
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   184
	 * @return	the TUIO state of this TuioString
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   185
	 */
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   186
	public int getTuioState() {
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   187
		return state;
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   188
	}
92f19af39024 Middleware :
bastiena
parents:
diff changeset
   189
}