Merge pull request #506 from andrewcsmith/patch-2
[supercollider.git] / HelpSource / Classes / NetAddr.schelp
blobcb31fcc293745332a30f3ee4e3846c0ccc48102d
1 class:: NetAddr
2 summary:: network address
3 related:: Classes/OSCFunc
4 categories:: Control, External Control>OSC
6 ClassMethods::
8 private::initClass
10 method::new
11 create new net address.
12 note::To send messages internally, loopback IP is used: "127.0.0.1"::
14 argument::hostname
15 a link::Classes/String::, either an IP number (e.g. "192.168.34.56") or a hostname such as "otherHost.local".
17 argument::port
18 a port number, like 57110.
20 method::fromIP
21 create new net address using an integer IP number.
23 method::langPort
24 Get the port sclang is currently listening on (may change after a recompile).
26 method::localAddr
27 Get a NetAddr which corresponds to localhost and the port sclang is listening on.
29 method::disconnectAll
30 close all TCP connections.
32 method::broadcastFlag
33 Get or set the broadcast flag (whether or not broadcast messages can be sent).
35 InstanceMethods::
37 private::prConnect, prDisconnect, prConnectionClosed, recover
39 method::sendMsg
40 send a message without timestamp to the addr.
42 method::sendBundle
43 send a bundle with timestamp to the addr.
45 method::sendRaw
46 send a raw message without timestamp to the addr.
48 method::connect
49 open TCP connection.
51 argument::disconnectHandler
52 called when the connection is closed (either by the client or by the server).
54 method::disconnect
55 close TCP connection.
57 method::ip
58 returns the ip number (as a link::Classes/String::).
59 code::
60 n = NetAddr("localhost", 57110);
61 n.ip;
64 Examples::
66 code::
67 n = NetAddr("127.0.0.1", 57120); // 57120 is sclang default port
68 r = OSCFunc({ arg msg, time; [time, msg].postln }, '/good/news', n);
70 n.sendMsg("/good/news", "you", "not you");
71 n.sendMsg("/good/news", 1, 1.3, 77);
74 n.sendBundle(0.2, ["/good/news", 1, 1.3, 77]);
76 r.free;
77 n.disconnect;
79 // note that different NetAddr objects with the same port and ip are independent.
81 r = OSCFunc({ "message arrived".postln }, '/x');
83 n = NetAddr("127.0.0.1", 57120);
84 n.sendMsg("/x")
87 u = NetAddr("127.0.0.1", 57120);
88 u.sendMsg("/x");
90 n.disconnect
92 u.sendMsg("/x");
94 r.free;
95 u.disconnect;