diff -r 000000000000 -r 6fefd4afe506 front_processing/extern/TUIO_JAVA/src/com/illposed/osc/OSCPortOut.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/front_processing/extern/TUIO_JAVA/src/com/illposed/osc/OSCPortOut.java Fri Mar 09 14:52:11 2012 +0100 @@ -0,0 +1,79 @@ +/** + * @author cramakrishnan + * + * Copyright (C) 2004, C. Ramakrishnan / Illposed Software + * All rights reserved. + * + * See license.txt (or license.rtf) for license information. + * + * + * OSCPortOut is the class that sends OSC messages. + * + * To send OSC, in your code you should instantiate and hold onto an OSCPort + * pointing at the address and port number for the receiver. + * + * When you want to send an OSC message, call send(). + * + * An example based on com.illposed.osc.test.OSCPortTest::testMessageWithArgs() : + OSCPort sender = new OSCPort(); + Object args[] = new Object[2]; + args[0] = new Integer(3); + args[1] = "hello"; + OSCMessage msg = new OSCMessage("/sayhello", args); + try { + sender.send(msg); + } catch (Exception e) { + showError("Couldn't send"); + } + */ + +package com.illposed.osc; + +import java.net.*; +import java.io.IOException; +import com.illposed.osc.utility.OSCByteArrayToJavaConverter; + +public class OSCPortOut extends OSCPort { + + protected InetAddress address; + + /** + * Create an OSCPort that sends to newAddress, newPort + * @param newAddress InetAddress + * @param newPort int + */ + public OSCPortOut(InetAddress newAddress, int newPort) throws SocketException { + socket = new DatagramSocket(); + address = newAddress; + port = newPort; + } + + /** + * Create an OSCPort that sends to newAddress, on the standard SuperCollider port + * @param newAddress InetAddress + * + * Default the port to the standard one for SuperCollider + */ + public OSCPortOut(InetAddress newAddress) throws SocketException { + this(newAddress, defaultSCOSCPort); + } + + /** + * Create an OSCPort that sends to localhost, on the standard SuperCollider port + * Default the address to localhost + * Default the port to the standard one for SuperCollider + */ + public OSCPortOut() throws UnknownHostException, SocketException { + this(InetAddress.getLocalHost(), defaultSCOSCPort); + } + + /** + * @param aPacket OSCPacket + */ + public void send(OSCPacket aPacket) throws IOException { + byte[] byteArray = aPacket.getByteArray(); + DatagramPacket packet = + new DatagramPacket(byteArray, byteArray.length,address,port); + socket.send(packet); + } +}