SETOTarsusServer
2006
Till Bovermann
IEM, KUG Graz, Austria
2007
Till Bovermann
Neuroinformatics Group, Bielefeld University, Germany
a server fullfilling the TUIO-Specs.
Uses the proprietary OSC protocol written by Tarsus2OSC.
Format has to be the following:
/client set time 6DOF<1> ... 6DOF<n>
the used format String (explained in SETObject) is then
'_ixyzuvw'
*new(netaddr, setoClass)
netaddr a netaddr, default nil; listening to all.
setoClass the Class of the created objects.
Must be a subclass of SETObject, defaults to SETObject.
start
starts listening
stop
stops litening
gui
creates a gui representing recognized objects (2D for now and no rotation)
(
var posSpecs;
posSpecs = Array.fill(3, {[-10, 10].asSpec});
posSpecs = [
[285, 3000].asSpec,
[-1428, 3000].asSpec,
[0, 3000].asSpec
];
posSpecs.do{|spec, i| SpecGUI(spec, i)};
t = SETOTarsusServer(nil, SETOdumpWin, specs: posSpecs); // listen to all messages from anywhere
t.start;
// inspect its behavior
i = t.inspect;
g = t.gui;
// send it messages
n = NetAddr.localAddr;
n.sendMsg('/client', \set, 42, 0.7.rand, 0.5, 2pi.rand, 10, 20, 30.rand);
i.update
)
t.stop;
///////////////////////
o = OSCresponder(NetAddr("192.168.0.20", nil), "/client", {|time, resp, msg| msg.postln})
o.add
o.remove