public RCPStickNode() { FRCPClient = new RCPClient(); FRCPClient.ParameterAdded = ParameterAdded; FRCPClient.ParameterRemoved = ParameterRemoved; }
public void OnImportsSatisfied() { FRCPClient = new RCPClient("vvvv beta " + FHDEHost.Version.ToString()); FRCPClient.ParameterAdded += ParameterAdded; FRCPClient.ParameterRemoved += ParameterRemoved; //FWebsocketTransporter = new WebsocketClientTransporter("127.0.0.1", 10000); //FRCPClient.SetTransporter(FWebsocketTransporter); //FRCPClient.Log = (s) => FLogger.Log(LogType.Debug, "client: " + s); FClientOut[0] = FRCPClient; }
public Client() { InitializeComponent(); var transporter = new WebsocketClientTransporter(); Carrot = new RCPClient(); Carrot.SetTransporter(transporter); Carrot.ParameterAdded += (s, p) => { UIParams.Add(p.Id, p); label1.Text = UIParams.Count.ToString() + ": " + p.Label; p.Updated += P_Updated; if (p is BangParameter) { FTheBang = p as BangParameter; FTheBang.OnBang += Client_OnBang; } else if (p is ImageParameter) { var imageParam = p as ImageParameter; using (var stream = new MemoryStream(imageParam.Value)) { stream.Seek(0, SeekOrigin.Begin); var img = Image.FromStream(stream); pictureBox1.Image = img; } } }; Carrot.ParameterRemoved += (s, p) => { if (p is BangParameter) { FTheBang.OnBang -= Client_OnBang; FTheBang = null; } //remove UI matching p UIParams.Remove(p.Id); }; Carrot.StatusChanged = (status, message) => { // e.g.: switch (status) { case RcpTypes.ClientStatus.Disconnected: /*show something*/ break; case RcpTypes.ClientStatus.Connected: Carrot.Initialize(); break; case RcpTypes.ClientStatus.VersionMissmatch: MessageBox.Show(message); break; case RcpTypes.ClientStatus.Ok: /*nop*/ break; } }; transporter.Connect("127.0.0.1", 10000); }