IEnumerator BCI2000_operator(int inst, string num, string source, string process, string app) { BCIinst.tcpClient = new TcpClient("127.0.0.1", 3997); BCIinst.stream = BCIinst.tcpClient.GetStream(); string msg = "STARTUP SYSTEM * SignalSource:" + num + "000 SignalProcessing:" + num + "001 Application:" + num + "002"; string msgX = "Change directory Assets\\BCI2001\\prog"; string msg1 = "Start executable " + source + " 127.0.0.1:" + num + "000 --AllowMultipleInstances"; string msg2 = "Start executable " + process + " 127.0.0.1:" + num + "001 --AllowMultipleInstances"; string msg3 = "Start executable " + app + " 127.0.0.1:" + num + "002 --AllowMultipleInstances"; string msg4 = "Wait for Connected"; string msg5 = "Load parameterfile ..\\..\\BCI2001\\parms\\IoT.prm"; string msg6 = "Set config"; string msg7 = "";//"Start"; sendMsg(inst, "\n"); sendMsg(inst, msg); sendMsg(inst, "\n"); yield return(new WaitForSeconds(.1f)); sendMsg(inst, msgX); sendMsg(inst, "\n"); yield return(new WaitForSeconds(.1f)); sendMsg(inst, msg1); sendMsg(inst, "\n"); yield return(new WaitForSeconds(.1f)); sendMsg(inst, msg2); sendMsg(inst, "\n"); yield return(new WaitForSeconds(.1f)); sendMsg(inst, msg3); sendMsg(inst, "\n"); yield return(new WaitForSeconds(.1f)); sendMsg(inst, msg4); sendMsg(inst, "\n"); yield return(new WaitForSeconds(.1f)); sendMsg(inst, msg5); sendMsg(inst, "\n"); yield return(new WaitForSeconds(.1f)); sendMsg(inst, msg6); sendMsg(inst, "\n"); yield return(new WaitForSeconds(.1f)); sendMsg(inst, msg7); sendMsg(inst, "\n"); yield return(new WaitForSeconds(.1f)); BCIinst.receiveThread = new Thread(() => BCIinst.receiveData(BCIinst.receivePort)); BCIinst.receiveThread.IsBackground = true; BCIinst.receiveThread.Start(); }
//private LeapServiceProvider provider; void Start() { collisionEvents = new List <ParticleCollisionEvent> (); BCI2000.receiveThread = new Thread(() => BCI2000.receiveData(BCI2000.receivePort)); BCI2000.receiveThread.IsBackground = true; BCI2000.receiveThread.Start(); Target1.SetActive(false); Target2.SetActive(false); Target = new GameObject[3]; Target [1] = Target1; Target [2] = Target2; }