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