public override void RecieveTangoRoomInfo(string data) { var dataArray = data.Split('~'); //parse data UnityEngine.Debug.Log("RecievedTangoInfo " + dataArray.Length); List <String> RoomNames = new List <string>(); if (dataArray.Length > 1) { for (int i = 0; i < dataArray.Length; i += 2) { TangoDatabase.TangoData T = new TangoDatabase.TangoData(); T.name = dataArray[i]; RoomNames.Add(T.name); T.size = System.Int32.Parse(dataArray[i + 1]); UnityEngine.Debug.Log(i + " " + T.name + " " + T.size); if (!TangoDatabase.LookUpName(T.name)) { TangoRoomStack.Push(T); //if room does not already exist, add to stack } } } else { RoomNames.Add(" "); } TangoDatabase.CompareList(RoomNames); //delete any rooms missing }
/// <summary> /// Creates a thread to recieve a TangoMesh based on the mesh currently at the top of the stack /// Sends a RPC call to the masterclient with the name of the room /// </summary> public virtual void ReceiveTangoMeshStack() { TangoDatabase.TangoData T = TangoRoomStack.Pop(); if (!TangoDatabase.LookUpName(T.name)) { _ThreadFinished = false; Thread Th = new Thread(() => RecieveTangoMeshThread(T)); Th.IsBackground = true; Th.Start(); threads.Add(Th); photonView.RPC("SendTangoMeshByName", PhotonTargets.MasterClient, GetLocalIpAddress() + "~" + (Port + 1) + "~" + T.name); } }